Robo HAT MM1

by Robotics Masters

An open source robotics and automation controller for Raspberry Pi.

View all updates Jan 25, 2019

Prototypes as an Australia Day Present

We are now finalizing the second version of our Robot Car HAT (renamed MM1 HAT). We are days away from having the prototype ready for testing.

I have been planning and working on the variety of software implementations that we will support for the board.

Please see below for a full update.

The current Prototype has the following feature set:

MM1 Feature Set - Hardware Update

Processor and Storage

  • Processor: 48 MHz SAM D21G
  • Memory: 32 KB SRAM
  • Storage: 256KB Internal Programmable Flash + Additional 2 MB SPI Flash

Raspberry Pi Interfacing

These are pins that are exclusively connected to the Raspberry Pi and no broken out on the board except using the Raspberry Pi 40-pin header.

  • Two (2) GPIO directly to Raspberry Pi (General I/O Control)
  • Two (2) GPIO directly to Raspberry Pi (SW Programming)
  • Two (2) GPIO directly to Raspberry Pi (Serial Console)
  • I2C to Raspberry Pi
  • EEPROM Recognition.

Programmable I/O

A total of 24 programmable Input/Output Control Pins.

  • Nine (9) x General I/O Signal (SIGNAL_1 power supply enable, SIGNAL_2 button)
  • Eight (8) x 16 Bit Servo Output (programmable up to 24 Bit)
  • Four (4) x 16 Bit RC Controller Input
  • Two (2) x Serial Console Pass Through
  • One (1) x NeoPixel Output

All are re-programmable to match a supported special function (I2C, UART, Analog, PWM, etc). This will be noted in the documentation.

Sensor Interfacing

We have added dronecode complaint JST connectors for attaching to external components. These do knock out some of the 24 programmable IO pins above, however, which ones exactly has been clearly documented and will be presented in a clear way shortly.

JST Complaint Connectors

  • GPS
  • I2C
  • SPI

Power Features

Triple-redundant power supply support:

  • Feedback through Servo Power Rail (e.g. from ESC)
  • 5V from on-board regulator powered through main battery
  • 5V from on-board regulator power through backup LiPo battery + charger


  • USB Port is protected from voltage spikes.
  • All power rails are protected by reverse voltage diodes.
  • 5V regulator is able to power Raspberry Pi


  • INA219 Current Sensor
  • 9DoF IMU
  • Additional space for more sensors in the future (pressure sensor, duel IMU).

Software Update

Once we finalize the software over the two next weeks or so we will have another update that is less hardware focused and more software and application(s) focused.

We have been looking at how the HAT can be used with drones and other autonomous vehicles. In addition to being a starter board for schools to use as a tool to teach programming. Since the board is fully CircuitPython compliant, it is able to be used as a standalone programmable micro-computer. It has the potential to provide the gap between starting to program in high-level, easy to learn languages such as Python to Arduino C++ programming working with Hardware Systems.

We are looking at these software methods at the moment:

  1. SeeSaw Library - This is a library that is open-source provided by Adafruit Industries for interfacing with any I2C board. We plan on using the existing firmware tools by writing our own configuration specific to the RobotCat HAT. This library then uses CircuitPython running on the Raspberry Pi to control external servo motors and other sensors.

  2. CircuitPython Native API - CircuitPython learning environment built by Adafruit able to run all the tutorials in their education / learn system.

  3. Custom CircuitPython Script - we plan on using CircuitPython to write a script that emulates the actions of a PCA9685 which is used widely by the Donkey Car Community. In this script, we will be able to employ custom actions such as direct control of the servo motors by the RC controller Input pins (removing all latency from control) and safety features such as detecting a stall when too much current is drawn from the battery.

  4. Scratch Environment - we have not looked into this, but understand that younger kids are using scratch for learning the absolute basics of programming. The drag and drop interface is really accessible to kids of a young age and has the potential to assist in educating more people using the HAT.

So this is where we are currently at with this project. More updates coming soon!

$9,265 raised

of $2,500 goal

370% Funded! Order Below

Product Choices


Standard Kit

One Robo HAT MM1, and a cable pack which includes main battery cable, ESC cable, a set of peripheral cables (7pin (SPI), 6pin (UART), 4pin (I2C)) and screw set for mounting.


Sensor Bundle

One Robo HAT MM1, a cable pack which includes main battery cable, ESC cable, a set of peripheral cables (7pin (SPI), 6pin (UART), 4pin (I2C)) and mounting screw sets, External Pressure Sensor / Barometer (BME280), External SPI IMU (MPU9250) and External GPS Unit (Ublox NEO-M8N). NOTE: Raspberry Pi not included. Previously called "Drone Starter Bundle".


Exploration Kit Bundle

One Robo HAT MM1, and a cable pack which includes main battery cable, ESC cable, a set of peripheral cables (7pin (SPI), 6pin (UART), 4pin (I2C)), 1 strip of 10 NeoPixels and RM Smart Car Kit


Robotics Masters

We create hardware platforms for autonomous vehicles and other robotics applications. These hardware platforms are accessible to all skill levels while providing the best functionality for a diverse range of robotics applications. Our expansion boards work with many existing software platforms such as CircuitPython, Adafruit SeeSaw, Donkey Car, DroneCode, and many more.

Hans-Joachim Michl


Cian Byrne

Software Developer

Peter Pan

Electronics Engineer

See Also

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects: