Dr. Bakos is looking for a team (4 or 5) of Computer Engineering majors, to work on the following project for their Capstone:
The student team will design and write a complete set of course material for a new Internet-of-Things (IoT) course. The projects will involve utilizing real-time embedded / bare-metal C on an MMU-less, low-memory, resource-scarce architecture to implement project code, test cases, and drivers. This will also involve creating custom protocols to handle the demands of networking across lossy peer-to-peer and mesh networks. Students will be expected to deliver 5-8 completed project assignments, assignment descriptions, rubrics, and complete reference solutions (i.e. the student team will also need to complete full, well commented and documented solutions to each project) with drivers, hardware, project code, lectures, and with supporting materials. Core design goals include appeal to students, real-world embedded development, software development tools and principles, and ease-of-use of the designed tool chain. This course material will focus on exposing students to practical, modern embedded systems practices and tools via engaging hands-on exercises.
The project will require experience with writing embedded, bare-metal C, writing code in a UNIX operating environment, reading and writing documentation, correctly utilizing SCM tooling such as git, and would ideally have experience in systems programming, operating system development, device driver development, performance oriented and memory safe code, and/or real-time embedded software development as well as CI/CD practices such as build automation, automated test construction, and at-scale build orchestration. Students must have experience prototyping electrical circuits on a breadboard, and with soldering/wire-wrapping as this will be integral to the hardware design aspect of the course.
If you are interested, contact Dr. Bakos. This will be a special session of the Capstone class (490/492) taught by him, just for this one team.