Cellular, LoRa, and Wi-Fi: Introducing the Next Generation of Notecards

Blues Developers
What’s New
Resources
Accelerators
Fully documented reference applications
Blog
Technical articles for developers
Community
Community projects and resources
Terminal
Connect to a Notecard in your browser
Blues.ioNotehub.io
Shop
Docs
Button IconHelp
Notehub StatusVisit our ForumContact Support
Button IconSign In
Sign In
Sign In
Docs Home
What’s New
Resources
Accelerators
Fully documented reference applications
Blog
Technical articles for developers
Community
Community projects and resources
Terminal
Connect to a Notecard in your browser
Blues.ioNotehub.io
Shop
Docs
Notecard
Notecard API Reference
Notecard Guides
Notecard Firmware Updates
Firmware ReleasesFirmware Release PoliciesDFU with In-Browser TerminalDFU with Notecard CLIDFU with STM32CubeProgrammerOTA DFU with Notehub
Notecard Walkthrough
Overview
Notecard Product Family
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

Notecard Firmware Updates

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

warning

Make sure you read and understand the Blues Firmware Release Policies and Procedures before updating Notecard firmware.

  • Browse Firmware Releases
  • Blues Firmware Release Policies and Procedures
  • Instructions for DFU with In-Browser Terminal
  • Instructions for DFU with Notecard CLI
  • Instructions for DFU with STM32CubeProgrammer
  • Instructions for OTA DFU with Notehub

Firmware Releases

This section lists all available Notecard firmware releases. The easiest way to install new firmware on the Notecard is by performing OTA DFU updates with Notehub or the In-Browser Terminal, but the .bin files are also provided for manual DFU with the Notecard CLI and STM32CubeProgrammer.

v5.3.1 (September 18th, 2023)

Firmware: notecard-5.3.1.16292$20230917203639.bin and checksums

  1. Adds support for efficient binary data transfer with card.binary.
  2. Adds the ability to validate Notecard responses with a CRC check.
  3. Adds Outboard Firmware Update support to hosts that support MCUboot bootloader.
  4. When USB-connected, adds additional retries before a network registration penalty box is initiated.
  5. Added the _fw_download_always_enabled reserved environment variable to override host behavior and always allow DFU operations.
  6. Added the ability to automatically return to the preferred SIM selection after a user-defined number of hours when using an external SIM and SIM failover.
  7. Reduced the amount of time it takes to perform a Notecard DFU.
  8. Fixes the erroneous return of {io} in response to a corrupted message sent as a command.
  9. Fixes possible contradictory card.location status response when card.location.mode is set to "mode":"off".
  10. Preserves the host DFU metadata in the event of a host restart.
Previous Developer Firmware Releases

v5.1.1 (April 5th, 2023)

Firmware: notecard-5.1.1.16026$20230511152328.bin and checksums

  1. All web requests now offer an async argument. The new argument allows you to send web requests without waiting for a response from Notehub.
  2. The hub.signal request now provides a seconds argument for handling timeouts.
  3. You can now schedule automatic Notecard Outboard Firmware Updates with the _dfu_period environment variable.
  4. The Notecard can now restart hosts in a variety of ways using the _restart_host_use_attn, _restart_host, _restart_host_every_hours, and _restart_host_no_activity_hours environment variables.
  5. The hub.sync.status request now returns machine-readable codes to allow for better tracking of the Notecard's sync process. (You can try this for yourself by running a hub.sync request in the In-Browser Terminal.)
  6. The hub.sync.status request no longer includes time or completed in its response until after the first device sync.
  7. The card.aux request now provides a ms argument you can use to debounce state transitions under a provided duration.
  8. The card.aux.serial request now provides way of notifying a host when the Notecard downloads host firmware.
  9. Wi-Fi configuration is now saved before device reboots.
  10. The Notecard has a new algorithm for voltage averaging to reduce swings due to modem current draws.
  11. A bug is fixed that prevented switching the rate with the card.aux.serial request.
  12. Various download speed improvements to Notecard Outboard Firmware Update.

v3.5.2 (November 2nd, 2022)

Firmware: notecard-3.5.2.15620$20221031190539.bin and checksums

  1. Reduce hub.set continuous mode data usage from ~4KB/hour to ~2.5KB/hour for apps requesting immediate inbound Notefile sync by specifying sync:true.
  2. Improvements to Notecard Outboard Firmware Update and a bug fix for STM32 hosts with inverted boot.

