Sustainabot is controlled using a custom-made circuit board, which runs three micro planetary-drive geared motors and a Bluetooth module, provides magnetometer readings from its onboard sensor, and handles battery charging.
This repository provides circuit diagrams, a bill of materials and parts coordinates list, a list of commands, and general hardware documentation.
You will also need the following (or similar), in addition to the circuit board:
- Three 700:1 micro planetary motors (example)
- A Bluetooth HC-05 module
- A Lithium-polymer battery
- Optional: Two extra 100 kOhm resistors for the battery monitor feature
For simplicity, we have provided both the source and prebuilt embedded code. In order to deploy the prebuilt code, you will need a debugger (e.g., PICkit 3) and the MPLAB IDE.
To deploy the prebuilt file using the MPLAB IDE:
- File > New Project…
- Select
Microchip Embedded
andPrebuilt (Hex, Loadable Image) Project
, then press Next. - On the following page, configure the project:
- In the "Prebuilt Filename" box, select the
sustainabot.hex
file from this repository. - For "Family", select
Advanced 8-bit MCUs (PIC18)
. - For "Device", select
PIC18F26J53
(which you can copy and paste from here to ensure accuracy). - In "Hardware Tool", select
PICkit3
, then press Next.
- In the "Prebuilt Filename" box, select the
- On the final page, select your chose of project location (or leave the default value), then press Finish
- Once the project is loaded, edit its properties (i.e., via the right-click menu), and in "Conf: [default]" > "PICkit 3", select the "Power" item from the dropdown menu, selecting
Power target circuit from PICkit3
and setting the Voltage Level to3.25
. - Plug in your assembled Sustainabot, ensuring that the central wire on the board's programmer port is routed to the indicator arrow on the PICkit 3)
- Power on the Sustainabot, then connect the PICkit 3 to your computer
- Click
Make and Program Device
in the MPLAB IDE
Once you have programmed your device, you can disconnect the programming cable and use the android app to control your Sustainabot.
Apache 2.0