WolfieMouse is a robotics project to build a micromouse. This project covers three parts:
- Robotics algorithm for maze solving (C++)
- low-level hardware driver software (C and ARM assembly)
- Tools to capture and plot robot's sensor data (Python)
- Embedded hardware design and PCB design (KiCad, an open-source alternative to Altium)
This robot won The Special Mention Award in 2018 IEEE Region 1 Micromouse Robotics Competition.
If you don't know what is micromouse competition, this document will help..
- GNU Arm Embedded Toolchain and Makefile to build program for the robot.
- OpenOCD to upload the program to the robot and to debug.
- KiCad to design a PCB hardware.
Otherwise, a Vagrant virtual machine environment is provided to skip installing the above tools.
If you whish to start with this project, see get stared document.
doc: Documentation folder
firmware: The robot's program folder, including robotics algorithms and hardware drivers
simulation: Programs to test algorithms on a desktop computer
tools: Contains robot sensor data capturing tools and scripts for Vagrant machine.
Terminal-based simulation program.
M stands for the position of the robot,
D stands for the position of the goal in the maze, and
S stands for the starting position.
PCB Footprint overview.
License and Credits
Source code in
simulation folders are licensed under GPLv2.1.
External libraries (FreeRTOS, CMSIS, STM32F4 HAL) under
firmware/lib follow their own terms.