2025 Investiture Information

Skip to main content
All Thayer News

Online Learning in Engineering at Dartmouth Takes Another Step Forward

Apr 28, 2025   |   by Catha Mayor & Rusty Spydell

Dartmouth Engineering is combining videoconferencing technology with wifi-enabled robots to enhance the learning experience of students in their online Master of Engineering (MEng) in Computer Engineering program.

"We're excited that we are able to offer online students a 'Thayer-style' team project that allows them to interact with students on campus and work with actual hardware," said Assistant Professor of Engineering and Director of Instructional Labs Michael Kokko, who teaches Distributed Computing in the online MEng program.

Dartmouth online Master of Engineering (MEng) student, Eddy Fabery, shares his experience with the course's unique hands-on approach to learning complex computing theories and their real-world applications. (Video by Rusty Spydell)

Undergraduate engineering students helped design and build the robots that operate using Go programming language code written by the online master's students.

"Each robot communicates over wifi with a dedicated Raspberry Pi computer," explained Kokko. "Students access the 'maze cluster' remotely to download and run the code and can Zoom in to the maze room to interact with me and my TAs during live maze sessions."

The final project presentation and demo event was open to the on-campus community with the online students presenting via Zoom. (Photo by Michael Kokko)

The goal is to write code that will fully map an unknown maze. All four robots need to communicate with each other to share information that they sense (i.e. wall locations). The code needs to be robust to server failures, such as if a robot stops working and then restarts. "Essentially, they're applying principles of distributed computing that we've explored throughout the term with short video lectures, guided programming exercises, and two programming labs," said Kokko.

At the start of the term, Kokko provided a maze simulator in Go that the students used to test their distributed maze mapping code, first with a single simulated robot, then with multiple agents. The simulator has a graphical interface that runs on the students' own computers, on the maze cluster in the classroom, and in the Coursera virtual lab Linux environment. "That way we can ensure that everyone in the course has a consistent lab experience regardless of their personal computer hardware, etc," added Kokko.

For contacts and other media information visit our Media Resources page.