How to Use ThingSpeak with the Raspberry Pi Pico W

In this tutorial, we'll learn how to use ThingSpeak, a popular IoT platform, with the Raspberry Pi Pico W to collect and visualize sensor data. We'll be using a BME280 sensor to measure temperature, pressure, and humidity and send this data to ThingSpeak for real-time monitoring and analysis.
ThingSpeak is an open-source Internet of Things (IoT) platform that allows you to collect, store, analyze, visualize, and act on data from sensors or devices. It's particularly popular for its ease of use and integration with various hardware platforms like Raspberry Pi, Arduino, and ESP8266/ESP32.
In the end, we will have a dashboard that looks as follows, a simple weather station with gauges and graphs that updates in real time:
Requirements
    Wiring the BME280 Sensor
    If you are interested in using the BME280 specifically, there is another ShillehTek tutorial on YouTube here that quickly walks you through how to get setup.

    Before we get into the remainder, consider subscribing or supporting the channel. Also, be sure to checkout our various stores to shop products for Raspberry Pi, Arduino, ESP32, and DIY electronics at ShillehTek!

    Subscribe:

    Youtube

    Support:

    https://www.buymeacoffee.com/mmshilleh

    Hire me at UpWork to build your IoT projects:

    https://www.upwork.com/freelancers/~017060e77e9d8a1157

    Visit ShillehTek Store for Arduino and Raspberry Pi Sensors and Pre-SolderedComponents:

    ShillehTek Website (Exclusive Discounts):

    https://shillehtek.com/collections/all

    ShillehTekAmazon Store:

    ShillehTek Amazon Store - US

    ShillehTek Amazon Store - Canada

    ShillehTek Amazon Store - Japan 

    Step 1-) Setting Up ThingSpeak

    • Create a ThingSpeak Account: If you don't have one, sign up for a ThingSpeak account at thingspeak.com.
    • Create a New Channel:Go to the Channels tab and click "New Channel".Name your channel (e.g., "Pico W Weather Station").Add three fields: Temperature, Pressure, and Humidity.Save the channel and note down the Write API Key. You can get it in the API Keys tab.

    Creating Visualizations -

    Numeric Display for Temperature:

    • Go to your channel view and click on the "Add Widget" button.
    • Select "Numeric Display" from the widget options.
    • Choose the field corresponding to Temperature.
    • Save the widget to add it to your channel dashboard.

    Graph for Pressure:

    • Click on the "Add Visualizations" button.
    • Choose the field corresponding to Pressure.
    • Configure the time span and any other settings you prefer.
    • Save the widget to add it to your channel dashboard.

    Gauge for Humidity:

    • Click on the "Add Widget" button.
    • Select "Gauge" from the widget options.
    • Choose the field corresponding to Humidity.
    • Configure the gauge with appropriate min and max values (e.g., 0 to 100%).
    • Save the widget to add it to your channel dashboard.

    Now that you have all of this, you have the basis of what you need to start populating and visualizing the sensor data from the ShillehTek BME280 in ThingSpeak. If you are using another sensor, you can play around with other widgets and visualizations as needed, the interface is fairly straightforward.

    Create a free account to access full content.

    All access to code and resources on ShillehTek.

    Signup Now

    Already a member? Sign In

    Explore More on Our Blog

    Powering the Raspberry Pi Pico W with the MB102 Power Supply

    Powering the Raspberry Pi Pico W with the MB102 Power Supply

    Learn how to power your Raspberry Pi Pico W projects easily and flexibly with the MB102 Power Supply Module...

    How to Use L298N Motor Driver with Pico W

    How to Use L298N Motor Driver with Pico W

    Learn how to use the L298N motor driver to control DC motors with the Raspberry Pi Pico W in MicroPython.

    Controlling an LED with a Snap Using the KY-037 Sound Sensor and Raspberry Pi

    Controlling an LED with a Snap Using the KY-037 Sound Sensor and Raspberry Pi

    Discover how to set up, code, and activate the LED based on detected sound with the Raspberry Pi...

    Getting Started with the KY-037 Sound Sensor and Raspberry Pi: Detecting Sound Using Python

    Getting Started with the KY-037 Sound Sensor and Raspberry Pi: Detecting Sound Using Python

    In this tutorial, I’ll guide you through setting up the KY-037 sound sensor with a Raspberry Pi using...

    How to Post to Reddit Using Python

    How to Post to Reddit Using Python

    Post to reddit automatically using a Python script.

    How to Create a Time-Lapse Video with a Raspberry Pi Camera

    How to Create a Time-Lapse Video with a Raspberry Pi Camera

    Learn how to make a timelapse with your Raspberry Pi in Python.

    How to Integrate the MPU6050 with the STM32 Blue Pill

    How to Integrate the MPU6050 with the STM32 Blue Pill

    Learn how to measure acceleration with the STM32 and the MPU6050 in the Arduino IDE.

    Getting Started with STM32 Blue Pill in Arduino IDE Using a USB to TTL Converter — Write Your First Program

    Getting Started with STM32 Blue Pill in Arduino IDE Using a USB to TTL Converter — Write Your First Program

    This comprehensive tutorial will guide you through the process of setting up and programming the STM32 Blue Pill...

    Automate Task Scheduling in AWS with Lambda, Step Functions, and CloudWatch

    Automate Task Scheduling in AWS with Lambda, Step Functions, and CloudWatch

    In this tutorial, I'll show you how to automatically schedule tasks in AWS at regular intervals using AWS...

    Implementing Google reCAPTCHA in a Simple React and Node.js App

    Implementing Google reCAPTCHA in a Simple React and Node.js App

    Learn how to protect your React applications from bots and spam with Google reCAPTCHA integration! This step-by-step tutorial...

    Back to blog

    Leave a comment

    Please note, comments need to be approved before they are published.