Loading...
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 the Notecard's API on a Simulator assigned to your free Notehub account.

Don't have an account? Sign up

What Happens After the Prototype? Explore Blues' Connected Product Guidebook

Blues Developers
What’s New
Resources
Blog
Technical articles for developers
Connected Product Guidebook
In-depth guides for connected product development
Developer Certification
Get certified on wireless connectivity with Blues
Newsletter
The monthly Blues developer newsletter
Terminal
Connect to a Notecard in your browser
Webinars
Listing of Blues technical webinars
Blues.comNotehub.io
Shop
Docs
Button IconHelp
Support DocsNotehub StatusVisit our Forum
Button IconSign In
Docs Home
What’s New
Resources
Blog
Technical articles for developers
Connected Product Guidebook
In-depth guides for connected product development
Developer Certification
Get certified on wireless connectivity with Blues
Newsletter
The monthly Blues developer newsletter
Terminal
Connect to a Notecard in your browser
Webinars
Listing of Blues technical webinars
Blues.comNotehub.io
Shop
Docs
Notehub
Notehub Walkthrough
Notehub API Reference
Routing Tutorial
Host Firmware Updates
Host DFU Overview
Notecard Outboard Firmware Update
IAP Firmware Update
Notehub API Requests for DFU
Notecard API Requests for DFU
Environment Variables for DFU
Configuring a Slack Route
Configuring an Amazon S3 Route
Configuring a Snowpipe Route
homechevron_rightDocschevron_rightNotehubchevron_rightHost Firmware Updateschevron_rightUsing IAP Firmware Update

Using IAP Firmware Update

warning

If you're using a compatible STM32, ESP32, or nRF microcontroller, we highly recommend using Notecard Outboard Firmware Update to perform DFU operations as it's more reliable, secure, and you can rollback any unintended changes.

IAP (In Application Programming) is a more traditional form of DFU that performs firmware updates while the program is running.

Read more about IAP vs ISP (In System Programming) in this kanda.com article.

Upload Host MCU Firmware

  1. Select Settings > Firmware from the left navigation bar and click Upload Firmware.

    Upload firmware option

  2. Upload your new firmware binary with the form provided.

    Upload page

Deploy Firmware

  1. Select Devices from the left navigation bar, select a device from the list of devices in the Host Firmware tab, and then click Update.

    Device selected from list

  2. Select the firmware you wish to apply from the list of available firmware, and click Apply.

    Update host firmware button

  3. Consult Notecard API Requests for DFU to configure how Notecards process DFU requests.

Implementing IAP on the Host

Once a firmware binary has been uploaded to Notehub and a DFU action has been applied to a device, the host MCU is responsible for polling the Notecard, transferring the binary in chunks, validating it, and rebooting into the new image. Each individual API request used during this flow is documented on Notecard API Requests for DFU; the steps below show how those requests fit together end-to-end.

A typical host DFU loop, called periodically, performs the following actions:

  1. Issues a dfu.status request to the Notecard and checks the mode field in the response to determine whether: a) a firmware image is being downloaded by the Notecard; b) a firmware image has been downloaded and is ready for installation; or, c) no new firmware is available.

  2. Once a new firmware binary has been downloaded and any pending network activity completes, issues a hub.set request with mode set to dfu, signaling to the Notecard that the host is ready to retrieve firmware.

  3. Prepares the host's secondary (inactive) partition or update region to receive the incoming binary.

  4. Performs a series of dfu.get requests to obtain the host firmware binary in chunks. Each chunk is CRC-validated and written to the host's update region using whatever flash-write or OTA utility the host platform provides.

  5. After the entire binary is retrieved, issues another hub.set with mode set to dfu-completed to indicate that the Notecard can resume its normal operations.

  6. Performs a final CRC check, comparing the CRC of the downloaded firmware to the value provided by Notehub in the initial dfu.status response. If the values match, marks the new image as the boot target.

  7. Issues a dfu.status request with the stop field set to true. Upon receipt, the Notecard removes the firmware binary from its internal storage.

  8. Restarts the host and begins running the new firmware.

tip

For a complete reference implementation in C++ for the ESP32, see the note-tutorials DFU example on GitHub. The dfu.cpp file in that repository implements the full loop above and can be adapted to other host platforms.

Notecard Outboard Firmware Update Notehub API Requests for DFU
Can we improve this page? Send us feedback
© 2026 Blues Inc.
© 2026 Blues Inc.
TermsPrivacy