WolfieMouse
WolfieMouse copied to clipboard
IEEE Reion 1 Micromouse competition.
WolfieMouse
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.
- The 3rd Place Award in 2019 IEEE Region 1 Micromouse Robotics Competition.
Get started
If you don't know what is micromouse competition, this document will help..
Requires tools:
- 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.
Documentation
See documentation section.
Directory descriptions
-
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.
Gallery
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.
Schematic overview.
PCB Footprint overview.
License and Credits
Source code in firmware
and simulation
folders are licensed under GPLv2.1.
External libraries (FreeRTOS, CMSIS, STM32F4 HAL) under firmware/lib
follow their own terms.
The fundamental hardware design is inspired by Project Futura by Green Ye.