Limited items in stock
View Purchasing OptionsProject update 10 of 29
Hello Followers!
We have had a big week of announcements and events. We visited Maker Faire Bay Area, hosted a small meet-up, experimented with RC controllers and much more…
Read on in the update to see what you missed during the week. Don’t forget to get your early bird offer for the Robo HAT MM1 Starter Kit - while stocks last!
With three weeks to go in the campaign, we are working very hard.
We increased the number of early bird offers available for the Maker Faire Weekend. There are still some available now, and no more will be released during this campaign.
We also changed the price of the board to $39 USD. This is the lowest we can do with a manufacturing run of 200 boards. We changed the price as we re-evaluated why we started the project in the first place.
The Robo HAT MM1 has always been a way to make the Donkey Car Platform easier to use. This platform is a low-cost autonomous car hardware and software package aimed at helping people learn the basics of machine vision / AI; then seeing them take the ideas of the car and use them to solve real world problems. That is the goal that we want to see be a reality with the Robo HAT. People taking cheap, powerful hardware and solving real world problems.
We really want to see as many people as possible using the Robo HAT in different applications and then going on to solving real world problems. Whether it be autonomous cars, delivery drones, medical monitoring equipment, saving the environment or something yet to be thought of - we saw the Robo HAT MM1 as a way to make this happen - through accessible, powerful hardware that anyone can buy and use.
After taking all of this into consideration, we decided to lower the price to the minimum possible so that the community can build new tech and solve problems!
We received so much support from everyone at Maker Faire Bay Area this time. Unfortunately it was raining for two days but that didn’t dampen the support and love of the Robo HAT MM1. The feedback we got back from Maker Faire was that the IMU is one of the defining features of the board. Everyone wants to use the IMU for improving the Donkey Car Platform.
Thank you for everyone who came down and chatted with us and for the support of the Donkey Car and DIY Robo Car teams.
This week the team was working on making the Robo HAT control the throttle Electronic Speed Controller (ESC) and steering servo on a Donkey Car with only an RC Controller.
However, this is not just useful for Donkey Car. We have spoken with people working with NVIDIA Jetsons and found that they love the idea of being able to use a RC Controller to control their robots. It removes all the software issues that could result in accidents in heavier robots - where control is absolutely critical and drops outs are not tolerated. This is a great safety feature you can also install on your robots. Read on to find out more.
The current options for controlling a Donkey Car are very limiting.
Web Controller: This is a web-server running on the Raspberry Pi situated on the car. The webserver allows you to do basic control through a ‘Game Pad’ using the mouse, or incremental changes through the keyboard (stepped increments). Pain Points: It requires a WiFi Network. Latency.
Bluetooth Controller: You are able to pair a PlayStation PS4 controller to the Raspberry Pi over Bluetooth which enables you to steer and increase the speed of the car using the two joysticks. This is currently the most reliable way to drive the Donkey Car but still has issues. Pain Points: Bluetooth Configuration. Range.
This week we finished implementing the direct control of the car via a standard RC Controller that comes with the car body. It removes the pain points identified above.
There are a few reasons why this is a much better method than using the Bluetooth controller.
Latency: All the processing for controlling the car is now done on the Robo HAT MM1 without involve of Linux running on the Raspberry Pi. This means that other process that interfere with control on the Raspberry Pi no longer impact on the driving experience. There is no latency - the car moves when you move the controller.
Range: Since RC Controllers are designed for racing cars at 100 kph, they have a much further range than any Bluetooth controller. Bluetooth has major range issues. You may be able to drive your car 10 - 20 meters away before it drops out and needs to be re-paired with the Raspberry Pi (a painful process). The RC Controllers do not experience this issue and have ranges up to 100 metres or more. This adds more flexibility when you are out in the field.
Set Up: What we have found is setting up a Bluetooth controller is not straightforward and if instructions are not followed exactly, issues occur regularly. It could be pairing issues, connection drop outs, clone controllers not working or missing software packages. None of these are an issue using a direct RC Controller input straight to the servo motors. You connect the RC Receiver to Robo HAT MM1 and away you go! This was only achievable using the Robo HAT MM1 and CircuitPython running on the board.
A great few days for dramatically improving the Donkey Car Experience. You are able to check out the code on our donkeycar fork on GitHub here:
https://github.com/robotics-masters/donkeycar/tree/wallarug/rc_controller
The Robo HAT MM1 has 8 pins labelled as SERVO and 4 pins labelled as RC_CH (Radio Channel). They are actually not completely locked to those functions. If your project needed 8 Analog Inputs and only 4 PWM Outputs - this is also achievable.
Everything related to the labels on the board are software enforced. It is very easy to use the pins with a different function, provided they support it. See the table below.
Pin Name | PWM Timer | Analog Input |
---|---|---|
SERVO 1 | TCC0 [6] | - |
SERVO 2 | TCC0 [7] | - |
SERVO 3 | TCC0 [4] | - |
SERVO 4 | TCC0 [5] | - |
SERVO 5 | TCC0 [3] | AIN[19] |
SERVO 6 | TCC0 [2] | AIN[18] |
SERVO 7 | TCC0 [1] | AIN[17] |
SERVO 8 | TCC0 [0] | AIN[16] |
RC_CH 1 | TCC0[0] | AIN[4] |
RC_CH 2 | TCC0[1] | AIN[5] |
RC_CH 3 | TCC1[0] | AIN[6] |
RC_CH 4 | TCC1[1] | AIN[7] |
If you wanted 12 PWM outputs, it is manageable provided the board gets configured correctly. This gives users the flexibility to change to any desired need for a particular application.
Thank you for your support and we will be providing more updates soon!
Robotics Masters Team
Cian, Linda, Hans and Peter