Robo HAT MM1

by Robotics Masters

An open source robotics and automation controller for Raspberry Pi.

$2,530 raised

of $9,000 goal

28% Funded

Pledge Now

$5

Support Us!

Help support us educating more people and building more open-source software. Thanks!


$39

Starter

One Robo HAT MM1


$45

Standard Kit - Early Bird

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 mounting screw sets. Limited quantity available!


$55

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.


$129

Drone Starter 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.


$99

Educational 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)), 1 strip of 10 NeoPixels and RM Smart Car Kit


$450

Multi-Educational Bundle (5 pack)

5x Educational Kit (10% off)

Details

Recent Updates


As Featured In

Hackster.io

"designed to lower the entry barrier for those looking to get into robotics"

Hackaday

Hackaday

"The form factor is as a daughterboard (hat) for Raspberry Pi but it is also capable of doing standalone control thanks to the onboard microcontroller."

MickMake

"an open-source board designed specifically for robotics and so has all the essentials"

Electronics-Lab.com

" hardware schematics and software will be fully available and open source without limitations."

IoT Expert

"We now have CircuitPython by adafruit Industries working fully on the board with all tests and software available on GitHub."

To watch the campaign video from China, click here


Robo HAT MM1 is part of the Microchip Get Launched 2019 design competition!

An All-in-one Robotics Board

Final Robo HAT MM1 prototype shown here.

The Robotics Masters Robo HAT MM1 is an open source robotics controller board for Raspberry Pi. It is education focused but works in many applications. The Robo HAT provides all the hardware you need in one simple, easy-to-use form factor. It removes the initial barriers to starting any robotics project.

With support for Adafruit CircuitPython, Arduino IDE, and other libraries the Robo HAT is able to act as a single solution for all projects great and small.

The Robo HAT MM1 removes the need for buying lots of individual components by including them on the board. It can act as a PWM driver, provide on-board power through voltage regulators, and measure movement with the on-board IMU - all at the same time.

The wide compatibility with many open source software platforms such as CircuitPython, SeeSaw, and Arduino IDE means you can use all existing software for sensors while creating your project in the way that works best for you. The hardware schematics and software are fully open source.

The final revision boards will be blue, like this!

Designed for automation:

  • Multiple power sources for stable and reliable power
  • E-Stop connection for emergency shutdown
  • Power-on switch for the 5V main power on the board
  • Power monitoring, movement sensing (IMU) and control.
  • 16-Bit PWM output (configurable up to 24-Bit)

Drone compatibility features:

  • Selectable SPI Master between Raspberry Pi and M0
  • Standard connectors for drone sensors
  • Selectable I²C internal and external buses for extra sensors
  • Stable on-board power supply for Raspberry Pi boards (5.1V @ 2.5A)

Multi-functional Micro USB Connector:

  • USB connection for uploading new firmware
  • USB to serial port access
  • USB Storage access for CircuitPython
  • USB doubles as charging for backup LiPO Battery (at same time)

Exploring the Robo HAT MM1

Features & Specifications

  • Processor: 48 MHz SAM D21G (M0)
  • Memory: 32 KB SRAM
  • Storage: 256 KB internal programmable flash + additional 8 MB SPI flash
  • Multi-product Compatibility
    • Jetson Nano
    • Raspberry Pi: all models with 40 pin header
      • Model B+, 2B, 2B+, 3B and 3B+
      • Model A+ and 3A+
      • Zero and Zero W
  • Raspberry Pi Interfacing
    • Two (2) GPIO directly to Raspberry Pi (SW programming)
    • Two (2) GPIO directly to Raspberry Pi (UART-serial console)
    • I²C or SPI to Raspberry Pi
    • EEPROM recognition
  • Programmable I/O: All are re-programmable to match a supported special function
    • 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
    • Nine (9) x GPIO pins through SPI / GPS ports
  • Sensor Interfacing: Also re-programmable as general IO pins
    • Dronecode Compatible Connectors
      • SPI
      • GPS
      • USART
      • I²C
  • Triple-redundant Power Supply Support
    • Feedback through servo power rail (e.g., from ESC)
    • 5 V from on-board regulator powered through main battery
    • 5 V from on-board regulator power through backup LiPo battery + charger via USB
  • Built-in Protection
    • USB Port is protected from voltage spikes
    • All power rails are protected by reverse voltage protection circuits.
    • 5 V regulator is able to power Raspberry Pi
  • Sensors
    • INA219 current sensor
    • MPU9250 9DoF high-precision IMU
    • Add-on boards through I²C and SPI (such as pressure sensor, secondary IMU, etc)
  • Physical Dimensions
    • Standard HAT format
    • Length: 65 mm
    • Depth: 56.5 mm
    • Height: 30 mm

