🤔 Curious about the Notecard? Want to learn more about Blues Wireless? Join us at Getting Started with the Notecard on July 14th!

Search
Documentation Results
End of results
Community Results
End of results
Support
Blues.io
Notehub.io
Shop
Sign In
Search
Documentation Results
End of results
Community Results
End of results
Support
Blues.io
Notehub.io
Shop
×
HomeNotecardNotecard API ReferenceNotecard Guides
Notecard Firmware UpdatesFirmware ReleasesOTA DFU with NotehubManual DFU
Notecard Walkthrough
Overview
Notecard Requests & Responses
JSON Fundamentals
Notecard Interfaces
Essential Requests
Time & Location Requests
Inbound Requests & Shared Data
Web Transactions
Low Power Design
Low Bandwidth Design
Host Firmware Update Requests
Advanced Notecard Configuration
Notecard Error and Status Codes
Rate this page  
  • ★
    ★
  • ★
    ★
  • ★
    ★
  • ★
    ★
  • ★
    ★

Notecard Firmware Updates

Blues Wireless regularly provides updated firmware releases for the Notecard that include feature additions and other improvements.

  • Browse Firmware Releases
  • Instructions for OTA DFU with Notehub
  • Instructions for Manual DFU

Firmware Releases

LTS v2.3.1 (June 14, 2022)

Firmware: notecard-2.3.1.2014013.bin and checksums

  1. Added additional programatically testable error codes to JSON responses.
  2. Support for open SSIDs on the Wi-Fi Notecard.
  3. Enhancements to long term robustness for always-on devices.
  4. Miscellaneous enhancements for DFU timeouts, card.motion.mode sensitivity settings, GPS location updates.

v3.3.1 (May 23rd, 2022)

Firmware: notecard-3.3.1.14612.bin and checksums

  1. Autonomous reporting of GPIO state with card.aux. See Using AUX GPIO Mode for more information.
  2. Addition of usb, gps, wifi, and cell to the response object of card.status which indicates the associated component is powered on.
  3. Adding unsigned types of uint8, uint16, uint24, and uint32, to Note templates.
  4. The card.motion.mode API's sensitivity settings have been updated to use 25Hz sampling, providing improved performance.
  5. The "best location" in Notehub will remain the most recent GPS location, as long as the device has not moved and an adequate GPS signal is established (instead of reverting to cell tower location after 72 hours of no GPS activity).
  6. In tracking applications, daily charging minutes added to _track.qo Note template.
  7. The card.wireless API is now supported on Wi-Fi Notecard.
  8. Wi-Fi Notecard error messages improved when there are Wi-Fi connection failures.
  9. Addition of the _restart_no_activity_hours reserved environment variable.
  10. Miscellaneous other minor improvements and fixes.

LTS v2.2.1 (March 1, 2022)

Firmware: notecard-2.2.1.2013856.bin and checksums

  1. Send Wi-Fi usage data to Notehub in session data.
  2. Add Wi-Fi usage data to card.version.
  3. Light red LED to register SoftAP button push, and when in SoftAP mode.

v3.2.1 (February 2, 2022)

Firmware: notecard-3.2.1.13982.bin and checksums

  1. note.template payloads and strings can now be variable-length.
  2. Added verify:true to note.template to return the current template on a Notefile.
  3. web.post now supports payload fragmentation and reassembly at Notehub.
  4. card.attn adds verify:true to show the current attention mode configuration.
  5. card.attn adds mode: disarm,-all to clear all monitored conditions.
  6. AUX UART baud rate is now configurable via a card.aux request.
  7. Added GPS HDOP to card.location response in status and threshold fields.
  8. Major rewrite of JSON marshalling/unmarshalling logic to reduce runtime memory needed and allow the Notecard to sync a much larger number of non-templated Notes.
  9. Miscellaneous sync and power management improvements and minor fixes.

LTS v2.1.1 (November 15, 2021)

Firmware: notecard-2.1.1.bin and checksums

  1. First Long Term Support (LTS) version. For additional details and our LTS policy see this blog post .
  2. Added support for local-only Database Notefiles via a .dbx extension. These Notefiles reside on the Notecard and do not sync to Notehub.io.
  3. Miscellaneous fixes for DFU updates, Notehub connection management, and penalty box behavior.

v1.5.6 (October 8, 2021)

Firmware: notecard-1.5.6.13807.bin and checksums

  1. Added the web.delete API.
  2. Added seconds as an optional parameter on all web requests as an override to the standard 90 second timeout.
  3. Support for bidirectional Notehub.io certificate verification during TLS authentication.
  4. A random, unique, Note ID can be created and returned on a note.add if the supplied Note ID is "?".
  5. file.stats now takes an optional "file" parameter that returns the stats for the specified Notefile only.
  6. note.add, note.update, and note.delete all accept the verify:true parameter to immediately save the Notefile change to flash.
  7. dfu.status adds an err string property. If used along with "stop":true, this sets the host DFU to an error state with the specified string.

