Skip to content

Commit 3e8a09a

Browse files
committed
docs: Update firmware/README.md
1 parent 3d7eb0e commit 3e8a09a

2 files changed

Lines changed: 72 additions & 3 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ Before being able to communicate with the device, programming eeprom or regular
118118

119119
### Programming the STM32 (POST Code display)
120120

121-
See [firmware/](./firmware/) for build & flash instructions.
121+
See [firmware/](./firmware/) for detailed build & flash instructions.
122122

123123
## Thanks
124124

firmware/README.md

Lines changed: 71 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,77 @@ Download from the latest release archive: [Release](https://github.com/xboxonere
7171
1. Disconnect PCB from console and PC!
7272
2. Press and hold the button on the PCB.
7373
3. Connect PCB to PC, keep button pressed for a second.
74-
4. Use custom stm32flash tool from this repo: [repo](https://github.com/xboxoneresearch/libaspect2)
74+
4. Use custom `aspect2-stm32-updater` tool from this repo: [repo](https://github.com/xboxoneresearch/libaspect2)
75+
4.1. Preloader first
76+
77+
```
78+
$ ./aspect2-stm32-updater flash preloader preloader.bin`
79+
* Using File=Ok("preloader.bin"), Size=2048 bytes
80+
[*] About to write offset 0x8000000 - 0x8000800 (0x800 bytes)
81+
[*] Start page: 0, count: 1
82+
[+] Chip ID: 0x466
83+
[+] Erasing flash...
84+
[+] Writing firmware...
85+
[00:00:18, eta:2m] Writing █████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 256 B / 2.00 KiB (13 B/s)
86+
```
87+
88+
At the end, this should appear:
89+
90+
```
91+
[+] Writing firmware...
92+
[+] Verifying firmware...
93+
[00:02:17, eta:0s] Writing ████████████████████████████████████████ 2.00 KiB / 2.00 KiB (15 B/s)
94+
[00:02:17, eta:0s] Verifying ████████████████████████████████████████ 2.00 KiB / 2.00 KiB (15 B/s)
95+
[*] Done
96+
```
97+
98+
The info command is supposed to show
99+
100+
```
101+
$ ./aspect2-stm32-updater info
102+
Magic 'IAPL' @ 0x80007E0
103+
Version=1.1, Size=0x7E0, CRC32=0xC2A290A3
104+
Hash valid: YES
105+
No firmware / tombstone found @ 0x8000800
106+
```
107+
108+
4.2. Now userapp (and yes, it is veeeery slow)
109+
110+
```
111+
./aspect2-stm32-updater flash user-app userapp.bin
112+
* Using File=Ok("userapp.bin"), Size=24104 bytes
113+
[*] About to write offset 0x8000800 - 0x8006628 (0x5E28 bytes)
114+
[*] Start page: 1, count: 12
115+
[+] Chip ID: 0x466
116+
[+] Erasing flash...
117+
[+] Writing firmware...
118+
[00:00:11, eta:37m] Writing ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 128 B / 23.54 KiB (10 B/s)
119+
```
120+
121+
Firmware got written successfully
122+
123+
```
124+
[+] Writing firmware...
125+
[00:26:33, eta:0s] Writing ████████████████████████████████████████ 23.54 KiB / 23.54 KiB (14 B/s)
126+
[+] Verifying firmware...
127+
[00:26:33, eta:0s] Verifying ████████████████████████████████████████ 23.54 KiB / 23.54 KiB (14 B/s)
128+
[*] Done
129+
```
130+
131+
Let's check the info command once again
132+
133+
```
134+
$ ./aspect2-stm32-updater info
135+
Magic 'IAPL' @ 0x80007E0
136+
Version=1.1, Size=0x7E0, CRC32=0xC2A290A3
137+
Hash valid: YES
138+
Magic 'UAPP' @ 0x8000800
139+
Version=1.1, Size=0x5C28, CRC32=0xC8961915
140+
Hash valid: YES
141+
```
142+
143+
5. We are all done!
144+
75145

76146
## Development
77147

@@ -83,4 +153,3 @@ Download from the latest release archive: [Release](https://github.com/xboxonere
83153
- Get an `arm-none-eabi` toolchain (f.e. from [developer.arm.com](https://developer.arm.com/-/media/Files/downloads/gnu/14.3.rel1/binrel/arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi.tar.xz))
84154
- Extract the archive and add the `bin/` directory to your `$PATH` environment variable
85155
- Build firmware via `make`
86-

0 commit comments

Comments
 (0)