Internet of Things (IoT) is a network-based system of devices exchanging different kinds of data for decision making. It has multi-disciplinary facets which make it tricky to teach as a university course. Students must be provided with practical learning opportunities to understand the complexities of the Internet of Things applications. This can be challenging as IoT has evolved rapidly with time. This paper introduces a collaborative learning activity that allows students to use real sensors and systems in a laboratory environment. A smart farming based agricultural application is a use case for the laboratory coursework. Real sensors and nodes are used to build a working farm IoT system. It covers sensor-based end-node design, communication, system design, data presentations, and collaborative discussions.