v3.5.1 (October 7th, 2022)

Firmware: notecard-3.5.1.15545$20221118160948.bin and checksums

  1. The card.motion.sync request now allows you to sync on orientation changes (instead of motion changes) by passing a threshold of 0. With this mode enabled, motion events now include a tilt field to show the number of orientation changes since the previous event.
  2. Added the ability to get alerts if USB power is connected or disconnected through the card.voltage request.
  3. The Notecard now automatically triggers a sync when its file system is full.
  4. Added a {wifi-unavailable} error when making a card.wifi request on cellular Notecards.
  5. Added 15 minutes as a minimum session length for Notecards in continuous mode.
  6. Fixed an issue where no-sat tracking notes could inadvertently appear when using external GPS.
  7. Fixed an issue that could cause loss of cmd requests if sent in rapid succession.

v3.4.1 (August 3, 2022)

Firmware: notecard-3.4.1.15128$20220811230306.bin and checksums

  1. Added card.aux.serial to expose various capabilities over the Notecard AUX pins.
  2. Added support for streaming of Notecard accelerometer data.
  3. Enhancements to env.get and env.set to fetch a group of variables, and query variables by modified time.
  4. Added env mode to card.attn to monitor environment variable changes.
  5. Added auxgpio mode to card.attn to monitor AUX GPIO changes.
  6. Added time field to env.modified to query for environment variable changes since a known epoch time.
  7. Added threshold to card.location.mode response when not 0.
  8. Added limit to card.aux to disable concurrent modem use when using an external GPS receiver.
  9. Added on, seconds, and off to hub.set to enable temporary continuous mode when performing web transactions.
  10. Enable GPS/GNSS activation even if Notecard time has not yet been set from a successful cell network connection.
  11. Change GPS/GNSS hdop to float.
  12. Allow GPS/GNSS seek even if the Notecard is in a cellular network penalty box.
  13. Add penalty box errors to status returns for GPS/GNSS and Network connectivity.
  14. Ensure hub.sync.status returns extended service failure errors in response.
  15. Restart continuous mode session if inbound notification is sent to the Notecard.

v3.3.1 (May 23rd, 2022)

Firmware: notecard-3.3.1.14612$20220518212851.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.

v3.2.1 (February 2, 2022)

Firmware: notecard-3.2.1.13982$20220821154627.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.

v1.5.6 (October 8, 2021)

  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)

  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)

  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.

Developer Firmware Checksums

md5

866098e724c5aef221d19fdf0356f538  notecard-3.2.1.13982$20220821154627.bin
e4a30632d42784c347f09aaf3825737d  notecard-3.3.1.14612$20220518212851.bin
fd7318030d4fef21b6e6c4b088ed16ca  notecard-3.4.1.15128$20220811230306.bin
97bc2aeb17dd6c573b47f58335f092cd  notecard-3.5.1.15545$20221118160948.bin
8cf964de13a2d2bbbbb96fb4146f1e24  notecard-3.5.2.15620$20221031190539.bin
a7cd1969876b9ef13c2087b3e9dbb833  notecard-5.1.1.16026$20230511152328.bin
aae84fa07f7afb73b399cad78fc1df0f  notecard-5.3.1.16292$20230917203639.bin

sha256

3a1ef9c6ebe45501ca26b425569ed469cc2636807ef1a39c780f3657e803cdf1  notecard-3.2.1.13982$20220821154627.bin
8a58324e4d2a4b04b69a60fe101687f51354e6dcc1037fda33e15abb8a21129c  notecard-3.3.1.14612$20220518212851.bin
2e9043883e2f57265a18f74e79ad448b8a3d8e4567983011480d06c0a4cbf46f  notecard-3.4.1.15128$20220811230306.bin
6744e0c3f31849944151d08364fb02b2d27187897f0932d6c07cf1c4e1051e5d  notecard-3.5.1.15545$20221118160948.bin
ffbf202264ba7d2b7aa28167cc0722df90fbbed5e3064b0440273729fe13b9a9  notecard-3.5.2.15620$20221031190539.bin
f2247c3bf2890ee051f20bc739494310711d5e778f1ffdc02a92d20e868f7f46  notecard-5.1.1.16026$20230511152328.bin
5dad2ac34dba93e82e73f1b83efbfcd338754c3abdf72f50905c89e951cf021a  notecard-5.3.1.16292$20230917203639.bin

LTS v4.4.1 (May 15, 2023)