v1.5.5 (May 27, 2021)

Firmware: notecard-1.5.5.13080.bin and checksums

  1. Enhancements to support Notecard-related features in the Airnote product.
  2. Added support for end-to-end encryption of Notes through Notehub.
  3. Add GNSS Horizontal dilution of precision (HDOP) support, including waiting for location to converge to configured HDOP before recording _track.qo notes, and adding the HDOP to the _track.qo body.
  4. If sync:true is specified in card.location.track, an immediate sync occurs every time a track note is added.
  5. card.version now accepts a field api: major-version that defines, for compatibility purposes, the major version number of the notecard firmware that the host was developed to use. In the response, the api returns the current firmware’s version number.
  6. Added _tri_gps_failure environment variable as a triangulation configuration option for Notecard to first try GPS, then fallback to using cellular triangulation if it is unable to make a GPS fix.
  7. Fix to improve the accuracy of card.voltage readings.
  8. Corrected behavior of heartbeat reporting in card.location.track.
  9. Miscellaneous bug fixes and improvements to MCU/SBC host reliability, continuous mode operation, and external SIM support.

v1.5.3 (February 24, 2021)

Firmware: notecard-1.5.3.12460.bin and checksums

  1. Notecard I2C request/response reliability improved when the I2C bus is shared among multiple devices.
  2. Added rearm and wireless modes to card.attn.
  3. Implemented minutes as a new response to card.location.mode to return the currently-configured ring-fence debounce period.
  4. To allow for long-range enclosed transportation use cases, Implemented an enhancement to suppress motion-induced Notecard wake up when repeated network connectivity failures occur.
  5. Added a warning to _health.qo if battery voltage is low or dead, at most once per day.
  6. Implemented a card.random function to obtain a single or buffer full of random numbers from the Notecard hardware RNG.
  7. Miscellaneous bug fixes and reliability improvements for devices communicating over I2C and those running in continuous communications mode.

Firmware Checksums

md5

b1bebc3c08001bce9f99a02a7b992ba5  notecard-2.3.1.2014013.bin
e4a30632d42784c347f09aaf3825737d  notecard-3.3.1.14612.bin
f1c207f897ac1a44a6f1f784c7353863  notecard-2.2.1.2013856.bin
866098e724c5aef221d19fdf0356f538  notecard-3.2.1.13982.bin
653d3045e3ab369a4641132c71bf9cef  notecard-2.1.1.bin
1d71d3c46b2e5259d5adaacd54d56d5b  notecard-1.5.6.13807.bin
1294df922c7394d80bc393984f4b4fc5  notecard-1.5.5.13080.bin
70cb6cba92840cfc90dfa1dc19aba917  notecard-1.5.3.12460.bin

sha256

3d65ac74b8c30cb18d661339356042d1108ace2b177b532ee02114729dfa8456  notecard-2.3.1.2014013.bin
8a58324e4d2a4b04b69a60fe101687f51354e6dcc1037fda33e15abb8a21129c  notecard-3.3.1.14612.bin
1bc71770ac49d61d42ec80f9fc41928e81a7aa40083dcb34c3cd62f99b25641b  notecard-2.2.1.2013856.bin
3a1ef9c6ebe45501ca26b425569ed469cc2636807ef1a39c780f3657e803cdf1  notecard-3.2.1.13982.bin
bea9ad4e9e47fdc4114c5f20f55e06dbbe20520f69eb0b6b6a71566e2c9fbfc4  notecard-2.1.1.bin
007c2f89c85b032f48e6d5577a40e1c47e8230103418404c98e3b62770eb0957  notecard-1.5.6.13807.bin
2ff6dbdf5fd748aa20133a11d7a79f35cda6024df524e5aa9a10b9eaa748f640  notecard-1.5.5.13080.bin
7b1cae26abe87881518796d31a8afab8f973561aa76a2c8407ca45674e4cdf46  notecard-1.5.3.12460.bin

OTA DFU with Notehub

The simplest way to update the firmware on your Notecard device is to perform an over-the-air DFU with Notehub.io. For instructions on how to update your Notecard firmware with Notehub.io, please visit the Manage Notecard Firmware guide.

note

Please be aware that OTA DFU updates use data in your data plan.

Manual DFU

While we recommend the use of Notehub.io to update device firmware, you can manually update by directly connecting to a Notecard over USB.

Prerequisites

  • Serial terminal emulator software (e.g. our In-Browser Terminal, CoolTerm , or TinyTerm ).
  • STM32CubeProgrammer (download the appropriate version for your OS).
  • A fresh Notecard binary file (download from the Firmware Releases list above).

STM32CubeProgrammer Installation Notes

STM32CubeProgrammer is a bit finicky when it comes to installation:

Windows

note

