Skip to content

Commit 88ab554

Browse files
committed
esp32 updates WIP
1 parent faf6654 commit 88ab554

File tree

1 file changed

+15
-24
lines changed

1 file changed

+15
-24
lines changed

README.md

Lines changed: 15 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,25 @@
44

55
Arduino based logic for OpenPPG SP140 Throttle Controller
66

7-
#### This master branch is only for testing the latest firmware for the and SP140
7+
#### This master branch is only for testing the latest firmware for the and SP140 controllers running the ESP32-S3 processor.
88

99
X4 code has been migrated to a separate repo - https://github.com/openppg/x4-controller
1010

1111
It may not be stable and is not recommended for flying.
1212
See stable releases [here](https://github.com/openppg/eppg-controller/releases)
13-
> Version 6.1 was intially released only for the reworked RP2040 module based controller and being ported to the original RP2040 PCB which is currently in testing. The version shipped with that hardware can be found on the [rp2040-module-release branch](https://github.com/openppg/eppg-controller/tree/rp2040-module-release)
13+
<details>
14+
<summary>Older Version Information</summary>
1415

15-
> Version 6.0 introduced [FreeRTOS](https://www.freertos.org/index.html) and is currently only working with RP2040 processors. For M0/SAMD21 processors please use [version/5 branch](https://github.com/openppg/eppg-controller/tree/version/5).
16+
For non-CAN bus controllers please use [version/6 branch](https://github.com/openppg/eppg-controller/tree/version/6).
1617

17-
> For batch 3 (non-telemetry) controllers please see the [batch-3 branch](https://github.com/openppg/eppg-controller/tree/batch-3).
18+
Version 6.1 was initially released only for the reworked RP2040 module based controller and being ported to the original RP2040 PCB which is currently in testing. The version shipped with that hardware can be found on the [rp2040-module-release branch](https://github.com/openppg/eppg-controller/tree/rp2040-module-release)
1819

19-
> For batch 2 (Arduino nano based) controllers please see the [batch-2 branch](https://github.com/openppg/eppg-controller/tree/batch-2).
20+
Version 6.0 introduced [FreeRTOS](https://www.freertos.org/index.html) and is currently only working with RP2040 processors. For M0/SAMD21 processors please use [version/5 branch](https://github.com/openppg/eppg-controller/tree/version/5).
21+
22+
For batch 3 (non-telemetry) controllers please see the [batch-3 branch](https://github.com/openppg/eppg-controller/tree/batch-3).
23+
24+
For batch 2 (Arduino nano based) controllers please see the [batch-2 branch](https://github.com/openppg/eppg-controller/tree/batch-2).
25+
</details>
2026

2127
## Build and flash firmware
2228

@@ -31,15 +37,7 @@ Suitable for Mac, Windows, and Linux
3137
1. Follow the instructions here for using with VSCode https://platformio.org/install/ide?install=vscode
3238
2. Extract the downloaded code from the repo [here](https://github.com/openppg/eppg-controller/archive/master.zip) (or `git clone` it)
3339
3. Open the folder using the PlatformIO "open project" option inside of VSCode.
34-
35-
### Flash the OpenPPG Code
36-
37-
1. Click the "PlatformIO Build" button inside of VSCode or enter `platformio run --target upload` in the command line. PlatformIO will automatically download libraries the first time it runs.
38-
39-
#### Install the driver
40-
41-
Batch 3+ OpenPPG controllers and early SP140 controllers are powered by Atmel’s SAMD21G18A MCU, featuring a 32-bit ARM Cortex® M0+ core. On some operating systems you may need extra drivers to communicate with it.
42-
Newer SP140 controllers feature the RP2040 MCU which is a dual-core variant of the ARM Cortex® M0+.
40+
4. The first time you build the project it will download the libraries.
4341

4442
#### Download and Prepare OpenPPG Code
4543

@@ -51,19 +49,12 @@ Newer SP140 controllers feature the RP2040 MCU which is a dual-core variant of t
5149
2. Connect the controller to your computer by using the USB port on the bottom of the controller.
5250
3. Flash the firmware by clicking "Upload" in the bottom left.
5351

54-
## Bootloader
55-
56-
The latest batches of OpenPPG SP140 controllers use the UF2 bootloader (compatible with Arduino).
57-
It makes firmware updates as simple as drag and drop.
58-
Learn more here https://github.com/openppg/uf2-samdx1
59-
60-
### Building .uf2 update file
52+
### Building binary update file
6153

62-
The uf2 bootloader can update firmware with a .uf2 binary file built from a complied .bin firmware file. The .bin file is automatically built when "verifying" the firmware in either Arduino IDE or PIO.
63-
Using the uf2-samdx repo above python tool the command to build a compatible .uf2 file should look something like:
54+
esp32 uses esptool to build a binary file from the compiled .bin file.
6455

6556
```bash
66-
$ python3 utils/uf2conv.py eppg-controller/.pio/build/OpenPPG\ CM0/firmware.bin -c -o sp140-update.uf2
57+
$ esptool.py
6758
```
6859

6960
## Config tool

0 commit comments

Comments
 (0)