Simplify Your Project and Add Functionality

Perfect for makers and hackers

As makers ourselves, we wanted to create a platform that was able to help us build more cool projects. We wanted an affordable board that had a good fix of useful features. This included lots of servo outputs, lots of inputs, great mix of sensors like the IMU, current sensing and functionality to build new and creative projects. With the Robo HAT MM1 we have been able to do just that.

It’s a more functionally Arduino with support for all the great existing libraries. It’s a better CircuitPlayground and Adafruit Feather, without the need for additional boards.

Robo HAT MM1 is the perfect combination of hardware power and software flexibility - making it an essential tool for any robotics project.

Final Robo HAT MM1 prototype shown here.

Create autonomous cars and drones

The Donkey Car and DIY Robocar community groups have been crucial to the Robo HAT MM1 development. We have tested the HAT with the Donkey Car Platform (a widely used small-scale autonomous car kit) and it works very well.

The Robo HAT MM1 removes the need for a PWM driver, external power, or voltage regulators, and adds additional functionality. The Robo HAT MM1 includes an IMU (Inertial Measurement Unit) - which can be used to measure the movement of the car. It also includes RC controller inputs, which remove any latency or delays caused by using the Raspberry Pi to control the car during training. With Robo HAT MM1, you can simplify your setup while improving the overall autonomous vehicle project.

Donkey Car Training Video

Use in classrooms

We are already using the Robo HAT MM1 (and autonomous cars) as educational tools in school programs and workshops.

One of the core drivers of this project was the changing curriculum in Australian schools - all students must now learn to code as part of their technology course (this change came through in January 2019). Project Based Learning (PBL) - learning through doing or creating something seems to be the best way to teach students programming. We wanted to create a platform that could be used to learn the very basics of programming, all the way up to robotics and autonomous cars and beyond! The Robo HAT MM1 is one of the ways we hope to achieve better programming education in schools.

CircuitPython is one of the key parts to enable this, as students can start learning the basics of Python and then advance up to more complicated tasks.

Robo HAT MM1 works with RaspberryPi, Jetson Nano, and standalone. Board revision 6 seen here.

Board Diagrams

External
A. Inputs for radio controller H. Auxiliary battery (4.2 V)
B. Raspberry Pi header (final version not stackable) I. ESC power pass through
C. SPI connector J. Main battery (7-15 V, 1000 mAh capacity)
D. GPS connector K. USB connector
E. I²C external connector L. Power-on button
F. Telemetry / USART connector M. Outputs for servos
Internal
N. NeoPixel header R. LED
O. E-Stop header S. Pads for switching SPI connector
P. LiPo battery charging T. Pads for switching I²C bus
Q. Reset button U. Serial header

Board Pinout

Click for full-size image.

Tons of Software Options

With support for major existing platforms, you are guarenteed to get your project up and running as fast as possible.

We designed Robo HAT MM1 to work with a wide range of software libraries, to enable anyone to build the project they want. This flexibility also means that Robo HAT MM1 is well-suited to a wide variety of use-cases.

