---
title: Firmware Libraries
description: An overview of the firmware libraries provided by Blues for use with the Notecard
source_url: https://dev.blues.io/tools-and-sdks/firmware-libraries/
canonical_url: https://dev.blues.io/tools-and-sdks/firmware-libraries/
markdown_url: https://dev.blues.io/tools-and-sdks/firmware-libraries.md
---

# Firmware Libraries

Start building your Notecard-powered app using one of our official libraries. Each library allows you to connect to the Notecard, and to issue requests using the [Notecard API](https://dev.blues.io/api-reference/notecard-api.md).

Not sure where to start? Arduino is a widely used platform and a great starting point for any new IoT project, although you'll need to know a bit of C once you get beyond the basics. C/C++ is the most powerful of your options, and is often the only choice when running on memory- and resource-constrained devices. Python is a popular and easy-to-use option that's great for beginners, as well as anyone that wants to leverage the advantages of an interpreted language.

## Official Libraries

The following Notecard libraries are officially maintained and supported by Blues. All libraries are open source and available on GitHub.

[![](https://dev.blues.io/images/icons/tech/arduino.png?v=6a043b66)](https://dev.blues.io/tools-and-sdks/firmware-libraries/arduino-library.md)

### [Arduino](https://dev.blues.io/tools-and-sdks/firmware-libraries/arduino-library.md)

[The official Arduino firmware library for Notecard, note-arduino.](https://dev.blues.io/tools-and-sdks/firmware-libraries/arduino-library.md)

[View Documentation](https://dev.blues.io/tools-and-sdks/firmware-libraries/arduino-library.md)

[![](https://dev.blues.io/images/icons/tech/c.png?v=1f46bb82)](https://blues.github.io/note-c/)

### [C and C++](https://blues.github.io/note-c/)

[The official C/C++ library for Notecard, note-c.](https://blues.github.io/note-c/)

[View Documentation](https://blues.github.io/note-c/)

[![](https://dev.blues.io/images/icons/tech/esp-idf.png?v=02822775)](https://dev.blues.io/tools-and-sdks/firmware-libraries/esp-idf-library.md)

### [ESP-IDF](https://dev.blues.io/tools-and-sdks/firmware-libraries/esp-idf-library.md)

[The official ESP-IDF component for Notecard, note-espidf.](https://dev.blues.io/tools-and-sdks/firmware-libraries/esp-idf-library.md)

[View Documentation](https://dev.blues.io/tools-and-sdks/firmware-libraries/esp-idf-library.md)

[![](https://dev.blues.io/images/icons/tech/go.png?v=2c70b3ce)](https://github.com/blues/note-go)

### [Go](https://github.com/blues/note-go)

[The official Go library for Notecard, note-go.](https://github.com/blues/note-go)

[View Documentation](https://github.com/blues/note-go)

[![](https://dev.blues.io/images/icons/tech/python.png?v=2040bfae)](https://dev.blues.io/tools-and-sdks/firmware-libraries/python-library.md)

### [Python](https://dev.blues.io/tools-and-sdks/firmware-libraries/python-library.md)

[The official Python library for Notecard, note-python.](https://dev.blues.io/tools-and-sdks/firmware-libraries/python-library.md)

[View Documentation](https://dev.blues.io/tools-and-sdks/firmware-libraries/python-library.md)

[![](https://dev.blues.io/images/icons/tech/zephyr.png?v=2431f886)](https://dev.blues.io/tools-and-sdks/firmware-libraries/zephyr-library.md)

### [Zephyr](https://dev.blues.io/tools-and-sdks/firmware-libraries/zephyr-library.md)

[The official Zephyr West module for Notecard, note-zephyr.](https://dev.blues.io/tools-and-sdks/firmware-libraries/zephyr-library.md)

[View Documentation](https://dev.blues.io/tools-and-sdks/firmware-libraries/zephyr-library.md)

## Experimental Libraries

Blues provides **very limited support** for experimental libraries. Consider the use of these libraries as a BETA experience. Only official libraries are supported for usage in production applications.

### [C-Zero](https://github.com/blues/note-c-zero)

[note-c-zero is a minimal C interface for Notecard that uses no static read-write and requires no dynamic allocation.](https://github.com/blues/note-c-zero)

[View Repository](https://github.com/blues/note-c-zero)

### [Node-RED](https://github.com/blues/note-nodered)

[note-nodered is a Node.js library that enables you to control a Notecard by developing flows in Node-RED.](https://github.com/blues/note-nodered)

[View Repository](https://github.com/blues/note-nodered)

### [TinyGo](https://github.com/blues/note-tinygo)

[note-tinygo is a library for communicating with Notecard in TinyGo.](https://github.com/blues/note-tinygo)

[View Repository](https://github.com/blues/note-tinygo)

## Community Libraries

Community libraries are not supported by Blues; they are maintained directly by the repository owners.

### [C++](https://github.com/m-mcgowan/note-cpp)

[C++ developers can use note-cpp, a header-only, type-safe community-supported library for communicating with a Notecard. It supports C++17/20/23 across platforms from resource-constrained MCUs to desktop.](https://github.com/m-mcgowan/note-cpp)

[View Repository](https://github.com/m-mcgowan/note-cpp)

### [.NET](https://github.com/bytewizer/blueswireless)

[C# developers using either TinyCLR OS or .NET nanoFramework can use this community-supported library, which may also be installed via nuget.](https://github.com/bytewizer/blueswireless)

[View Repository](https://github.com/bytewizer/blueswireless)

### [Rust](https://github.com/gauteh/notecard-rs)

[Rust developers can use this community-supported library to use communicate with a Notecard using Rust. The library is also available on crates.io.](https://github.com/gauteh/notecard-rs)

[View Repository](https://github.com/gauteh/notecard-rs)
