Difference between revisions of "radino40 DW1000"

From InCircuit
Jump to: navigation, search
(radino40 DW1000 SDK)
(Hardware)
 
Line 16: Line 16:
 
**Supports 6 RF bands from 3.5 GHz to 6.5 GHz<br>
 
**Supports 6 RF bands from 3.5 GHz to 6.5 GHz<br>
 
**Data rates of 110 kbps, 850 kbps, 6.8 Mbps<br>
 
**Data rates of 110 kbps, 850 kbps, 6.8 Mbps<br>
*nRF521840 by Nordic Semiconductors<br>
+
*nRF52840 by Nordic Semiconductors<br>
 
**32-bit ARM® Cortex®-M4 CPU with FPU, 64 MHz<br>
 
**32-bit ARM® Cortex®-M4 CPU with FPU, 64 MHz<br>
 
**1 Mbyte Flash, 256 kbyte RAM<br>
 
**1 Mbyte Flash, 256 kbyte RAM<br>

Latest revision as of 12:50, 17 February 2022

Contents

[edit] Hardware

radino40 DW1000 radino40 DW1000


The In-Circuit radino40 DW1000 combines Nordic Semiconductor 's nRF52840 microcontroller and Decawave's DW1000 UWB radio chip in a small form-factor EMC-compliant module.
The DW1000 is a fully integrated single chip Ultra Wideband (UWB) low-power low-cost transceiver IC compliant to IEEE802.15.4-2011.
It can be used in 2-way ranging or TDOA location systems to locate assets to a precision of 10 cm. It supports data transfer at rates up to 6.8 Mbps.
The Nordic Semiconductor's nRF52840 with 32-bit ARM® Cortex®-M4 CPU mit FPU, 64 MHz Clock, 1Mb flash, 256 MB RAM offers great performance and Bluetooth 5 functionality. The radino40 modules are pin-to-pin compatible.
With its powerful processor, the DW1000 UWB-chip and its small size, the radino40 DW1000 is the perfect base for RTLS-systems

Features:

  • UWB Transeiver DW1000 by Decawave
    • IEEE802.15.4-2011 UWB compliant
    • Supports 6 RF bands from 3.5 GHz to 6.5 GHz
    • Data rates of 110 kbps, 850 kbps, 6.8 Mbps
  • nRF52840 by Nordic Semiconductors
    • 32-bit ARM® Cortex®-M4 CPU with FPU, 64 MHz
    • 1 Mbyte Flash, 256 kbyte RAM
    • Dynamic multiprotocol-transceiver:
      • Bluetooth 5 / Bluetooth Low Energy
      • IEEE 802.15.4/Thread
      • ANT/ANT+
      • Proprietary 2,4 GHz
    • 4x4 channel pwm unit with EasyDMA
    • 12 bit 200 ksps ADC
    • 5x 32 bit timer with counter mode
    • USB 2.0, I²C, QSPI, SPI, UART, NFC-A
    • Qadrature decoder (QDEC)
    • 3x RTC
  • 37 GPIOs

[edit] Suitable application development boards

Board Pictures Description
radino40 DW1000 USB-Stick radino40 dw1000 USB Stick enclosed 45 1000.jpg
radino40 dw1000 USB Stick 45 1000.jpg
USB-Stick with UWB-antenna, Bluetooth®-antenna, USB-A plug and 6-Pin TC2030 CTX Plug-of-NailsTM SWD connector for programming and debugging
radino40 DW1000 Breakout radino40 WD1000 Breakout 45 1000.jpg application development board with 3.3V voltage regulator, USB micro connector, 6-Pin TC2030 TCX Plug-of-NailsTM SWD connector for programming and debugging, BMI160 low power IMU, LiPo/Li-Ion charger, 2 push buttons, 3 LEDs, UWB- and Bluetooth®- antenna.

[edit] Software

[edit] Setup toolchain (Windows PC)

[edit] Cygwin setup

On Windows PC the use of cygwin console is recommended. The following steps describe how to setup cygwin for radino40 DW1000 projects.

  1. Download latest cygwin
  2. Install cygwin
    • Enable the following additional packages within cygwin installation:
      • make (located at devel->make)
      • bash-completion (located at shells->bash-completion)
    • Optional recommended packages:
      • chere (located at shells)
    • Configure chere to get context menu option Bash Prompt Here
      • Run cygwin as Administrator
      • Run the following command to configure chere:
        $ chere -i -t mintty -s bash