Firmware: notecard-4.4.1.4015700$20230505180038.bin and checksums

  1. Fix to preserve dfu.status metadata values after Notecard restarts.
  2. Fix incorrect cellular penalty box data in the card.wireless.penalty and hub.sync.status seconds responses.
Previous LTS Firmware Releases

LTS v4.2.1 (March 3, 2023)

Firmware: notecard-4.2.1.4015688$20230227005219.bin and checksums

  1. Decrease duration of Wi-Fi penalty box if in continuous mode or on USB power.
  2. If hub.set mode changed to "off" while the modem is powering up, modem will quickly and gracefully shut down.
  3. Fix to make hub.set mode:"dfu" idempotent.
  4. Fix to keep the Notecard modem from powering on after a hard reset if mode:"off".
  5. Fix to keep the Notecard online if in continuous mode and OTA DFU has been paused.

LTS v4.1.1 (December 7, 2022)

Firmware: notecard-4.1.1.4015681$20221206134917.bin and checksums

  1. Annual Long Term Support (LTS) release. For additional details and our LTS policy see this section. Includes all features in developer release 3.5.2 as well as the items below.
  2. Service failure retry & penalty box fixes.
  3. Clear files on card.attn when mode is disarm.
  4. Return current serial baud rate in response to a card.aux.serial request.
  5. ATTN Watchdog fixes for computing polling intervals and resets.
  6. Improvements related to JSON array and string handling in Notecard requests.

LTS v2.4.1 (Feb 6, 2023)

Firmware: notecard-2.4.1.2014024$20230127210448.bin and checksums

  1. Enhance card.attn to add -all option and improve watchdog timing.
  2. Show extended service failures in hyb.sync.status requests.
  3. Improve timing accuracy of card.location.track heartbeat events, and prevent spurious heartbeat events if motion has occurred.
  4. Fix to ensure that Wi-Fi signal and SSID always show for card.wireless requests and in _session.qo Notefiles.
  5. Fix to keep the Notecard online when in continuous mode and DFU has been paused.

LTS v2.3.1 (June 14, 2022)

Firmware: notecard-2.3.1.2014013$20220613194620.bin and checksums

  1. Added additional programmatically 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.
  5. Addition of the _restart_no_activity_hours reserved environment variable.

LTS v2.2.1 (March 1, 2022)

Firmware: notecard-2.2.1.2013856$20220219214539.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.

LTS v2.1.1 (November 15, 2021)

Firmware: notecard-2.1.1.2013839$20211117220152.bin and checksums

  1. First Long Term Support (LTS) version. For additional details and our LTS policy see this section.
  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.

LTS Firmware Checksums

md5

653d3045e3ab369a4641132c71bf9cef  notecard-2.1.1.2013839$20211117220152.bin
f1c207f897ac1a44a6f1f784c7353863  notecard-2.2.1.2013856$20220219214539.bin
b1bebc3c08001bce9f99a02a7b992ba5  notecard-2.3.1.2014013$20220613194620.bin
a7746b162b4a355229b5a651f58974b0  notecard-2.4.1.2014024$20230127210448.bin
105c8a30865e5313ce527190286c8de8  notecard-4.1.1.4015681$20221206134917.bin
f4c8ee422540de40edd51da7c4b72497  notecard-4.2.1.4015688$20230227005219.bin
3c999cf0d551a2aadeac09242f6c4105  notecard-4.4.1.4015700$20230505180038.bin

sha256

bea9ad4e9e47fdc4114c5f20f55e06dbbe20520f69eb0b6b6a71566e2c9fbfc4  notecard-2.1.1.2013839$20211117220152.bin
1bc71770ac49d61d42ec80f9fc41928e81a7aa40083dcb34c3cd62f99b25641b  notecard-2.2.1.2013856$20220219214539.bin
3d65ac74b8c30cb18d661339356042d1108ace2b177b532ee02114729dfa8456  notecard-2.3.1.2014013$20220613194620.bin
31c6e561695d07f3d72f4b1fa1a0e3d3e850d2e469d01f1c45ce908e97d78c70  notecard-2.4.1.2014024$20230127210448.bin
64d60511365351f711d6e7ad5cece4cb04029e634b1d1e29080cf93becff3d3b  notecard-4.1.1.4015681$20221206134917.bin
f4205d3c6f6b1b2117d53ee374b968b170f414ef29b7c60bb93484dac6b367f2  notecard-4.2.1.4015688$20230227005219.bin
6839ddfd05892a466f844b7d25a55149a951a068c17f233f6db79c200299683c  notecard-4.4.1.4015700$20230505180038.bin

