diff --git a/INSTALL.md b/INSTALL.md new file mode 100644 index 0000000000000000000000000000000000000000..7d678a0af873a48f8853bc4d10cc639ba33480de --- /dev/null +++ b/INSTALL.md @@ -0,0 +1,22 @@ +# Installing the motor controller + +## STM32 + +You must install the appropriate Rust target and tools: + +```shell +$ rustup target install thumbv7m-none-eabi +$ cargo install probe-rs-tools +``` + +Then flash the executable using + +```shell +$ cargo run --release -p dc-motor-driver-hat +``` + +## Raspberry Pi + +On the Raspberry Pi, ensure that `boot/config.txt` contains the line `dtparam=i2c_arm=on,i2c_arm_baudrate=400000`. It is important not to let the default 100kHz speed which causes some bit flipping because of a hardware bug in the BCM2712 SOC with regard to clock stretching. + +The Python module is located in `controller/python/controller.py`. diff --git a/INSTALL.org b/INSTALL.org deleted file mode 100644 index b1bdd1d23275b4b90410c0f7e0f63632e2bbef25..0000000000000000000000000000000000000000 --- a/INSTALL.org +++ /dev/null @@ -1,13 +0,0 @@ -#+TITLE: Installing the motor controller - -* STM32 - -You must install the appropriate target: =rustup target install thumbv7m-none-eabi=. - -Execute =cargo build --release -p dc-motor-driver-hat=. The flashable executable will be in =target/thumbv7m-none-eabi/release/dc-motor-driver-hat=. - -* Raspberry Pi - -On the Raspberry Pi, ensure that =boot/config.txt= contains the line ~dtparam=i2c_arm=on,i2c_arm_baudrate=400000~. It is important not to let the default =100kHz= speed which causes some bit flipping. - -The Python module is located in =controller/python/controller.py=.