CircuitPython (by Adafruit)

CircuitPython is an education friendly open source derivative of MicroPython. CircuitPython supports use on educational development boards designed and sold by Adafruit. Adafruit CircuitPython features unified Python core APIs and a growing list of Adafruit libraries and drivers of that work with it.

CircuitPython adds hardware support to all of these amazing features [of Python]. If you already have Python knowledge, you can easily apply that to using CircuitPython. Even if you have no previous experience, it’s really simple to get started.

CircuitPython is a special programming language developed by Adafruit that is based on Python but focused purely on writing code for hardware. It has many thousands of libraries for different sensors. It makes programming motors, servos, sensors and other bits easy. CircuitPython doesn’t require any software on your computer - it runs on the board (Robo HAT MM1) which appears as a USB drive.

Typically, CircuitPython is what we expect our backers to be using. We have used it for reading data from the MPU9250 IMU sensor, then using that data to control a robot arm. We have also used it to read RC signals from an RC Remote and send those signals back to the Servos attached to the Robo HAT. There are many other example uses that you can come up with. Adafruit has many great tutorials on CircuitPython and how to use it.

CircuitPython screenshot.

SeeSaw (by Adafruit)

Seesaw is an open source microcontroller friend for other chips. It provides a variety of capabilities such as UART, ADC, DAC, extra GPIO, etc. to chips that don’t have them.

The other Adafruit library we are supporting is SeeSaw. SeeSaw runs on the Robo HAT and you can use a Raspberry Pi to make it do things using Python. All commands are sent from the Raspberry Pi to the Robo HAT over I2C. The typical use case for this would be that you have a robot or car that you only want to use the Robo HAT to control Servo Motors, Encoders or other attached sensors over UART or SPI.

SeeSaw can be partnered with a Raspberry Pi to form a powerful combination. The Raspberry Pi can do all the hard calculations for your robot (such as neural networks and image processing) and then send all the control commands to the Robo HAT MM1 through I²C running SeeSaw. SeeSaw has many special functions built into it, including: 16-bit servo control (much higher than normal 8-bit or common 12-bit), 12-bit analog read, USB-Serial to UART for communicating with the Raspberry Pi via USB, and more.

We are expanding SeeSaw SeeSaw has a few limitations. It only supports some features of the powerful processor on the Robo HAT MM1. We are looking at expanding what SeeSaw is able to do to support RC Input and controlling some logic of the board (like the power-on button). It is also well documented. Overall, it is a very useful library if you plan on using the Raspberry Pi and the Robo HAT together.

Arduino

The classic Arduino IDE used by many thousands of makers around the world can also be used to program and deploy code to the Robo HAT MM1.

Most people are familiar with the Arduino IDE. It has many millions of users around the world. It brings with it all the existing libraries and code examples that work on popular Arduino boards. We are supporting this as it allows the existing THOUSANDS of software libraries developed for Arduino to run on the Robo HAT. This includes interfacing with GSM modules, reading GPS coordinates, and using any kits that you may already have.

Almost any hardware problem when using Arduino has already been solved by an online forum! This is the sort of support we wanted to maintain with the Robo HAT, and can by having Arduino’s programming environment available to backers.

More libraries in the future

We believe that these libraries can be added on in the future, expanding the number of projects that you can do.
We are currently working on these libraries and plan on bringing others as fast as possible.

  • ArduPilot Control (testing)
  • PX4 (Dronecode) Flight Control (in development)
  • Scratch Environment (in development)

Comparisons

The Robo HAT MM1 holds its own amongst the drone controllers, CircuitPython boards and other Raspberry Pi HATs.

