Sorry, you need to enable JavaScript to visit this website.

You are here

Ask for Environmental Sensor Data via SMS

BY Michelle Howie 15 July 2021

If you have an environmental sensor set up in your home, office, farm etc and want to check the temperature, you don’t want to have to physically go out and do a sensor reading every time. There are already handy dashboards you can connect your device to (like the Arduino Cloud or Telstra IoT Platform), but if you are in a rush you can now ask the device to update you via SMS on demand!

We could potentially set this up to automate updates every hour, minute, week, or when a threshold is exceeded (like in the next example) but this project focuses on on-demand data. 


This project follows on from part 1: Control your IoT device remotely with SMS commands where we set up an Arduino board connected to Telstra's NB-IoT network, that flashes it's LED light on or off based on an SMS command.

I tweaked it slightly, to be able to SEND SMS commands as well as receive them, so we can get information off the device with remote sensors.


This is the overall flow that handles inbound messages requesting specific sensor info, and used the most up to date sensor readings from our Arduino ENV Shield via an IoT broker to send the response:

Our Arduino device is subscribed to an IoT broker that updates the latest sensor reading every minute. When an SMS is sent to our virtual mobile number (from Telstra’s Messaging API free trial), it is forwarded to the http endpoint here in Node-Red where we match the text payload to some expected keywords (i.e temp, humidity, UV) and create a reply message payload based on what data has been asked for.

Ask your device for the “temp” and it will send you back the last known temperature reading in Celsius.


We are able to map this process pretty easily using the low-code flow in Node-Red:

This code is all available in my GitHub repo for you to use, just replace your own credientials!


A similar flow could be used to get on-demand readings from any other critical system you want to check in on, like the water level of a drinking trough on your remote farm, or the location of your package travelling across Australia! Pretty handy to be able to poll for that data, rather than wait for an automatical alert (we'll get to those in part 3!)


To see more detail or try this out yourself, check out my GitHub for the source code and detailed instructions.  

GitHub Repo + ReadMe:


This tutorial was originally presented in a workshop at Call For Code with DeveloperSteve Coochin, June 2020:


To see how SMS alerts can be triggered by sensor input from your IoT device in emergencies, head to part 3 of this series.

Related Blogs

anonymous's picture

By Michelle Howie


  • iot
  • captis

Capture more insights with Captis Data Loggers!

Calling all IoT makers and innovators, there’s a new device on our IoT Marketplace! It...
anonymous's picture

By Dave Bell


  • hackathon
  • innovation

Telstra Innovation Hackathon 2020

Calling all startups, partners and employees of Australian corporates with a global presence; Regist...
anonymous's picture

By Tiana Fong


  • iot
  • platform

Telstra's IoT Platform

The Internet of Things (IoT) is a network of physical objects which collects data from the environme...
anonymous's picture

By Michelle Howie


  • messagingAPI
  • Tutorials

Get Started with the TelstraDev Messaging API

Have you ever wondered what an API is and why you should care? Have you ever had a mid-career cri...
anonymous's picture

By Brendan Myers


  • arduino
  • mkr

Introducing the Arduino MKR NB1500

Last year we were proud to announce our partnership with Arduino to help create an (read more about...
anonymous's picture

By Christy Daguia


  • messagingAPI
  • replyRequest

Conversation via Telstra Messaging API

Creating a message thread can be done via Telstra Messaging API, whereby you can continue sending an...
anonymous's picture

By Rajeev Ramani


  • MMS
  • performance

Fine-tuning MMS performance on Telstra's Messaging API

  Here at TelstraDev, we strive to make the best possible developer experience, from the recen...