# Introduction
This project utilizes the *Pololu Romi Robot* development kit as a starting
point. To communicate with the Romi hardware, a cooperative-multitasking
scheduler is implemented in MicroPython. The MicroPython code operates on a
NUCLEO-L476RG board from *ST Microelectronics* and interfaces with
a *Shoe of Brian* device, which allows us to flash code to the NUCLEO via a USB
connection.
This project was completed in a 10-week span in a course lab format. Weekly
deliverables typically consisted of configuring a hardware component for a
simple task to be later applied to the overall goal of completing the obstacle
course. Examples of intermittent deliverables include derived
[motor parameters](motor_characteristics.md), the incorporation of an IR sensor
to follow a circular path, and the implementation of an IMU to
continuously orient Romi to face north.