diff --git a/Building.md b/Building.md new file mode 100644 index 0000000..addaf56 --- /dev/null +++ b/Building.md @@ -0,0 +1,44 @@ +# Building the firmware + +To build this ts100 firmware, there are quite a few different means to build this firmware + +## Using arm compilers under Linux/Mac/WSL + +1. Download and install the arm compilers (currently `gcc-arm-none-eabi-9-2019-q4-major`) +2. Install the arm compilers as appropriate +3. In a terminal change to the `./workspace/TS100` folder +4. run `./build.sh` to build all of the firmwares +5. Alternatively run `make` with arguments to pick your device / language + +## Using docker + +If your machine has docker installed, you can use the `build.sh` script in the root of this repo to create a docker image, build the firmware, and output all the files in the `ci/artifacts` folder + +### Dev + +If you use the `./start_dev.sh` script, it will instead load you into the docker image, which is useful if you plan to run many builds to test ideas and dont want to wait for the spin up/down of the docker image. +## Using STMCubeIDE + +If you have STMCubeIDE installed on your machine, you can use it as an IDE and build environment. Note it will use its own compilers and as such will not be reproducible builds compared to the ones uses here. + +1. Open STMCubeIDE +2. Set the workspace path to `./workspace` in this repo if you want +3. Close the welcome page +4. In the left hand menu, right click +5. Select Import -> General -> Existing projects into workspace +6. In the top directory option, select the `./workspace` folder +7. Only tick the `TS100` Option +8. The firmware should now be loaded and you can right click -> build on it in the left menu + +## Using Atollic + +If you have Atollic installed on your machine, you can use it as an IDE and build environment. Note it will use its own compilers and as such will not be reproducible builds compared to the ones uses here. + +1. Open Atollic +2. Set the workspace path to `./workspace` in this repo if you want +3. Close the welcome page +4. In the left hand menu, right click +5. Select Import -> General -> Existing projects into workspace +6. In the top directory option, select the `./workspace` folder +7. Only tick the `TS100A` Option +8. The firmware should now be loaded and you can right click -> build on it in the left menu \ No newline at end of file