Firmware Release Policies

The Notecard firmware is managed on two parallel product lifecycles:

  • Developer Firmware Releases
  • Long-Term Support (LTS) Releases

This section summarizes how these releases are versioned, as well as our policies around customer deployments and support timelines.

Developer Firmware Releases

Developer Firmware Releases are meant for testing new Notecard features and functionality during the early prototype and pilot phases of a project. It's not uncommon for these releases to expand the feature-set of the Notecard based on feedback and requests from customers building real applications.

These releases happen, on average, once a quarter and are supported by Blues for 90 days from the date of release, or the date of the following developer firmware release whichever is soonest. Once that 90-day period elapses, customers will be required to upgrade to a newer version in order to receive support.

Long-term Support (LTS) Releases

Long-term Support, or LTS, releases are meant for scaling customers deploying an application to production. These applications are often feature complete and ready for the field, and do not need new features, or the risk associated with incorporating updated firmware into an existing application. LTS releases address this problem by supplying stable and consistent behavior that customers can bet on for field deployments.

LTS releases happen at least once per year, with occasional bug-fixes back-ported into the current major LTS line each quarter, if needed. LTS releases are feature-frozen, meaning that they do not generally receive new features, API changes, or any functionality that modifies the documented behavior of the device. They do, however, benefit from an extended support window in which Blues will address critical OTA vulnerabilities for a period of 10 years from the date of initial release. Customers deploying an application to the field must select an LTS version in order to receive support.

Release Versioning

We've chosen to adopt a firmware version numbering scheme inspired by the LTS practices employed for NodeJS. Namely, we're adopting an even and odd major version numbering scheme to delineate between our LTS and Developer releases.

LTS releases will always start with an even number, and we will increase the minor or patch version numbers in the event fixes from a newer release need to be back-ported to an earlier LTS. For example, 2.1.1 was our first LTS version. If, in the support period, we identify a need to back-port a critical vulnerability, we would release a new LTS version on this line with a new minor or patch number, for example 2.2.1.

Likewise, Developer releases will always start with an odd number, and we will increase the minor or patch version numbers as we cut updated Developer firmware releases throughout the year.

DFU with In-Browser Terminal

If your Notecard device is running Developer Firmware v5.3.1 or later, you may update Notecard firmware manually using only the In-Browser Terminal.

This method is preferred over using STM32CubeProgrammer because:

  1. It does not put the Notecard at risk of erasing the entire flash memory.
  2. It does not require installation of STM32CubeProgrammer.

Firmware Update Process

Connect your Notecard device to your computer via USB. Using the In-Browser Terminal, enter the firmware list command to list all available versions of Notecard firmware:

>
firmware list
~ 8 Firmware
~  Date                   Version          Notes                                 
~  2021-11-17 (2yr ago)   notecard-2.1.1   LTS (Long Term Support) Release       
~  2022-02-19 (1yr ago)   notecard-2.2.1   LTS (Long Term Support) Release       
~  2022-06-13 (1yr ago)   notecard-2.3.1   LTS (Long Term Support) Release       
~  2022-12-06 (7mo ago)   notecard-4.1.1   LTS4xx Initial Release                
~  2023-01-27 (6mo ago)   notecard-2.4.1   LTS2xx Maintenance Release            
~  2023-02-27 (5mo ago)   notecard-4.2.1   LTS4xx Q1 2023 maintenance release    
~  2023-05-05 (2mo ago)   notecard-4.4.1   LTS4xx Q2 2023 maintenance release    
~  2023-05-11 (2mo ago)   notecard-5.1.1   2023 Q1 Developer Release  
~  2023-09-01 (1wk ago)   notecard-5.3.1   2023 Q3 Developer Release
warning

If you update Notecard firmware to a version less than v5.3.1, any subsequent firmware update would have to be performed with either STM32CubeProgrammer or Notehub.

Update your Notecard firmware using the following command, where <version-name> is the name of the firmware binary from the Version column above:

>
firmware install <version-name>

Upon completion of the firmware update, the Notecard will restart. Verify the Notecard's firmware has been updated by reconnecting to the In-Browser Terminal and issuing the card.version command:

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

DFU with Notecard CLI

If your Notecard device is running Developer Firmware v5.3.1 or later, you may update Notecard firmware manually using only the Notecard CLI.