[edit] Driver setup

  1. Download radino40 DW1000 Bootloader driver
  2. Run nrfconnect-driver-installer.exe to install driver

[edit] radino40 DW1000 SDK

[edit] Installation

  1. Download latest radino40 DW1000 SDK
  2. extract radino40 DW1000 SDK
    • it is recommended to extract the radino40 DW1000 SDK in a short path

[edit] Compile & Upload Examples

  1. software examples are located within the directory ic-bootloadable-examples, e.g.:
    • blinky_delay
    • dw1000_ping_pong_distcalc
    • ...
  2. each software example contains hardware specific subfolders, e.g.:
    • hardware_breakout
      • for 901.550 radino40 Breakout Board
    • hardware_quad_tag
    • hardware_usb_stick
    • ...
  3. example: compile example blinky_delay for specific hardware hardware_breakout
    1. open cygwin
    2. navigate to radino40DW1000SDK\ic-bootloadables-examples\blinky_delay\hardware_breakout
      $ cd radino40DW1000SDK\ic-bootloadables-examples\blinky_delay\hardware_breakout
    3. compile firmware
      $ make clean && make -j 16
    4. generate dfu image for bootloader upload
      $ make dfu_generate
  4. determine bootloader COM port
    1. connect radino40 DW1000 breakout board via USB to PC
    2. open device manager
      • e.g. Windows 10: press Windows+X and select device manager
    3. press RST-button on radino40 Breakout Board to start bootloader
    4. the bootloader should be listed in the device manager as
      nRF52 SDFU USB (COM3)
      • (the COM port number can be different)
  5. upload firmware using the COM port number
    $ make dfu_load NRF_UTIL_COM=COM3
    1. wait 3-4 seconds
    2. press RST-button on radino40 Breakout Board to start bootloader
    3. if upload was successfull the following message will appear:
      Device programmed.

[edit] Devices with CP210x USB

  • not all hardware have the USB line connected to the USB plug. For these you need a different tool to update the firmware.
  • latest version of the updater tool
  • update
  1. follow the steps above up to step 3
  2. unpack the .zip file and start the updater tool
  3. set the update files in the tool to the unpacked ones and set the right hardware and target serial number
    • this part of the bootloading has checks implemented for
      1. device serial number
      2. hardware version (an empty string will ignore this check)
      3. current software version
      4. new software version
  4. tool: connect to your device
  5. tool: prepate the packets
  6. press RST-button on the device
  7. tool: start update process

[edit] Firmware-Update via USB Bootloader

NOTE: The following section is NOT relevant when using the radino40 DW1000 SDK.

[edit] Required Software

The radino40 DW1000 is shipped programmed with a usb bootloader which can be used to upload new firmware.

The USB driver needs to be installed, it can be downloaded here

Also the nrf_util tool has to be downloaded from here (additional information regarding this tool can be found on nordicsemi.com or github.com)

The compiled firmware binaries are delivered within a compressed zip file dfu_container.zip.


[edit] Starting the bootloader

Enable the bootloader on the radino40 DW1000 via low on the reset pin, e.g. by pressing the RESET-Button. The radino40 DW1000 stays in bootloader mode for 2 seconds. After that the Firmware is running.

The bootloader will be recognized as a serial COM-Port, e.g. COM4.


[edit] Upload firmware with nrfutil

On a windows PC open a Command window (cmd.exe) and navigate to the folder that contains the firmware file dfu_container.zip.

Replace COM4 with the COM-Port that your PC assigned to your device.

command to flash:

nrfutil dfu usb-serial -pkg <dfu_container.zip> -p <COM Port: COM4> -b 115200

example:

nrfutil dfu usb-serial -pkg dfu_container.zip -p COM4 -b 115200

Start the nrfutil. The nrfutil now waits up to 10 seconds for the radino40 DW1000 to enter the bootloader.
If the nrfutil exits successful the radino40 DW1000 is programmed.

[edit] Downloads

Personal tools