|
1 | 1 | # firmware_updater |
2 | | - |
3 | | - |
4 | 2 | ## Development Environment: |
5 | | -Processing 3.5.4 |
6 | | -> Note: Processing 4.0b8 has Bugs, Specifically for Serial API. Highlighted [here in github issues](https://github.com/processing/processing4/issues/490) & [here in forum](https://discourse.processing.org/t/serial-list-on-linux-doesnt-seem-to-work/37075) |
| 3 | +If you want to check the source (for whatever reasons) and play with it, you can use [Processing 3.5.4](https://processing.org/download) on your system. |
| 4 | +### Notes & credits: |
| 5 | +1. Uses heavily [controlP5](https://github.com/sojamo/controlp5) Processing library for the GUI. |
| 6 | +2. As of May 2022, Processing 4.0b8 has a bug Serial API ( related to `Serial.list()` ). Highlighted [here in github issues](https://github.com/processing/processing4/issues/490) & [here in forum](https://discourse.processing.org/t/serial-list-on-linux-doesnt-seem-to-work/37075). |
| 7 | +3. Underneath it uses a tiny [modified version](https://github.com/devATdbsutdio/user_prog) of __MegaTinyCore's__ [serialUPDI based flashing system](https://github.com/SpenceKonde/megaTinyCore/tree/master/megaavr/tools). |
| 8 | +--- |
| 9 | + |
| 10 | +## Prerequisites: |
| 11 | +### Check / Install Python on your system: |
| 12 | +1. __MacOS users__: Although different versions of MacOS comes shipped with differernt versions of python, a quick way to check would be: |
| 13 | + - Open your _SPOTLIGHT_ search (`CMD + SPACE`). |
| 14 | + - Type in `terminal`. |
| 15 | + - When terminal launches, type in: `python3`. |
| 16 | + - If it is not installed, install it by going to this [link](https://www.python.org/downloads/macos/). |
| 17 | +2. __Windows users__: No need to do anything. |
| 18 | +3. __Linux users__: No need to do anything. |
| 19 | + |
| 20 | +### Install / Update Drivers on your system: |
| 21 | +1. __MacOS users__: MacOS should also come with the serial drivers for the chip we are using, but no harm in upgrading. Install from [here](https://github.com/devATdbsutdio/firmware_updater/blob/main/tools/drivers/CH34XSER_MAC.zip). |
| 22 | +2. __Windows users__: Windows should also come with the serial drivers for the chip we are using, but no harm in upgrading. Install from [here](https://github.com/devATdbsutdio/firmware_updater/blob/main/tools/drivers/CH34XSER_WIN.zip). |
| 23 | +3. __Linux users__: The built in drivers for CH34x serial chip (that's what we are using in our HW) in Linux Kernel has been broken for a long time. Follow this guide [here](https://gist.github.com/dattasaurabh82/082d13fd61c0d06c7a358c5e605ce4fd). |
| 24 | +--- |
7 | 25 |
|
8 | 26 | ## Operation: |
| 27 | + |
9 | 28 | ### To Flash PCB test firmware: |
10 | 29 | The firmware that should run in the test PCB does things like, on Power ON, it checks various components and reports over serial. |
11 | 30 | So we need a Debug serial port (currently which is different than flashing port). |
@@ -40,24 +59,3 @@ Keyboard shortcuts summary: |
40 | 59 | 7. `TAB` to cycle through <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/sync-alt.svg" width="20" height="20"> <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/file.svg" width="20" height="20"> <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/arrow-right.svg" width="20" height="20"> |
41 | 60 | 8. While __tabbing__, press `ENTER/RETURN` to commit/select an operation. |
42 | 61 | 9. To get out of __tabbing__, perform `LEFT-MOUSE` click. |
43 | | - |
44 | | - |
45 | | -## Prerequisites: |
46 | | -### Check / Install Python on your system: |
47 | | -1. __MacOS users__: Although different versions of MacOS comes shipped with differernt versions of python, a quick way to check would be: |
48 | | - - Open your _SPOTLIGHT_ search (`CMD + SPACE`). |
49 | | - - Type in `terminal`. |
50 | | - - When terminal launches, type in: `python3`. |
51 | | - - If it is not installed, install it by going to this [link](https://www.python.org/downloads/macos/). |
52 | | -2. __Windows users__: No need to do anything, we have bundled a suitable python. |
53 | | -3. __Linux users__: You guys know what you are doing 🤓. Python3 should be there or else what are you doing in Linux. |
54 | | - |
55 | | -### Install update Drivers on your system: |
56 | | -1. __MacOS users__: MacOS should also come with the serial drivers for the chip we are using, but no harm in upgrading. Install from [here](https://github.com/devATdbsutdio/firmware_updater/blob/main/tools/drivers/CH34XSER_MAC.zip). |
57 | | -2. __Windows users__: Windows should also come with the serial drivers for the chip we are using, but no harm in upgrading. Install from [here](https://github.com/devATdbsutdio/firmware_updater/blob/main/tools/drivers/CH34XSER_WIN.zip). |
58 | | -3. __Linux users__: Follow this guide [here](https://gist.github.com/dattasaurabh82/082d13fd61c0d06c7a358c5e605ce4fd). |
59 | | - |
60 | | - |
61 | | -## Binaries: |
62 | | -1. [Mac app](https://github.com/devATdbsutdio/firmware_updater/releases/download/v1.0.0b/macos-x86_64.zip): Tested, for now, only on Intel Chips and not on M1 Macs and on latest (20/05/2022) Mac OS Monterey (12.3.1) |
63 | | -2. [Win exe](https://github.com/devATdbsutdio/firmware_updater/releases/download/v1.0.0b/windows-amd64.zip): Tested, for now, only on Windows 10 stable release. |
0 commit comments