MM1 HAT PXFmini (unavailable) NAVIO2 PixHawk Cube Feather M0 CrickitHAT Sense HAT
Open Hardware Open Closed Closed Closed Open Open Closed
Onboard Microprocessor Yes No Yes Yes Yes Yes No
Flash Storage 8 MB 2 MB 2 MB 2 MB
Sensors
Accelerometer Yes Yes Yes Yes No No Yes
Gyroscope Yes Yes Yes Yes No No Yes
Magnetometer Yes Yes Yes Yes No No Yes
Pressure External Yes Yes Yes No No Yes
Temperature Yes No No No No No Yes
Current Yes No Yes No No No No
GPS External No Yes No No No No
I/O
PWM Outputs 8 8 14 8 7 4 0
Input Channels 4 1 1 2 7 8 0
Additional GPIO 11 0 0 6 7 8 0
Total GPIO 23 9 15 16 21 20 0
Connectors
GPS Yes No No Yes No No No
I²C Yes Yes Yes Yes No No No
UART Yes Yes Yes Yes No No No
SPI Yes No No No No No No
CAN No No No Yes No No No
USB Yes No No Yes Yes Yes No
Power
Triple - Redundancy Yes Yes Yes Yes No No No
Raspberry Pi Yes Yes Yes No No No No
Software
Arduino IDE Yes No No No Yes Yes No
Python Yes Yes No No No Yes Yes
CircuitPython Yes No No No Yes No No
SeeSaw Yes No No No Yes Yes No
ArduPilot Yes Yes Yes Yes No No No
Price $39 $80 $170 $240 $20 $35 $40

Documentation

This project is proudly open source. All the documentation, support, and software is currently available on Robotics Masters GitHub.

Robotics Masters Resources

Robo HAT MM1 revision 2 board shown

Pledge Level Descriptions

Starter

Get in on the ground level!

This level is for everyone who wants to start using the Robo HAT MM1 board. With Robo HAT MM1 you’ll be able to write code in CircuitPython (accessing thousands of existing libraries for sensors), program your smart robot with a Raspberry Pi running Tensorflow using the Robo HAT MM1 running SeeSaw, and interact with the large existing support of the Arduino Platform. The possibilities are endless - build your project!

Standard Kit

Get ready to launch into any project, hassel free!

At this level, you will receive the Robo HAT MM1 board and a bundle of cables for connecting various devices to the Robo HAT GPS, SPI, UART and I²C connectors. We added the cable bundle because so many of the devices you can buy follow different cable standards. With these special breakout cables, you will be able to connect virtually any device.

Drone Starter Bundle

Fly away with a Robo HAT fit for flight!

We have been getting a lot of feedback from different drone communities about what they expect from a controller board. Two of the biggest requests were for an SPI IMU and a barometer (pressure sensor). We are providing this level to specifically meet the needs of drones. You will receive a Robo HAT MM1 board, a set of peripheral cables (7pin (SPI Port), 6pin (UART Port), 6pin (GPS Port), 4pin (I2C Port)), an external SPI IMU (custom board), and an external pressure sensor (custom board). We are also including a uBloc NEO-M8N GPS module. All these components have been tested to work with our board and are commonly used within the drone community. At this pledge level, you will have all the sensors you need to start making your own drone.

Educational Kit

Learn faster than before, build your next great idea!

Designed for those who want to learn more CircuitPython or increase their robotics skills. We have put together this small robotics kit that has been tested during our Python for Women workshops. The kit includes one Robo HAT MM1, and a cable pack which includes main battery cable, ESC cable, a set of peripheral cables (7pin (SPI Port), 6pin (UART Port), 6pin (GPS Port), 4pin (I2C Port)), 1 strip of 10 NeoPixels, and the RM Smart Car Kit. The RM Smart Car Kit contains 2 motors, wheels, battery holder, sensors and a base plate to hold it all together. You can use this car for experimenting with autonomous navigation, learning CircuitPython, or teaching others.

Multi-Educational Bundle (5 pack)

Contains five Educational Kits. This is designed for teachers who are looking for a inexpensive and interactive way of introducing students to programming. This level is suited to class or community group sizes of up to 20 people.

