Hardware and Software Setup Flashing Canvas firmware to BT610 with default firmware Our latest Canvas device management firmware is open source and available on our Github. The following guide contains instructions for how to flash the BT610 from its default firmware to Canvas DM enabled firmware. If you would like your device to utilize the Canvas DM web UI (based on EdgeIQ) please visit us at https://www.ezurio.com/contact. Requirements USB-SWD 453-00062-K1 https://www.ezurio.com/wireless-modules/programming-kits/usb-swd-programming-kit A PC workstation with Python installed BT610 IoT Sensor https://www.ezurio.com/iot-devices/bluetooth-iot-devices/sentrius-bt610-io-sensor A 3.3V FTDI USB to UART adapter to connect with the BT610 UART. https://ftdichip.com/products/c232hd-ddhsp-0/ Hardware Configuration Remove the 4 screws from the reverse of the BT610. Remove the housing lid and place the screws in the lid for safe keeping. Remove the BT610 battery prior to the following steps. Connect the provided 10 pin SWD cable to the BT610 programming connector (A) as shown below. Note: Incorrect orientation of the cable may damage the BT610 or USB-SWD Programmer. The red band of the SWD cable should align with pin 1 as indicated above. Connect the opposite end of the 10 pin SWD cable to the USB-SWD Programmer ARM Debug connector (B) as shown below. Note: Incorrect orientation of the cable may damage the BT610 or USB-SWD Programmer. The red band of the SWD cable should align with pin 1 as indicated above. Set “sense supply” switch to “out”, and tty voltage switch to “1.8v”. The BT610 battery can now be reinserted. Software Configuration Download our latest firmware (at the time of this writing, v1.0.2): https://github.com/CanvasDM/bt610_firmware_manifest/releases/ Download the release zip file. Extract the .zip file on your workstation, locate the file with name ending in “_full_image.hex” Install pyocd: https://pyocd.io/docs/installing.html Flashing Firmware With pyocd and the firmware installed on your workstation, open a terminal and execute the following command: pyocd flash <path_to_hex> -e chip -t nrf52840 for example: pyocd flash 480-00050-R1.0.2.1677256065_full_image.hex -e chip -t nrf52840 Verify With the flashing process completed, connect to the UART of the BT610 using your prefered terminal emulator. Run the command “attr show” for details of the device’s status. Connectivity to a suitable USB to UART adapter to the BT610 UART (C) is shown below.