From 076dad674515497766ead548bc3f6f632b20204e Mon Sep 17 00:00:00 2001 From: Your Name Date: Wed, 27 May 2026 21:16:38 +0300 Subject: [PATCH] Fixed README for programming --- README.md | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 18d3dad..71478aa 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # Octopus Flex PCB (SulaJalmari) -An nRF52840-based desk toy where art and engineering collide. +An nRF52840-based desk toy where art and engineering collide. + ## Table of Contents @@ -68,27 +69,31 @@ For broader accessibility, the Adafruit nRF52 library and bootloader was modifie ### Development Prerequisites -If you want to build custom Zephyr firmware, you need the **nRF Connect SDK**, the `Board` folder from this repository, and your `prj.conf` file. The easiest way to start is by installing the **nRF Connect for VS Code** extension. The current project is verified to work with SDK version **2.6.1**. +If you want to build custom Zephyr firmware, you need the **nRF Connect SDK**, the [boards](Firmware/boards) folder from this repository. The easiest way to start is by installing the **nRF Connect for VS Code** extension. The current project is verified to work with SDK version **4.4.0**. -### Building the Firmware -If you are modifying the code, ensure your `prj.conf` contains the following line so Zephyr generates the signed hex file required by the bootloader: +See [README.md](Firmware/main_app/README.md) for more info on building the main_app. + +### Notes on building +If you are creating your own code, ensure your `prj.conf` contains the following line so Zephyr generates the signed hex file required by the bootloader: ```text CONFIG_BOOTLOADER_MCUBOOT=y ``` -You must also ensure a `child_image` folder exists in your project with an `mcuboot.conf` file containing: +Optionally specify a signature key file: ```text -CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x12000 +CONFIG_MCUBOOT_SIGNATURE_KEY_FILE="key.pem" ``` -Running a Build via the VS Code extension will generate the required file at: `main_project/build/zephyr/zephyr.signed.hex`. +Optionally to build MCUboot WITH you app you need to have `sysbuild` directory with `mcuboot.conf`. Look at [mcuboot.conf](Firmware/main_app/sysbuild/mcuboot.conf) for example. You also need `sysbuild.conf` in you project root. [sysbuild.conf](Firmware/main_app/sysbuild.conf) for example. + +To build the project via CLI, see [BUILD.md](Firmware/main_app/BUILD.md). ### Flashing via USB 1. Open **nRF Connect for Desktop** and launch the **Programmer** app. 2. Click **SELECT DEVICE** in the top left and choose the **MCUBOOT** USB device. -3. Drag and drop your `app_signed.hex` file into the "File Memory Layout" section. +3. Drag and drop your `zephyr.signed.hex` file into the "File Memory Layout" section. 4. Click **Write**. 5. The device is successfully flashed when the memory field turns green.