This method is preferred over using STM32CubeProgrammer because:

  1. It does not put the Notecard at risk of erasing the entire flash memory.
  2. It does not require installation of STM32CubeProgrammer.

Prerequisites

  1. Installation of the latest version of the Notecard CLI.
  2. A fresh Notecard binary file (download from the Firmware Releases list above).

Firmware Update Process

Connect your Notecard device to your computer via USB. Using a terminal or command prompt, navigate to the folder containing the Notecard firmware binary you want to load, and enter the following command:

$
notecard -fast -sideload notecard-<version-build>.bin

The notecard-<version-build>.bin represents the name of the firmware image you downloaded and want to install on the Notecard. You may need to prepend notecard with the absolute path name if it is not in your PATH.

warning

If you update Notecard firmware to a version older than v5.3.1, any subsequent firmware update would have to be performed with either STM32CubeProgrammer or Notehub.

Wait while the firmware downloads and installs:

sending DFU binary to notecard
side-loading 8192 bytes (100% 925167 remaining)
side-loading 8192 bytes (99% 916975 remaining)
side-loading 8192 bytes (98% 908783 remaining)
side-loading 8192 bytes (97% 900591 remaining)
...
note

If you see a repeated message about the Notecard being disconnected, simply exit the process by pressing ctrl-c.

retrying after error: error opening serial port: serial device not available {io}

Within a few seconds the Notecard should restart. Verify the Notecard's firmware has been updated with the following command:

$
notecard -info
Blues Wireless Notecard
               DeviceUID: dev:864475040000000
           Serial Number: 
            Notehub Host: a.notefile.net
        Firmware Version: notecard-5.3.1
                     SKU: NOTE-NBGL-500

DFU with STM32CubeProgrammer

You can manually update Notecard device firmware by directly connecting to a Notecard over USB and using STM32CubeProgrammer .

Prerequisites

  • Serial terminal emulator software (e.g. our In-Browser Terminal, CoolTerm , or TinyTerm ).

  • A fresh Notecard binary file (download from the Firmware Releases list above).

  • STM32CubeProgrammer (download the latest version for your OS).

    warning

    The minimum version of STM32CubeProgrammer we support is 2.11.0.

STM32CubeProgrammer Installation Notes

Installing STM32CubeProgrammer requires OS-specific instructions.

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).

Download and extract the zip package (noting that the version number of 2.11.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.11.0.app/Contents/MacOs/SetupSTM32CubeProgrammer-2_11_0_macos

You will likely be prompted with a security error from macOS, noting that the installer cannot be opened because the developer cannot be verified.

macos security issue

Click "Cancel", open "System Preferences", navigate to the "General" tab, and click "Open Anyway".

macos security issue resolution

Finally, back in your terminal, launch the installer in CLI mode again, using the same command used previously.

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-11-0_v2.11.0 && cd en.stm32cubeprg-lin_v2-11-0_v2.11.0 && ./SetupSTM32CubeProgrammer-2.11.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. blues.dev In-Browser Terminal, CoolTerm, or TinyTerm) is able to connect to the device by sending the card.version request:

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

The response should look similar to this:

{
 "version": "notecard-3.5.1.15545",
 "device": "dev:000000000000000",
 "name": "Blues Wireless Notecard",
 "sku": "NOTE-NBGL-500",
 "board": "1.11",
 "api": 3,
 "body": {
  "org": "Blues Wireless",
  "product": "Notecard",
  "version": "notecard-3.5.1",
  "ver_major": 3,
  "ver_minor": 5,
  "ver_patch": 1,
  "ver_build": 15545,
  "built": "Oct 10 2022 12:37:13"
 }
}

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)".

Using the STM32CubeProgrammer

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.
warning

Never enable the "Full chip erase" option as you will wipe the Notecard in a way that renders it permanently unusable.

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

In lieu of using the STM32CubeProgrammer GUI, you may use the STM32_Programmer_CLI that is installed alongside the GUI.

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

Results

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"}

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.

Additional Resources

  • Manage Notecard Firmware
  • Host Firmware Update Requests
Can we improve this page? Send us feedback
© 2023 Blues Inc.
© 2023 Blues Inc.
TermsPrivacy
Notecard Disconnected
Having trouble connecting?

Try changing your 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 Notecard
Use USB to connect and start issuing requests from the browser.
Try Notecard Simulator
Experiment with Notecard's latest firmware on a Simulator assigned to your free Notehub account.

Don't have an account? Sign up