Skip to content

Commit 5ef838e

Browse files
Update README.md
1 parent 4b7f315 commit 5ef838e

File tree

1 file changed

+33
-15
lines changed

1 file changed

+33
-15
lines changed

README.md

Lines changed: 33 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,45 @@
11
# firmware_updater
2-
![Screenshot 2022-05-25 at 3 00 23 PM](https://user-images.githubusercontent.com/4619862/170200211-0835a531-3686-45f0-94be-1ac9f9143278.png)
2+
![Application's image](https://user-images.githubusercontent.com/4619862/170832939-77a36578-2408-404f-851e-49456c3cf101.png)
3+
4+
## 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)
37
48
## Operation:
9+
### To Flash PCB test firmware:
10+
The firmware that should run in the test PCB does things like, on Power ON, it checks various components and reports over serial.
11+
So we need a Debug serial port (currently which is different than flashing port).
12+
> The serial port's baudrate is hardcoded at 115200. So make sure your hardware spits data over serial at 115200 baudrate. In the next version we will also open it up to the user of this system.
13+
1. Open the application.
14+
2. Pressing `d/D` on the keyboard to toggle show/hide the __Debug operation__ related UI elements.
15+
3. Plug in your programmer to your computer (programmer should be attached to the main board as well through UPDI pinouts).
16+
4. Plug in the USB cable coming from the Debug port, to your computer. (_The System is deisgned for platforms where we have the Flashing port and Serial ports on two separate interfaces in the hardware_)
17+
5. Click on the <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/sync-alt.svg" width="20" height="20"> to refresh serial port. _Everytime the programmer or the Serial interface is changed or replugged in, do not forget to refresh the ports._
18+
6. Select your Upload port from it's respective dropdown list.
19+
7. Select your Serial Debug port from it's respective dropdown list.
20+
8. Click on the <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/file.svg" width="20" height="20"> to select the test firmware binary i.e. [watch_firmware.hex](https://watchfirmware.s3.ap-northeast-1.amazonaws.com/watch_firmware.hex) (from the location where you downloaded it)
21+
9. When ready, click on the <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/arrow-right.svg" width="20" height="20"> to flash the test firmware.
22+
23+
### To Flash production firmware:
24+
Depending on the usecase, the firmware typically should not have any serial debug logs coming from it, unless that's intended. If it is so intended as the later use-case, Then to flash and test even the production firmware, you can use the methods from last step.
25+
> If you do not need the 2nd Debug Serial port in this case, you can hide the Debug UI elements by pressing `d/D` on the keyboard.
526
1. Open the application.
627
2. Plug in your programmer to your computer (programmer should be attached to the main board as well through UPDI pinouts).
7-
3. Click on the <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/sync-alt.svg" width="20" height="20"> to refresh serial port. Everytime the programmer is changed or replugged in, do not forget to refresh the ports.
8-
5. Select your port from dropdown list
28+
3. Click on the <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/sync-alt.svg" width="20" height="20"> to refresh serial port. _Everytime the programmer is changed or replugged in, do not forget to refresh the ports._
29+
5. Select your Upload port from it's respective dropdown list.
930
6. Click on the <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/file.svg" width="20" height="20"> to select the firmware binary i.e. [watch_firmware.hex](https://watchfirmware.s3.ap-northeast-1.amazonaws.com/watch_firmware.hex) (from the location where you downloaded it)
10-
7. When ready, click on the <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/arrow-right.svg" width="20" height="20"> to flash the firmware.
31+
7. When ready, click on the <img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/5.x/svgs/solid/arrow-right.svg" width="20" height="20"> to flash the main firmware.
1132

12-
Keyboard shortcuts:
33+
Keyboard shortcuts summary:
1334
1. `h/H` to toggle show hide console.
1435
2. `r/R` to refresh serial ports list. (STEP-3)
1536
3. `f/F` to flash binary. (STEP-7)
16-
4. `ESC` to Quit.
17-
5. `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">
18-
6. While __tabbing__, press `ENTER/RETURN` to commit/select an operation.
19-
7. To get out of __tabbing__, perform `LEFT-MOUSE` click.
37+
4. `c/C` clear the console area.
38+
5. `d/D` toggle show/hide Serial debug UI elements.
39+
6. `ESC` to Quit.
40+
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+
8. While __tabbing__, press `ENTER/RETURN` to commit/select an operation.
42+
9. To get out of __tabbing__, perform `LEFT-MOUSE` click.
2043

2144

2245
## Prerequisites:
@@ -37,9 +60,4 @@ Keyboard shortcuts:
3760

3861
## Binaries:
3962
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)
40-
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.
41-
42-
## Note for Linux users:
43-
_Binaries are not yet ready for Linux Users unfortunately due to issues below (which we are trying to solve)_
44-
> The Serial port access issue from GUI frame work. Posted [here](https://github.com/processing/processing4/issues/490) and [here](https://discourse.processing.org/t/serial-list-on-linux-doesnt-seem-to-work/37075)
45-
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

Comments
 (0)