Adafruit IO ? | Adafruit IO Arduino Library | Adafruit MQTT

What is Adafruit IO?

Adafruit.io is a cloud service – that just means adafruit run it for you and you don’t have to manage it. Adafruit IO is a system that makes data useful. Adafruit focus on ease of use, and allowing simple data connections with little programming required. IO includes client libraries that wrap our REST and MQTT APIs. IO is built on Ruby on Rails, and Node.js.

You can connect to it over the Internet. It’s meant primarily for storing and then retrieving data but it can do a lot more than just that!

No problem! Dashboards are a feature integrated into Adafruit IO which allow you to chart, graph, gauge, log, and display your data. You can view your dashboards from anywhere in the world.

Triggers

Use triggers in AdafruitIO to control and react to your data. Configure triggers to email you when your system goes offline, react to a temperature sensor getting too hot, and publish a message to a new feed.

Feeds

Feeds are the core of the Adafruit IO system. The feed holds metadata about the data you push to Adafruit IO. This includes settings for whether the data is public or private, what license the stored sensor data falls under, and a general description of the data. The feed also contains the sensor data values that get pushed to Adafruit IO from your device.

You will need to create one feed for each unique source of data you send to the system. For example, if you have a project with one temperature sensor and two humidity sensors, you would need to create three feeds. One feed for the temperature sensor, and one feed for each humidity sensor.

Integration with IFTTT and Zapier

Want to make your project react to an email, display trending tweets, or turn on the front lights when your pizza is on the way? We baked in integrations with IFTTT and Zapier to connect your project’s sensors to hundreds of web services.

Adafruit IO Arduino Library

This library provides a simple device independent interface for interacting with Adafruit IO using Arduino. It allows you to switch beween WiFi (ESP8266, M0 WINC1500, & WICED), Cellular (32u4 FONA), and Ethernet (Ethernet FeatherWing) with only a two line change in your sketch.

Installation

You can install the library through the Arduino Library Manager (click: Sketch -> Include Library -> Manage Libraries…) and search Adafruit io arduino.

To change between platforms, you will need to change two lines of code in the config.h tab of the example. It is recommended that you start with one of the Adafruit WiFi feathers before moving on to cellular or ethernet.

For all examples, you will need to set IO_USERNAME and IO_KEY in the config.h tab:

In config.h, replace the IO_KEY with the IO Key copied to your clipboard.

Using the Adafruit IO Arduino Library with WiFi

If you are using the included examples, you do not need to change anything for the Adafruit WiFi Feathers. All WiFi based Feathers (ESP8266, M0 WiFi, WICED) will work with the examples out of the box once you add your WiFi SSID and Password to the config.h file.

In the config.h tab, replace "your_ssid" with your WiFi’s SSID and "your_pass" with your WiFi’s password

Using the Adafruit IO Arduino Library with Ethernet

For Ethernet, you will only need to change from the default WiFi constructor to the Ethernet specific constructor in the config.h tab. The rest of the sketch remains the same.

Adafruit MQTT Arduino Library

Adafruit also have a library to provide support for accessing Adafruit IO using MQTT. This is a general-purpose MQTT library for Arduino that’s built to use as few resources as possible so that it can work with platforms like the Arduino Uno. Unfortunately platforms like the Trinket 3.3V or 5V (based on the ATtiny85) have too little program memory to use the library–stick with a Metro 328p or better!

The MQTT library supports the following network platforms and hardware:

Want to use Adafruit IO with your computer or a Raspberry Pi?

The Adafruit IO Python library provides two clients for accessing Adafruit IO (MQTT and HTTP) and lots of examples. It’s compatible with any system running CPython3 and also compatible with Single-Board computers like the Raspberry Pi.

About Us

IoTbyHVM.OOO is an attempt to help the people by sharing the knowledge and ideas about Internet of things and other technology related articles and videos. IoTbyHVM.OOO provides articles related to Arduino, Raspberry Pi, use of all general purpose sensors, circuits, home automation, drones, smart TV, voice control TV , Micro Controller etc. for DIY (Do it Yourself) purpose.

If you want to help support me on my journey, consider sharing my articles, or Buy me a Coffee!

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.