Danna Ma bio photo

Email

My CV

LinkedIn

Google Scholar


ECE5725 Cornell University

Design of microcontroller based systems using embedded Linux. Student teams design and debug example solutions on a target microcontroller (for example, Raspberry Pi) during lab sessions. Emphasis will be on application and Linux programming skills, processor and microcontroller architecture with some discussion of hardware interfaces. Students create a final, end-ofsemester project using the microcontroller platform and development techniques discussed during the semester.


Selected Recent Student Projects

Pi-Ano Project Image

PI-ANO

An Interactive Musical Platform

This project implements a fully playable 2D interstellar real-time strategy (RTS) game on a Raspberry Pi 4, built with Python/Pygame and integrated with embedded peripherals. Players can pan and zoom across star systems, buy food, hire workers, mine minerals, colonize planets, manage resources, and battle an AI opponent. To highlight the embedded aspect, the game state is bound to a physical NeoPixel LED strip, providing high-salience feedback. Additionally, the PiTFT’s 4 hardware buttons are mapped to frequently-used in-game actions like pausing and trading.

Battleship Project Image

BATTLESHIP

With NFC Bluetooth Pairing

This project involves building a handheld gaming console based on the Raspberry Pi 4. The system software, written in Python, manages multiple concurrent tasks: detecting NFC taps, exchanging MAC addresses, and establishing Bluetooth connections automatically. The final deliverable is a competitive, two-player implementation of Battleship that demonstrates a robust state machine capable of handling network events, game logic, and real-time visual feedback.