Control devices on your Rasp Pi network with text messages

Texting from Android

If your text scheme is simple (e.g., turning one light on and off), you could manually just output an ON or OFF message. However if you are controlling multiple lights, heaters, and other devices, then manually typing the text messages gets awkward.

To manage multiple commands, I wrote a simple Android app in MIT App Inventor [5]. App Inventor is a free web-based Android development environment that only requires a Google login for access. In about 10 minutes, I was able to get a prototype going with multiple inputs. The first step was to drag and drop some buttons from the User Interface palette onto the Viewer pane and then drag and drop a Texting component from the Social palette onto the view. Note that the Texting component will appear as a non-visible item (Figure 7).

Figure 7: App layout in MIT App Inventor.

After you have a basic layout, select the Blocks button on the menubar to open a logic page. Logic is created by clicking on objects in the Blocks panel and dragging and dropping the blocks onto the Viewer panel.

To have a button send a text message (Figure 8), the following pieces are required:

Figure 8: Android app button logic.
  • The when <Button>.Click statement is called when the user touches the button object.
  • The set Texting1.PhoneNumber statement defines the remote phone number.
  • The set Texting1.Message statement defines the text message.
  • The call Texting1.SendMessage statement sends the message.

To build the application, use the Build menu item (Figure 9). For my test project, I configured four devices and eight commands (Figure 10).

Figure 9: Building the Android app.
Figure 10: Android SMS test app.

Final Comments

I found that Node-RED on Android is a lot faster than I expected; however, I noticed that some of the added features (e.g., Bluetooth support) only worked on the Raspberry Pi/Linux version of Node-RED.

For a final solution, I would definitely move to dedicated SMS hardware, but I found it nice to build a proof of concept test with just some basic Android phones. Also, don't forget to set Node-RED to start up automatically on a power up.

Infos

  1. "Fun with Node-RED" by Leah, Brook, and Pete Metcalfe. Raspberry Pi Geek, issue 20, 2016, pg. 90, http://www.raspberry-pi-geek.com/Archive/2016/20/Create-amazing-Pi-apps-without-writing-code/
  2. Node-RED on Android: https://nodered.org/docs/platforms/android
  3. Termux: https://termux.com/
  4. PowerSwitch Tail II: http://www.powerswitchtail.com
  5. MIT App Inventor: http://ai2.appinventor.mit.edu

The Author

You can investigate more neat projects by Pete Metcalfe and his daughters at https://funprojects.blog.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95

News