Update booster instructions for new firmware version

Signed-off-by: Egor Savkin <es@m-labs.hk>
This commit is contained in:
Egor Savkin 2023-11-13 11:18:44 +08:00
parent eb372f4121
commit a9645c3b03

View File

@ -8,9 +8,40 @@
### Flashing ### Flashing
#### Easier way
```shell
# download binary from https://files.m-labs.hk/s/DcJwdC33tyBK7at
nix-shell -p dfu-util
dfu-util -a 0 -s 0x08000000:leave --download booster0.5.0.bin
```
#### Build from source on Fedora 38
Creating proper Nix shell for updated Rust is quite troublesome, so the faster way is actually to use any
classic Linux distribution:
```shell
git clone https://github.com/quartiq/booster.git # download sources
sudo dnf install clang dfu-util
cd booster/
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # install Rust, we need rustup
rustup target add thumbv7em-none-eabihf
cargo install cargo-binutils
rustup component add llvm-tools-preview
cargo build --release
cargo objcopy --release -- -O binary booster.bin
# enter dfu mode by either serial terminal or
# press `DFU Bootloader` button while rebooting
dfu-util -a 0 -s 0x08000000:leave --download booster.bin
```
#### For version before September 2023 on NixOS
```shell ```shell
git clone git@github.com:quartiq/booster.git git clone git@github.com:quartiq/booster.git
cd booster cd booster
git checkout f7d89f4d9d7760e8bc73ec13f17212512b60af15 # or earlier
nix-shell -p rustup cargo rustc dfu-util nix-shell -p rustup cargo rustc dfu-util
rustup target add thumbv7em-none-eabihf rustup target add thumbv7em-none-eabihf
cargo install cargo-binutils cargo install cargo-binutils
@ -32,7 +63,7 @@ dfu-util -a 0 -s 0x08000000:leave --download booster.bin
``` ```
3. `mosquitto -c mosquitto.conf -d` 3. `mosquitto -c mosquitto.conf -d`
4. Run `cutecom` 4. Run `cutecom`
5. Connect to the Booster via `/dev/ttyACMX` port, baud 9600 5. Connect to the Booster via `/dev/ttyACMX` port, baud 9600, switch from LF to CR on newer version
6. Send `help` command to check if it works 6. Send `help` command to check if it works
7. Enter commands (change details if necessary): 7. Enter commands (change details if necessary):
```shell ```shell
@ -44,6 +75,13 @@ dfu-util -a 0 -s 0x08000000:leave --download booster.bin
# apply changes and wait until it fully rebooted # apply changes and wait until it fully rebooted
reset reset
``` ```
Newer version:
```shell
write broker "192.168.1.123"
write ip "192.168.1.75"
# apply changes and wait until it fully rebooted
reset
```
8. Check the Booster connects to your broker. 8. Check the Booster connects to your broker.
9. Download AppImage from [MQTT Explorer](https://mqtt-explorer.com/) 9. Download AppImage from [MQTT Explorer](https://mqtt-explorer.com/)
10. Run it with `appimage-run /path/to/MQTT-Explorer-XXX.AppImage` 10. Run it with `appimage-run /path/to/MQTT-Explorer-XXX.AppImage`
@ -58,7 +96,12 @@ dfu-util -a 0 -s 0x08000000:leave --download booster.bin
4. Configure oscilloscope for 1M Ohm impedance 4. Configure oscilloscope for 1M Ohm impedance
5. Attach attenuator to the Urukul's RF2 5. Attach attenuator to the Urukul's RF2
6. `cd py/` 6. `cd py/`
7. You may also need to download or install python's `gmqtt` and `miniconf` 7. You may also need to download or install python's `gmqtt` and `miniconf`:
```shell
python -m venv env
source env/bin/activate.fish
pip install git+https://github.com/quartiq/miniconf#subdirectory=py/miniconf-mqtt
```
8. Enable channels: `python -m booster --broker 192.168.1.123 --prefix dt/sinara/booster/xx-xx-xx-xx-xx-xx --channel N tune=0.1` 8. Enable channels: `python -m booster --broker 192.168.1.123 --prefix dt/sinara/booster/xx-xx-xx-xx-xx-xx --channel N tune=0.1`
9. Using [booster_template](../extra/booster_template.ods) fill in `y0`, `y1`, `m`, `c`, values using instructions below 9. Using [booster_template](../extra/booster_template.ods) fill in `y0`, `y1`, `m`, `c`, values using instructions below
10. Update settings with the adjusted values 10. Update settings with the adjusted values