Skip to main content

USB for micro:bian

Supervisor

Suitable for

MSc in Advanced Computer Science
Mathematics and Computer Science, Part C
Computer Science and Philosophy, Part C
Computer Science, Part C
Computer Science, Part B

Abstract

Simple, portable libraries exist that implement USB communications on microcontrollers, and some of them claim to be adaptable to multiple real-time operating systems. Choose one of them and incorporate it into micro:bian, adapting the OS interface to fit in with the message-passing style of concurrency. For a feasibility study, it's not necessary to implement every kind of USB device – a simulated serial port is enough. For additional hints, https://github.com/Spivoxity/avr-usb has examples of simple USB devices implemented with bit-banging on ATtiny microcontrollers, using a freely available USB library.