This piece of software provides a REST and MQTT client interface to various pieces of Hardware, such as the camera, motor sheilds and serial devices and such.
This software expects a couple external devices to be present.
This service application relies on some important external dependencies, although we will strive to make the software usable in the absence of any external dependencies.
The software provide three (four) interfaces to interact with:
- Flask serving up an HTML/JS/CSS/SPA Dashboard
- Flask serving up REST end points
- Mosquitto an MQTT broker
- Mosquitto MQTT to Websocket Interface (coming soon...)
This allows us to quickly read, monitor, configure and trouble shoot our applications via an HTML interface with realtime feedback, programatic REST api and through a shared message bus.
Pretty powerful!
Flask is used initially to develop a REST API that to
Currently the software can only handle skid steering. The MQTT messages are like this:
skid:l:r
This writes the message to the skid channel that contains two integers -i <= 0 <= i where |i| <= 1.0 representing the percentage of speed the motor will run at, the direction is determined by the +/-.
I have an Adafruit Motorshield for which I built a simple Skidder class to drive a vehicle using Skid Steering techniques.
If you want to use the Adafruit circuit python emulation library follow the directions on the above link to inlcude the appropriate Adafruit library.
A quick summary, installing the Adafruit Motorshield library for the Raspberry Pi can be installed as follows (at least, at the time of this writting, it worked! (if it does not, let me know or send a pull request!).