Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The freq_sweep_rx_simple and freq_sweep_tx_simple programs both use the scum_freq_sweep_examples branch of this repository, so make sure to swap to that branch if you are using those examples.

  • Install Anaconda.

  • Make sure conda --version shows the Anaconda version properly (otherwise, add conda to path environment variable if not $PATH).

  • Create python2 a Python2.7 conda environment: conda create -n py2 <environment name> python=2.7. The environment name can be openmote or py2.

  • Activate the Python2.7 conda environment: conda activate py2<environment name>.

  • Install the scons, pyserial, intelhex, and colorama Python packages: pip install scons

  • Install pyserial: pip install pyserial

  • Install intelhex: pip install intelhex

  • Install ARM GNU toolchain (pyserial intelhex colorama. Alternatively, you can install them with conda: conda install scons pyserial colorama && conda install -c conda-forge intelhex.

  • Install the ARM GNU toolchain.

    • On Windows, gcc-arm-11.2-2022.02-mingw-w64-i686-arm-none-eabi.exe will work. Using a newer version of the ARM GNU toolchain (e.g., 12.3rel1) will not work and will cause flashing the OpenMote to fail with the error message Target returned: 0x43, Invalid address.

    • On Mac, I had to use ARM GNU toolchain 10.3 for compilation to work. When I used ARM GNU toolchain 11.2, an illegal instruction error showed up during compilation (see https://github.com/raspberrypi/pico-sdk/issues/903), and when I used ARM GNU toolchain 11.3rel1, the binary size was 2.6 MB in size. Flashing a large binary onto the OpenMote will cause an error with the message Target returned: 0x43, Invalid address.

    • After installing the toolchain, add the path, e.g., on Windows, add C:\Program Files (x86)\Arm GNU Toolchain arm-none-eabi\11.2 2022.02\bin to $PATH. On Mac, add export PATH="/Applications/ARM/bin:$PATH" to ~/.bashrc or ~/.zshrc .

    • Make sure that arm-none-eabi-gcc -v shows the ARM GNU toolchain version properly

    (add bin folder of the toolchain to path environment variable if not)To bootload
    • .

  • Bootload a program onto OpenMote (here showing using openwsn-fw/projects/common/bsp_radio_txrx as an example): scons board=openmote-b-24ghz toolchain=armgcc bootload=<OPENMOTE_PORT> bsp_radio_txrx.

    • Two ports will appear for the OpenMote. Use the one with the higher number in the command above.

    • On Windows, I experienced ERROR: Timeout waiting for ACK/NACK after 'Synch (0x55 0x55)' . This was resolved by going into the device manager and locating the COM ports for both devices and changing the baud rates to 115200 for both COM ports associated with the OpenMote (two COM ports appeared when plugging in the device).

...