A simple I2C library for ESCs using the Blue Robotics version of SimonK's TGY firmware (https://github.com/bluerobotics/tgy). This library supports the BlueESC, but also the Afro Nfet 30A. I2C is an alternative interface for micro-controllers, rather than using PWM (as a servo) -- this provides some additional features like temperature level, RPM, etc.
Dependents: SimonK_I2C_ESC_Example
You are viewing an older revision! See the latest version
Configuring Your Afro 30A ESC
Requirements¶
Clone / Download this Arduino program: https://github.com/c---/ArduinoUSBLinker Arduino (Uno) and Arduino IDE AVRA installed on OSX / Linux (brew install avra or sudo apt-get install avra) Clone / Download this repo: https://github.com/bluerobotics/tgy Afro 30A ESC (other Afro ESC's, e.g. the 12A , are not compatible as they do not have the i2c ports on the board) Soldering iron, etc.
Procedure¶
- Use the Arduino IDE to flash the Arduino with the ArduinoUSBLinker program.
- Prepare the ESC for firmware flashing:
- Connect a cable from the brown wired servo connector to 'gnd' on the Arduino.
- Connect a cable from the orange wired servo connector to 'digital pin 0' on the Arduino.
- You now need to compile the Blue Robotics version of SimonK Firmware:
- Change into the directory containing the tgy firmware.
- Execute
Note
make build_afro_nfet_addresses
This should build a set of hex files (*id1-16.hex).
- Now flash the ESC with the firmware using <</note>>
avrdude -c stk500v2 -b 9600 -P [arduino com port] -p m8 -U flash:w:afro_nfet_id1.hex:i
<<note>>
(if you wish to communicate with multiple Afro/BlueRobotics ESCs make sure you flash each ESC with a different numbered hex file).
- Upon success you can remove the Arduino.
- Peel back the heat shrink on the ESC exposing the PCB.
- Solder two electrical leads on the pads labeled SDA and SCL
- Heatshrink the ESC back up for protection.
Job Done!