diff --git a/docs/hardware-support/boards/arduino-nano-33-ble.rst b/docs/hardware-support/boards/arduino-nano-33-ble.rst index 18ca9a2b2a075a29c591200d385fa3a628f99199..3318c487d6ab67d9fc5e3a68b00db4867b0d2163 100644 --- a/docs/hardware-support/boards/arduino-nano-33-ble.rst +++ b/docs/hardware-support/boards/arduino-nano-33-ble.rst @@ -72,58 +72,62 @@ sample application, *blinky*. In order to do so issue the following: 3. After the build completes, the ``zephyr-philosophers.bin`` and the ``zephyr-blinky.bin`` file can be found in ``build-ohos-zephyr/tmp-newlib/deploy/images/arduino-nano-33-ble/``. - Flashing an application ======================= - -How to flash ------------- - -All Scenarios OS currently supports only the pyOCD and dfu flashing method. -Hence bossac tool is used for flashing Arduino Nano 33 BLE. +Install bossac tool required to flash Arduino Nano 33 BLE. .. note:: - This board requires the Arduino variant of bossac. You will not be able to - flash with the bossac included with the zephyr-sdk or using shumatech’s + You will not be able to flash with the bossac included with the zephyr-sdk or using shumatech’s mainline build. - You can get this variant of bossac in one of two ways: - 1. Building the binary from the Arduino source tree. +Installing bossac +----------------- - 2. Downloading the Arduino IDE: +You can install the Arduino variant of bossac in one of two ways: - * Install the board support package within the IDE. - * Change your IDE preferences to provide verbose logging. - * Build and flash a sample application and read the logs to figure out - where Arduino stored bossac. +**Option 1:** Build the binary from the Arduino source tree. -1. Connect the board via USB and find the port connected to the the board via - dmesg. It would be ``/dev/ttyACMx``. +**Option 2:** Download the Arduino IDE: + 1. Install the board support package within the IDE. + 2. Change your IDE preferences to provide verbose logging. + 3. Build and flash a sample application and read the logs to figure out + where Arduino stored bossac. + +After successful installation, add the bossac installed path to the PATH +variable. It is important for the bitbake to find the correct bossac installed path +to flash. + +.. code-block:: console + + $ export PATH=<bossac_path>:$PATH + +How to flash +------------ -2. Enable the permissions for board connected port: +1. Enable the permissions for board connected port: .. code-block:: console $ sudo usermod -a -G dialout `whoami` $ sudo chmod a+rw /dev/ttyACM0 -3. Pass the following arguments to bossac which is identified from the preceding step: +2. To flash the image, execute the command used to build the image with + -c flash_usb appended. For example, to flash the already built + zephyr-philosophers image, execute: .. code-block:: console - $ bossac -p /dev/ttyACM0 -R -e -w -v -b <path to bin folder>/zephyr-philosophers.bin + $ MACHINE=arduino-nano-33-ble bitbake zephyr-philosophers -c flash_usb -4. Due to limitation, once flashed USB CDC does not work as expected and thus - board gets disconnected via USB. Connect the board via USB-TTL cable for the - serial console as shown: +3. Connect the board via USB-TTL cable for the serial console. .. image:: assets/serial-connect.jpg :width: 600 -5. Once connected, locate the board connected port via dmesg. It would +4. Once connected, locate the board connected port via dmesg. It would be ``/dev/ttyUSBx``. -6. Run your favorite terminal program to listen for output. +5. Run your favorite terminal program to listen for output. .. code-block:: console @@ -136,7 +140,7 @@ Hence bossac tool is used for flashing Arduino Nano 33 BLE. * Parity: None * Stop bits: 1 -7. Firmware output can be viewed in minicom with: +6. Firmware output can be viewed in minicom with: ::