Manufacturing

All manufacturing will take place in China. We will start by sending the Gerber files to a PCB factory that will create the boards. These boards will be unpopulated and need to be assembled in a different factory that will be able to place all the smaller components for the board. We plan on sourcing the components for the boards to ensure we are getting the best and most reliable components.

The second PCBA factory will be able to assemble the boards using a pick-and-place machine. They will be testing that each component that has been sourced is correct (many manufactures do not check for fake components). This will ensure all parts of the board work as expected without problems.

Next, the factory will “run SMT,” in which solder paste is applied to the PCB, and components are placed on the board, the entire PCB assembly (PCBA) is run through a hot oven to melt the solder, a factory test is run on the finished product, and the boards are finally packaged for shipping. If all of the pieces are ready, this process should be relatively quick.

The testing will be extensive. As already mentioned, each component will be checked. Then each completed board will be tested on a ‘test jig’ that we give to the manufacturer to ensure that the boards are made to specification. Part of the testing involves making sure the MCU, IMU, and current sensors are all working along with the electrical circuits. This will ensure that every board we send out is 100% working.

We already have direct contact with the people manufacturing the boards. This allows for a fast and reliable delivery of the product. Manufacturing time will depend on the number of boards that need to be made, so we’ve added a bit of a buffer in our shipping estimates to account for this. The manufacturer we’re working with has agreed to make and test all the boards before they leave the factory (yes - test as well).

Making Robo HAT MM1 prototypes (revision 2).

Shipping and Fulfillment

Once the boards have been manufactured, they will be delivered to Crowd Supply in the US to be distributed to the backers. They will take less than two weeks to arrive at Crowd Supply for distribution. Then another short while before they are sent directly to the backers. For more information, please read this page about ordering, paying, and shipping.

Once you receive the board, you can access all of our resources to help you get started. Then it is up to you what magical project you are going to create - robotics, drones, or something new!

The bottom of Robo HAT MM1 revision 6.

Risks & Challenges

Manufacturing hardware can be difficult and challenging. Parts might not ship on time, or they might arrive later than we planned for us to start manufacturing. Parts might become discontinued or change without a prior announcement from the manufacturer. Our pick-and-place machine or reflow oven might break and need replacement parts and repair.

Our team is located in the heart of manufacturing in Shenzhen, China. This reduces the risk and time delays of manufacturing issues. We are able to go to the factory and check on production very regularly and can communicate directly with the factory in the event of issues.

We are also testing each board individually to ensure that there are no manufacturing faults. This is in addition to the testing we have done on each revision of the board, making sure everything works as intended. This ensures that you are getting a 100% reliable product.

We will provide updates explaining how we are addressing any delays of this kind. We know that many of you are interested in the manufacturing process, and that includes learning about any problems we might run into and how we solve them.

Project Beginnings

Robo HAT MM1 began as a University project two years ago, when we were using different autonomous car platforms to create self-driving cars. These platforms were good but were not easy enough to use.

We thought of new ways to make the platforms more accessible to get students to learn more about robotics by giving them better hardware. We focused on self-driving cars and then expanded to create a Raspberry Pi HAT with many more capabilities. The Robo HAT is able to support students starting out with programming and coding, all the way up to creating advanced robotics.

We investigated available open-source platforms that were being used in the maker community and then made the board compatible with them. Libraries like Adafruit CircuitPython, Adafruit SeeSaw, and Arduino give people the flexibility to use what they like and already know.

We’re proud of Robo HAT MM1 - one of the most versatile and user-friendly robotics controller boards available on the market. The variety of sensors, connectivity, functionality, and software variety are unmatched at this price.

Funding ends on Jun 11, 2019 at 04:59 PM PDT (11:59 PM UTC)


Credits

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

CTO

Cian Byrne

Software Developer

Peter Pan

Electronics Engineer

Linda Luo

Project Lead

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