If you're on a version of Windows older than Windows 10, you'll first need to install the STM32 Virtual COM Port Driver .

Download and extract the zip package and run the installer (ignoring the security issues from Windows).

Mac

Download and extract the zip package (noting that the version number of 2.8.0 used in these instructions will likely change in the future).

Using your terminal app of choice, navigate to the extracted directory and launch the installer in CLI mode. For example:

>
./SetupSTM32CubeProgrammer-2.8.0.app/Contents/MacOs/SetupSTM32CubeProgrammer-2_8_0_macos

Linux

Prior to installation, make sure you have the following packages installed:

  • libusb-1.0-0-dev
  • unzip

If you are using a USB port to connect to the STM32 device, install the libusb1.0 package by typing the following command:

>
sudo apt-get install libusb-1.0.0-dev
note

Please note libusb1.0.12 version or higher is required to run STM32CubeProgrammer.

Extract the zip package downloaded earlier from ST , and execute it. Note the version number may change.

$
unzip en.stm32cubeprg-lin_v2-9-0_v2.9.0 &&
  cd en.stm32cubeprg-lin_v2-9-0_v2.9.0 &&
  ./SetupSTM32CubeProgrammer-2.9.0.linux

Copy the rules files into /etc/udev/rules.d/. This is needed use ST-LINK probe or USB DFU.

$
sudo cp ~/STMicroelectronics/STM32Cube/STM32CubeProgrammer/Drivers/rules/* /etc/udev/rules.d

Firmware Update Process

Connect your Notecard device to your computer via USB. Verify that your terminal emulator (e.g. dev.blues.io, CoolTerm, or TinyTerm) is able to connect to the device by sending the card.version request:

>
{"req": "card.version"}

The body of the response should look similar to this:

{
 "org": "Blues Wireless",
 "product": "Notecard",
 "version": "notecard-1.5.5",
 "ver_major": 1,
 "ver_minor": 5,
 "ver_patch": 5,
 "ver_build": 13080,
 "built": "May 28 2021 17:11:58"
}

Important: Next, launch the built-in bootloader firmware by sending the bootloader command via your terminal emulator:

>
bootloader
note

In Windows Device Manager, this causes Notecard to disappear as a "Ports (COM LPT)/USB Serial Device (VID 0x30A4, PID 0x0001)" and to reappear as a "Universal Serial Bus devices/STM32 BOOTLOADER (VID 0x0438, PID 0xDF11)".

Now, you have two choices as to how to proceed. You may update the Notecard firmware via the STM32CubeProgrammer CLI or GUI (we find the GUI method to be preferable).

CLI Method

Make sure STM32_Programmer_CLI.exe is in your PATH (or provide its absolute path in the command below). The program should have been installed in the same directory as STM32CubeProgrammer.exe.

Run the following command, substituting the path to your desired .bin firmware file:

$
STM32_Programmer_CLI --connect port=USB1 --write [path/to/binary.bin] 0x08000000 --verify --go 0x08000000
note
  • On Windows be sure to reference STM32_Programmer_CLI.exe as the executable in the above command.

  • On Linux it's probably installed here: ~/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin/STM32_Programmer_CLI

GUI Method

Open the STM32CubeProgrammer application.

Select "USB" from the dropdown menu provided in the upper-right corner:

connecting to device over usb

Select the port corresponding to your Notecard in the "Port" dropdown menu (likely "USB1"). You may need to click the button next to the port dropdown to refresh the list.

Click the "Connect" button and the log should update and display Data read successfully.

Next, access the "Erasing & Programming" screen by clicking the menu button with the arrow pointing down:

erasing and programming firmware

Follow the other configuration options in the image above:

  • Select the appropriate firmware .bin file.
  • Check the "Verify programming" box.
  • Check the "Run after programming" box.
  • Finally, click the "Start Programming" button.

After a few seconds of commands displayed in the log, you should see multiple dialog warnings/notifications to click through and confirm.

Results

With either the CLI or GUI method, once the update process is complete, your Notecard will reset and reconnect. You can verify the firmware process was successful by executing another card.version request and inspecting the version parameter:

>
{"req": "card.version"}

Additional Resources

  • Manage Notecard Firmware
  • Host Firmware Update Requests
Can we improve this page? Send us feedbackRate this page
  • ★
    ★
  • ★
    ★
  • ★
    ★
  • ★
    ★
  • ★
    ★
© 2022 Blues Inc.Terms & ConditionsPrivacy
blues.ioTwitterLinkedInGitHubHackster.io
Disconnected
Serial Disconnected
Having trouble connecting?

Try changing your Micro USB cable as some cables do not support transferring data. If that does not solve your problem, contact us at support@blues.com and we will get you set up with another tool to communicate with the Notecard.

Advanced Usage

The help command gives more info.

Connect a NotecardClick 'Connect' and select a USB-connected Notecard to start issuing requests from the browser.