<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Conall Laverty</title>
    <description>The latest articles on Forem by Conall Laverty (@conalllaverty).</description>
    <link>https://forem.com/conalllaverty</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F49560%2F1ecd8f64-ebee-42aa-adc6-fb697c8074ac.jpg</url>
      <title>Forem: Conall Laverty</title>
      <link>https://forem.com/conalllaverty</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/conalllaverty"/>
    <language>en</language>
    <item>
      <title>Build your own smile detector with Wia, Amazon Rekognition and Raspberry Pi</title>
      <dc:creator>Conall Laverty</dc:creator>
      <pubDate>Thu, 12 Apr 2018 14:16:53 +0000</pubDate>
      <link>https://forem.com/conalllaverty/build-your-own-smile-detector-with-wia-amazon-rekognition-and-raspberry-pi-5gad</link>
      <guid>https://forem.com/conalllaverty/build-your-own-smile-detector-with-wia-amazon-rekognition-and-raspberry-pi-5gad</guid>
      <description>&lt;p&gt;Hi All,&lt;br&gt;
For this tutorial, we're going to build a facial recognition camera that can detect if someone is smiling (or not). &lt;/p&gt;

&lt;p&gt;Here's what you will need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Raspberry Pi (any model 3, 3+, Zero, etc).&lt;/li&gt;
&lt;li&gt;Raspberry Pi Camera Module (we recommend &lt;a href="https://www.raspberrypi.org/products/camera-module-v2/" rel="noopener noreferrer"&gt;this&lt;/a&gt; one).&lt;/li&gt;
&lt;li&gt;Micro SD card (we recommend at least 8Gb).&lt;/li&gt;
&lt;li&gt;Micro USB to USB cable.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We've already got lots of in depth guides showing you how to setup your Raspberry Pi from scratch. You can view those &lt;a href="https://developers.wia.io/docs/raspberry-pi" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;
  
  
  Setup the Camera
&lt;/h2&gt;

&lt;p&gt;Once you've got everything up and going, it's time to start setting up the camera on your Raspberry Pi. When you are logged into your Raspberry Pi via SSH, run the command &lt;code&gt;sudo raspi-config&lt;/code&gt;. Press the down arrow key until you reach &lt;code&gt;5 Interfacing Options&lt;/code&gt; and press Enter.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523527924-901868-screen-shot-2018-04-12-at-103641.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523527924-901868-screen-shot-2018-04-12-at-103641.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Make sure &lt;code&gt;P1 Camera&lt;/code&gt; is selected and press Enter.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523527954-3232-screen-shot-2018-04-12-at-103653.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523527954-3232-screen-shot-2018-04-12-at-103653.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When asked &lt;code&gt;Would you like the camera interface to be enabled?&lt;/code&gt;, select &lt;code&gt;&amp;lt;Yes&amp;gt;&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523527974-618439-screen-shot-2018-04-12-at-103742.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523527974-618439-screen-shot-2018-04-12-at-103742.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To exit, press the down arrow key until you reach &lt;code&gt;&amp;lt;Finish&amp;gt;&lt;/code&gt; and press Enter.&lt;/p&gt;
&lt;h2&gt;
  
  
  Install Node.js
&lt;/h2&gt;

&lt;p&gt;Run the following 5 commands one by one:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd ~
wget https://nodejs.org/dist/v4.3.2/node-v4.3.2-linux-$(uname -m).tar.gz 
tar -xvf node-v4.3.2-linux-$(uname -m).tar.gz
cd node-v4.3.2-linux-$(uname -m)
sudo cp -R * /usr/local/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To check Node.js is installed correctly, run &lt;code&gt;node -v&lt;/code&gt;. It should return &lt;code&gt;v4.3.2&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setup the Project
&lt;/h2&gt;

&lt;p&gt;Go to your home directory by running the command &lt;code&gt;cd ~&lt;/code&gt;. Create a new directory by running &lt;code&gt;mkdir wia-pi-camera&lt;/code&gt;. Go into this directory by running the command &lt;code&gt;cd wia-pi-camera&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Initialise the project by running &lt;code&gt;npm init&lt;/code&gt;. Hit Enter at each of the prompts. Install the &lt;code&gt;wia&lt;/code&gt; and &lt;code&gt;raspicam&lt;/code&gt; libraries by running each of these commands:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install --save wia
npm install --save raspicam
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Write the code
&lt;/h2&gt;

&lt;p&gt;Now we're going to write the code that will capture a photo and send it to Wia. &lt;/p&gt;

&lt;p&gt;Create a new file by running the command &lt;code&gt;touch run-camera.js&lt;/code&gt;. Open the text editor by running &lt;code&gt;nano run-camera.js&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;Copy and paste the code from below, replacing &lt;code&gt;your-device-secret-key&lt;/code&gt; with your device's secret key. If you haven't already set one up, you can do so in the Wia dashboard &lt;a href="https://dashboard.wia.io/" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;'use strict';

var wia = require('wia')('your-device-secret-key');
var fs = require('fs');
var RaspiCam = require("raspicam");

// Setup the camera
var camera = new RaspiCam({
  mode: 'photo',
  output: __dirname + '/photo.jpg',
  encoding: 'jpg'
});

// Listen for the "start" event triggered when the start method has been successfully initiated
camera.on("start", function(){
  console.log("Starting to take photo.");
});

// Listen for the "read" event triggered when each new photo/video is saved
camera.on("read", function(err, timestamp, filename){
  console.log("New photo created.", timestamp, filename);

  // Publish the photo to Wia
  wia.events.publish({
    name: 'photo',
    file:  fs.createReadStream(__dirname + '/' + filename)
  });
});

// Take a photo
camera.start();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Press &lt;code&gt;CTRL+O&lt;/code&gt; (that's the letter o, not the number) to save the code, followed by &lt;code&gt;CTRL+X&lt;/code&gt; to exit Nano. Back in your terminal, run the code by running the command &lt;code&gt;node run-camera.js&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523528587-325138-screen-shot-2018-04-12-at-112247.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523528587-325138-screen-shot-2018-04-12-at-112247.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the debugger in the Wia dashboard you should now see the Event appearing.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523528622-426028-screen-shot-2018-04-12-at-112310.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523528622-426028-screen-shot-2018-04-12-at-112310.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Build the Flow
&lt;/h2&gt;

&lt;p&gt;In the Wia dashboard, we're now going to build the Flow that will detect happy faces. In the left side menu, click on Flows, then create a Flow called 'Detect Happy Faces'.&lt;/p&gt;

&lt;p&gt;We're going to do the 4 following steps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Add a Trigger Node&lt;/li&gt;
&lt;li&gt;Add a Detect Faces Node&lt;/li&gt;
&lt;li&gt;Add a Run Function Node&lt;/li&gt;
&lt;li&gt;Add an Email Node&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Add a Trigger Node
&lt;/h3&gt;

&lt;p&gt;Drag across an Event node from the Triggers section. Hover over the node and click the gear icon to open the settings. Enter &lt;code&gt;photo&lt;/code&gt; as the Event Name and click Update. Now add the devices you would like this trigger to apply to.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523528878-925761-screen-shot-2018-04-12-at-112646.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523528878-925761-screen-shot-2018-04-12-at-112646.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Add a Detect Faces Node
&lt;/h3&gt;

&lt;p&gt;Drag across the Detect Faces node under Services and connect it to the Event node.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523528950-212324-screen-shot-2018-04-12-at-112810.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523528950-212324-screen-shot-2018-04-12-at-112810.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Add a Run Function Node
&lt;/h3&gt;

&lt;p&gt;Drag across a Function node under Logic and connect it to the Detect Faces node.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523529004-671765-screen-shot-2018-04-12-at-112947.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523529004-671765-screen-shot-2018-04-12-at-112947.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hover over the Run Function node and click on the gear icon to open the settings.&lt;/p&gt;

&lt;p&gt;Copy and paste the following code block to detect smiles. Then click Update.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;if (input.body.faceDetails &amp;amp;&amp;amp; input.body.faceDetails.length &amp;gt; 0) {
    output.body.isSmiling = input.body.faceDetails[0].smile.value;
} else {
    output.body.isSmiling = false;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Add an Email Node
&lt;/h2&gt;

&lt;p&gt;Drag over an Email node from under Actions and connect it to the Run Function node.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523529464-891185-screen-shot-2018-04-12-at-113550.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523529464-891185-screen-shot-2018-04-12-at-113550.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hover over the Email node and click on the gear to open the settings.&lt;/p&gt;

&lt;p&gt;Enter your To Address, Subject Line and in the Body, copy and paste &lt;code&gt;Detected smile: ${input.body.isSmiling}&lt;/code&gt;. Click Update to save.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523529571-397273-screen-shot-2018-04-12-at-113920.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fs3-eu-west-1.amazonaws.com%2Fwia-flarum-bucket%2F2018-04-12%2F1523529571-397273-screen-shot-2018-04-12-at-113920.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That's your whole Flow setup!&lt;/p&gt;

&lt;h2&gt;
  
  
  Run everything together
&lt;/h2&gt;

&lt;p&gt;Now go back to your Raspberry Pi and run the command &lt;code&gt;node run-camera.js&lt;/code&gt; again to see your Flow running. Check your email inbox for the message.&lt;/p&gt;

&lt;h2&gt;
  
  
  (Optional) Try out other facial features
&lt;/h2&gt;

&lt;p&gt;There are lots of other attributes you can try out. &lt;a href="https://developers.wia.io/docs/integrations-aws-rekognition" rel="noopener noreferrer"&gt;Click here&lt;/a&gt; to see the whole list.&lt;/p&gt;

&lt;p&gt;That's all folks!&lt;/p&gt;

&lt;p&gt;CL&lt;/p&gt;

</description>
      <category>iot</category>
      <category>raspberrypi</category>
      <category>wia</category>
      <category>facialrecognition</category>
    </item>
    <item>
      <title>Send Events from an ESP8266 to Wia  </title>
      <dc:creator>Conall Laverty</dc:creator>
      <pubDate>Mon, 08 Jan 2018 00:10:21 +0000</pubDate>
      <link>https://forem.com/conalllaverty/send-events-from-an-esp8266-to-wia-50f0</link>
      <guid>https://forem.com/conalllaverty/send-events-from-an-esp8266-to-wia-50f0</guid>
      <description>&lt;p&gt;Hi All,&lt;br&gt;&lt;br&gt;
Today we're going to look at sending data from an ESP8266 to Wia. This ESP8266 IoT demo will go through all the steps required to go from scratch all the way to publishing your own events and locations. Let's get started!&lt;/p&gt;

&lt;h3&gt;
  
  
  Create Your Wia Account
&lt;/h3&gt;

&lt;p&gt;If you haven't already got one, &lt;a href="https://dashboard.wia.io/signup"&gt;click here&lt;/a&gt; to sign up.  &lt;/p&gt;

&lt;h3&gt;
  
  
  Setup a Space
&lt;/h3&gt;

&lt;p&gt;Once logged in, setup a new Space for your devices. I'm going to call mine &lt;code&gt;My Devices&lt;/code&gt;. When your Space is ready, you should see a screen like the one below.  &lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/1bfPDxMf4s0SyaOSkCEsum/f0dc8f7ebe0076a222b495d36376f4f7/Screen_Shot_2018-01-01_at_12.38.44.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/1bfPDxMf4s0SyaOSkCEsum/f0dc8f7ebe0076a222b495d36376f4f7/Screen_Shot_2018-01-01_at_12.38.44.png" alt="Screen Shot 2018-01-01 at 12.38.44"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Create a Device
&lt;/h3&gt;

&lt;p&gt;Create a new Device by entering it's name in the panel. You will then be redirected to the Device Overview page. Here you will see the Device's secret key (it should start with &lt;code&gt;d_sk&lt;/code&gt;). Keep note of this, we're going to use it later.&lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/5UKUiYakvu2yCWAGkwOCa6/cbda91da4eedf6c0fe1b324a34e38987/Screen_Shot_2018-01-04_at_12.10.31.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/5UKUiYakvu2yCWAGkwOCa6/cbda91da4eedf6c0fe1b324a34e38987/Screen_Shot_2018-01-04_at_12.10.31.png" alt="Screen Shot 2018-01-04 at 12.10.31"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Connecting to the Board
&lt;/h3&gt;

&lt;p&gt;Note: If your board has a micro USB port, you can probably skip this step.&lt;/p&gt;

&lt;p&gt;Connect your board to laptop/desktop via a USB to TTL cable/adapter. Here's a pinout showing the different connections.&lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/1zvTmj97OQAc46cuC4coGu/34ab2fc5e04dde88b3455b84e7fd8ae1/Wia_Blog_Illustration_1600x1052_03B.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/1zvTmj97OQAc46cuC4coGu/34ab2fc5e04dde88b3455b84e7fd8ae1/Wia_Blog_Illustration_1600x1052_03B.png" alt="Wia Blog Illustration 1600x1052 03B"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Connections should be like this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ESP8266 ESP-01 &amp;lt;–&amp;gt; USB TTL&lt;/li&gt;
&lt;li&gt;GND - GND&lt;/li&gt;
&lt;li&gt;TX - RX&lt;/li&gt;
&lt;li&gt;RX - TX&lt;/li&gt;
&lt;li&gt;VCC - 3.3V (+)&lt;/li&gt;
&lt;li&gt;CH_PD - 3.3V (+)&lt;/li&gt;
&lt;li&gt;GPIO0 - GND (While flashing board)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Note: You may need to install FTDI drivers to make your device appear. Check with the manufacturer of your adapter for the latest versions. If you get stuck here, &lt;a href="https://www.twitter.com/wiaio"&gt;tweet us&lt;/a&gt; for support.&lt;/p&gt;

&lt;h3&gt;
  
  
  Setup Your Environment
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Install the Arduino IDE. You can download it for Mac OS X, Windows and Linux &lt;a href="https://www.arduino.cc/en/main/software"&gt;here&lt;/a&gt;. &lt;/li&gt;
&lt;li&gt;Start the Arduino application and open Preferences.&lt;/li&gt;
&lt;li&gt;Enter &lt;code&gt;http://arduino.esp8266.com/stable/package_esp8266com_index.json&lt;/code&gt; into the Additional Board Manager URLs. If you need more than one, they can be separated with commas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/1nAulaFjAsImkUIOmMuYk6/1aad804141f349bb44dbe6a477d01f48/Screen_Shot_2018-01-04_at_12.03.11.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/1nAulaFjAsImkUIOmMuYk6/1aad804141f349bb44dbe6a477d01f48/Screen_Shot_2018-01-04_at_12.03.11.png" alt="Screen Shot 2018-01-04 at 12.03.11"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to Tools &amp;gt; Board &amp;gt; Boards Manager.&lt;/li&gt;
&lt;li&gt;Search for &lt;code&gt;esp8266&lt;/code&gt;. When found, click Install.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/6hPtzz0sQ8Ue4yEkCQCawm/77fae51d3f6e065145e147418dc94c22/Screen_Shot_2018-01-04_at_12.04.59.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/6hPtzz0sQ8Ue4yEkCQCawm/77fae51d3f6e065145e147418dc94c22/Screen_Shot_2018-01-04_at_12.04.59.png" alt="Screen Shot 2018-01-04 at 12.04.59"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your ESPP8266 board type by going to Tools &amp;gt; Board, then choosing your type. For this example I am using &lt;code&gt;NodeMCU 1.0 (ESP-12E Module)&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Note: Check that Upload Speed is set to 115200 and the correct Port is selected.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/1tKBKsaU7ew8qmMwqiC2oI/0a3d20c07f7b6a70371c1baa9349fbf3/Screen_Shot_2018-01-04_at_12.06.55.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/1tKBKsaU7ew8qmMwqiC2oI/0a3d20c07f7b6a70371c1baa9349fbf3/Screen_Shot_2018-01-04_at_12.06.55.png" alt="Screen Shot 2018-01-04 at 12.06.55"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Create the Sketch
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Click on File &amp;gt; New to create a new Sketch.&lt;/li&gt;
&lt;li&gt;Copy and paste the Publish Event example code below. You can also view it on GitHub &lt;a href="https://github.com/wiaio/wia-board-examples/tree/master/Arduino/ESP8266"&gt;here&lt;/a&gt;. In that directly you will see how to publish both Events and Locations.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/**
 * PublishEvent.ino
 *
 *  Created on: 09.01.2017
 *
 */

#include &amp;lt;Arduino.h&amp;gt;

#include &amp;lt;ESP8266WiFi.h&amp;gt;
#include &amp;lt;ESP8266WiFiMulti.h&amp;gt;

#include &amp;lt;ESP8266HTTPClient.h&amp;gt;

#define USE_SERIAL Serial

ESP8266WiFiMulti WiFiMulti;

const char* ssid     = "your-ssid";
const char* password = "your-password";

// get this from the wia dashboard. it should start with `d_sk`
const char* device_secret_key = "your-device-secret-key";

void setup() {
    USE_SERIAL.begin(115200);
    //USE_SERIAL.setDebugOutput(true);

    WiFi.mode(WIFI_STA);
    WiFiMulti.addAP(ssid, password);
}

void loop() {
    // wait for WiFi connection
    if((WiFiMulti.run() == WL_CONNECTED)) {
        HTTPClient http;

        USE_SERIAL.print("[HTTP] begin...\n");

        // configure wia rest api
        http.begin("http://api.wia.io/v1/events");

        USE_SERIAL.print("[HTTP] POST...\n");

        // set authorization token
        http.addHeader("Authorization", "Bearer " + String(device_secret_key));

        // set content-type to json
        http.addHeader("Content-Type", "application/json");

        // start connection and send HTTP headers. replace name and data values with your own.
        int httpCode = http.POST("{\"name\":\"temperature\",\"data\":21.5}");

        // httpCode will be negative on error
        if(httpCode &amp;gt; 0) {
            // HTTP header has been send and Server response header has been handled
            USE_SERIAL.printf("[HTTP] POST... code: %d\n", httpCode);

            // file found at server
            if(httpCode == HTTP_CODE_OK) {
                String payload = http.getString();
                USE_SERIAL.println(payload);
            }
        } else {
            USE_SERIAL.printf("[HTTP] POST... failed, error: %s\n", http.errorToString(httpCode).c_str());
        }

        http.end();
    }

    delay(10000);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Replace the following values of the following variables:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;ssid&lt;/code&gt; with your WiFi network name.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;password&lt;/code&gt; with your WiFi network password.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;device_secret_key&lt;/code&gt; with your device secret key from earlier (the one that begins with &lt;code&gt;d_sk&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Verify/Compile the code. If it runs correctly then go to Sketch &amp;gt; Upload to send it to your ESP8266.&lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/3zDozXJcEEC8mGkAIUgqWE/fe893983954906786622377197bf18f6/Screen_Shot_2018-01-04_at_12.16.34.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/3zDozXJcEEC8mGkAIUgqWE/fe893983954906786622377197bf18f6/Screen_Shot_2018-01-04_at_12.16.34.png" alt="Screen Shot 2018-01-04 at 12.16.34"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;That's it folks!&lt;/p&gt;

&lt;p&gt;If you need any help with getting setup, &lt;a href="https://twitter.com/wiaio"&gt;tweet us&lt;/a&gt; or email &lt;a href="//mailto:support@wia.io"&gt;support@wia.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;References&lt;/em&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://www.espressif.com"&gt;Espressif Systems&lt;/a&gt; are a world-leading Internet-of-Things company. They built the widely popular ESP8266 and ESP32 chips. They are an innovative team of chip-design specialists, software/firmware developers and marketers. And they are committed to providing the best IoT devices and software platforms in the industry.&lt;/p&gt;

</description>
      <category>iot</category>
      <category>esp8266</category>
    </item>
    <item>
      <title>Make Sense of Your Sigfox Data Using Wia</title>
      <dc:creator>Conall Laverty</dc:creator>
      <pubDate>Wed, 03 Jan 2018 10:33:04 +0000</pubDate>
      <link>https://forem.com/conalllaverty/make-sense-of-your-sigfox-data-using-wia-2jb8</link>
      <guid>https://forem.com/conalllaverty/make-sense-of-your-sigfox-data-using-wia-2jb8</guid>
      <description>&lt;p&gt;Hey All,&lt;br&gt;
Today we're going to look at turning your Sigfox data into a human readable form that you can easily use in your applications. Before we start, have a look at the &lt;a href="https://blog.wia.io/how-to-integrate-any-sigfox-device-with-wia"&gt;How To Integrate Any Sigfox Device With Wia&lt;/a&gt; tutorial to get your devices connected to Wia.&lt;/p&gt;

&lt;p&gt;For this tutorial, my Event data will contain the hexadecimal string &lt;code&gt;aabbccdd&lt;/code&gt;. We will show how to convert this to binary, take the first 6 bits as our temperature reading and create a new Event.&lt;/p&gt;

&lt;h3&gt;
  
  
  Create a Flow
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Go to the &lt;code&gt;Flows&lt;/code&gt; and click &lt;code&gt;Create Flow&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Enter a name for your &lt;code&gt;Flow&lt;/code&gt;. I'm going to call mine &lt;code&gt;Translate Sigfox Data&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;You will then be redirected to the Flow Studio.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/3gIRuDg17ayQUIa6gkOSIY/5e74ca322cea61a7b41b0716b7256a46/Screen_Shot_2018-01-01_at_14.48.11.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/3gIRuDg17ayQUIa6gkOSIY/5e74ca322cea61a7b41b0716b7256a46/Screen_Shot_2018-01-01_at_14.48.11.png" alt="Screen Shot 2018-01-01 at 14.48.11"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Add a Trigger Node
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;In the Flow Studio, drag over an Event trigger node from the panel on the left.&lt;/li&gt;
&lt;li&gt;Select the node, enter &lt;code&gt;sigfoxDataUplink&lt;/code&gt; as the name of the Event in the panel on the right and click &lt;code&gt;Update&lt;/code&gt;.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/4Ytayplm4E2AWAmKYmkyic/d628ec1f07899fb9d158b70a442f0acc/Screen_Shot_2018-01-01_at_13.12.56.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/4Ytayplm4E2AWAmKYmkyic/d628ec1f07899fb9d158b70a442f0acc/Screen_Shot_2018-01-01_at_13.12.56.png" alt="Screen Shot 2018-01-01 at 13.12.56"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Add a Logic Node
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Drag over a &lt;code&gt;Run Function&lt;/code&gt; logic node from the panel on the left. This node allows you to inject your own Javascript and manipulate the data flowing through.&lt;/li&gt;
&lt;li&gt;Copy the code below into the &lt;code&gt;Code Block&lt;/code&gt; and click &lt;code&gt;Update&lt;/code&gt;.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let sigfoxData = event.data.sigfoxData;
let binaryData = parseInt(sigfoxData, 16).toString(2);
let tempBinary = binaryData.slice(0, 6);
let result = parseInt(tempBinary, 2).toString(10);
event.data = result;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/1P82GawV6wIMO8Ss8OUeUM/dda1ea3b3369bd01b61ed186a15697dd/Screen_Shot_2018-01-01_at_15.07.29.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/1P82GawV6wIMO8Ss8OUeUM/dda1ea3b3369bd01b61ed186a15697dd/Screen_Shot_2018-01-01_at_15.07.29.png" alt="Screen Shot 2018-01-01 at 15.07.29"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Add an Output Node
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Drag over an &lt;code&gt;Event&lt;/code&gt; output node from the panel on the left.&lt;/li&gt;
&lt;li&gt;Enter &lt;code&gt;temperature&lt;/code&gt; as the name of the Event.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/18ntUPD9IUSWoOgoOUsMMw/b8ad1506d4b91092aa1818ab2e3230f0/Screen_Shot_2018-01-01_at_15.07.21.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/18ntUPD9IUSWoOgoOUsMMw/b8ad1506d4b91092aa1818ab2e3230f0/Screen_Shot_2018-01-01_at_15.07.21.png" alt="Screen Shot 2018-01-01 at 15.07.21"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Connect the Nodes
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Click on the white diamond shape at the bottom of the Event node and drag the line to the input of the Logic node.
&lt;/li&gt;
&lt;li&gt;Click on the white diamond shape at the bottom of the Logic node and drag the line to the input of the Output node.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/74yWEqqklacqyQMmQKcaEQ/224b7e48b36f469be0cb49a1e461f14b/Screen_Shot_2018-01-01_at_15.07.48.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/74yWEqqklacqyQMmQKcaEQ/224b7e48b36f469be0cb49a1e461f14b/Screen_Shot_2018-01-01_at_15.07.48.png" alt="Screen Shot 2018-01-01 at 15.07.48"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Add Flow to Your Device
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Go to &lt;code&gt;Devices&lt;/code&gt; and select the Device your would like to add the Flow to.&lt;/li&gt;
&lt;li&gt;Click on &lt;code&gt;Flows&lt;/code&gt; in the subnav then click on &lt;code&gt;Enable&lt;/code&gt; beside the Flow name.
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Run the Flow
&lt;/h3&gt;

&lt;p&gt;Publish an Event from the Device and you will see the new &lt;code&gt;temperature&lt;/code&gt; Event come through.&lt;/p&gt;

&lt;h3&gt;
  
  
  (Optional) Create Multiple Events in the Same Flow
&lt;/h3&gt;

&lt;p&gt;If you wish to create multiple events, just follow the previous steps for your other data points.&lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/3RIBfJoBS82IsCYyWacq46/77a636a32f3a5cd6d14b334b833e4091/Screen_Shot_2018-01-03_at_10.12.58.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/3RIBfJoBS82IsCYyWacq46/77a636a32f3a5cd6d14b334b833e4091/Screen_Shot_2018-01-03_at_10.12.58.png" alt="Screen Shot 2018-01-03 at 10.12.58"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;That's all folks!&lt;/p&gt;

&lt;p&gt;P.S. If you need any help with getting setup, &lt;a href="https://twitter.com/wiaio"&gt;tweet us&lt;/a&gt; or email &lt;a href="//mailto:support@wia.io"&gt;support@wia.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;References&lt;/em&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://www.sigfox.com"&gt;Sigfox&lt;/a&gt; is a French Internet of Things (IoT) company founded in 2009 that builds wireless networks to connect low-energy narrowband objects such as electricity meters, smartwatches, and washing machines, which need to be continuously on and emitting small amounts of data.&lt;/p&gt;

</description>
      <category>iot</category>
      <category>sigfox</category>
      <category>wia</category>
      <category>tutorials</category>
    </item>
    <item>
      <title>Send SMS Messages From Your IoT Projects Using Wia &amp; Twilio</title>
      <dc:creator>Conall Laverty</dc:creator>
      <pubDate>Wed, 03 Jan 2018 10:32:13 +0000</pubDate>
      <link>https://forem.com/conalllaverty/send-sms-messages-from-your-iot-projects-using-wia--twilio-27il</link>
      <guid>https://forem.com/conalllaverty/send-sms-messages-from-your-iot-projects-using-wia--twilio-27il</guid>
      <description>

&lt;p&gt;Hi All,&lt;br&gt;&lt;br&gt;
Today we're going to look at sending SMS messages from your IoT devices using &lt;a href="https://www.wia.io"&gt;Wia&lt;/a&gt; and &lt;a href="https://www.twilio.com"&gt;Twilio&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;P.S. If you want to see your devices on iOS and Android, pre-register &lt;a href="https://wia.io/beta"&gt;here&lt;/a&gt; for our beta.  &lt;/p&gt;

&lt;h3&gt;
  
  
  Create Your Wia Account
&lt;/h3&gt;

&lt;p&gt;If you haven't already got one, &lt;a href="https://dashboard.wia.io/signup"&gt;click here&lt;/a&gt; to sign up.  &lt;/p&gt;

&lt;h3&gt;
  
  
  Setup a Space
&lt;/h3&gt;

&lt;p&gt;Once logged in, setup a new Space for your devices. I'm going to call mine &lt;code&gt;My Devices&lt;/code&gt;. When your Space is ready, you should see a screen like the one below.  &lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/1bfPDxMf4s0SyaOSkCEsum/f0dc8f7ebe0076a222b495d36376f4f7/Screen_Shot_2018-01-01_at_12.38.44.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/1bfPDxMf4s0SyaOSkCEsum/f0dc8f7ebe0076a222b495d36376f4f7/Screen_Shot_2018-01-01_at_12.38.44.png" alt="Screen Shot 2018-01-01 at 12.38.44"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Start Setting Up Integration
&lt;/h3&gt;

&lt;p&gt;Open the Space dropdown, by clicking on the Space name in the top left corner, and click &lt;code&gt;Settings&lt;/code&gt;. Select &lt;code&gt;Integrations&lt;/code&gt; in the sidebar.  &lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/2VTGU7kVDayOGikwUUm6iO/5a16cc0c4d5b2ac0cee1027a4e75155e/Screen_Shot_2018-01-01_at_12.50.12.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/2VTGU7kVDayOGikwUUm6iO/5a16cc0c4d5b2ac0cee1027a4e75155e/Screen_Shot_2018-01-01_at_12.50.12.png" alt="Screen Shot 2018-01-01 at 12.50.12"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the &lt;code&gt;Twilio&lt;/code&gt; row, click &lt;code&gt;Setup&lt;/code&gt; to begin setting up the integration.   &lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/3BLByHGp6gc46eQGw0O0aM/f846a3dbdbf6f1a5201d17c216e5bb6f/Screen_Shot_2018-01-01_at_12.50.16.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/3BLByHGp6gc46eQGw0O0aM/f846a3dbdbf6f1a5201d17c216e5bb6f/Screen_Shot_2018-01-01_at_12.50.16.png" alt="Screen Shot 2018-01-01 at 12.50.16"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Get Your Twilio API Keys
&lt;/h3&gt;

&lt;p&gt;If you don't already have a Twilio account, &lt;a href="https://www.twilio.com/try-twilio"&gt;click here&lt;/a&gt; to set one up for free.  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the &lt;a href="https://www.twilio.com/console"&gt;Twilio Console&lt;/a&gt; and login.&lt;/li&gt;
&lt;li&gt;In the &lt;code&gt;Project Info&lt;/code&gt; panel, copy and paste &lt;code&gt;Account Sid&lt;/code&gt; and &lt;code&gt;Auth Token&lt;/code&gt; into the integration panel in Wia and click &lt;code&gt;Create Integration&lt;/code&gt;.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/2q7P7Y0hxCgGE04IgyqeEu/3d3b4168d3522bf98ce36b4947e65285/Screen_Shot_2018-01-01_at_12.38.54.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/2q7P7Y0hxCgGE04IgyqeEu/3d3b4168d3522bf98ce36b4947e65285/Screen_Shot_2018-01-01_at_12.38.54.png" alt="Screen Shot 2018-01-01 at 12.38.54"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You will need to setup a phone number before you can setup SMS. Go to &lt;a href="https://www.twilio.com/console/phone-numbers/incoming"&gt;Phone Numbers&lt;/a&gt; and check you have one setup.  &lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/2Cbtk7RoEUsguIoWeAeSoE/b5d450e480584a1439c5bd54d9f525ff/Screen_Shot_2018-01-01_at_12.39.11.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/2Cbtk7RoEUsguIoWeAeSoE/b5d450e480584a1439c5bd54d9f525ff/Screen_Shot_2018-01-01_at_12.39.11.png" alt="Screen Shot 2018-01-01 at 12.39.11"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Create a Flow
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Go to the &lt;code&gt;Flows&lt;/code&gt; and click &lt;code&gt;Create Flow&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Enter a name for your &lt;code&gt;Flow&lt;/code&gt;. I'm going to call mine &lt;code&gt;Send SMS For Temperature&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;You will then be redirected to the Flow Studio.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/3QkJqW7Oh2AGmEY0kMc68G/c7b43c184778c7b2bbcfd9a34927afad/Screen_Shot_2018-01-01_at_12.49.23.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/3QkJqW7Oh2AGmEY0kMc68G/c7b43c184778c7b2bbcfd9a34927afad/Screen_Shot_2018-01-01_at_12.49.23.png" alt="Screen Shot 2018-01-01 at 12.49.23"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Add a Trigger Node
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;In the Flow Studio, drag over an Event trigger node from the panel on the left.&lt;/li&gt;
&lt;li&gt;Select the node, enter &lt;code&gt;temperature&lt;/code&gt; as the name of the Event in the panel on the right and click &lt;code&gt;Update&lt;/code&gt;.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/4Ytayplm4E2AWAmKYmkyic/d628ec1f07899fb9d158b70a442f0acc/Screen_Shot_2018-01-01_at_13.12.56.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/4Ytayplm4E2AWAmKYmkyic/d628ec1f07899fb9d158b70a442f0acc/Screen_Shot_2018-01-01_at_13.12.56.png" alt="Screen Shot 2018-01-01 at 13.12.56"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;h3&gt;
  
  
  Add an Output Node
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Drag over an SMS output node from the Twilio section in the panel on the left.&lt;/li&gt;
&lt;li&gt;Select the node, then on the panel on the right, do the following:&lt;/li&gt;
&lt;li&gt;Choose your &lt;code&gt;From&lt;/code&gt; phone number&lt;/li&gt;
&lt;li&gt;Enter your &lt;code&gt;To&lt;/code&gt; phone number (NOTE: enter the country code and have no spaces i.e. +14568893405).&lt;/li&gt;
&lt;li&gt;Enter your &lt;code&gt;Body&lt;/code&gt; message. I'm going to set mine as &lt;code&gt;Temperature is ${event.data}&lt;/code&gt;. This takes the temperature data from the Event. we are going to send. You can see more variables by clicking the &lt;code&gt;Show variables panel&lt;/code&gt; link.
&lt;/li&gt;
&lt;li&gt;Click &lt;code&gt;Update&lt;/code&gt; to save your changes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/531iBToQbeE4gGsAgu2OoG/bbf306d36b0cb73a8377d7ec4881e247/Screen_Shot_2018-01-01_at_12.51.40.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/531iBToQbeE4gGsAgu2OoG/bbf306d36b0cb73a8377d7ec4881e247/Screen_Shot_2018-01-01_at_12.51.40.png" alt="Screen Shot 2018-01-01 at 12.51.40"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Connect the Nodes
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Click on the white diamond shape at the bottom of the Event node and drag the line to the input of the Output node.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/f36FnnptaoKgsKYgEoWQa/11fdf042fd9eb92efb982876173f5899/Screen_Shot_2018-01-01_at_12.51.46.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/f36FnnptaoKgsKYgEoWQa/11fdf042fd9eb92efb982876173f5899/Screen_Shot_2018-01-01_at_12.51.46.png" alt="Screen Shot 2018-01-01 at 12.51.46"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Add Flow to Your Device
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Go to &lt;code&gt;Devices&lt;/code&gt; and select the Device your would like to add the Flow to.&lt;/li&gt;
&lt;li&gt;Click on &lt;code&gt;Flows&lt;/code&gt; in the subnav then click on &lt;code&gt;Enable&lt;/code&gt; beside the Flow.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/Zd25BuY6QMmyG2UwSaSCc/93c1a284b52c19935ee97a0a02c5d08d/Screen_Shot_2018-01-01_at_12.56.00.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/Zd25BuY6QMmyG2UwSaSCc/93c1a284b52c19935ee97a0a02c5d08d/Screen_Shot_2018-01-01_at_12.56.00.png" alt="Screen Shot 2018-01-01 at 12.56.00"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Run the Flow
&lt;/h3&gt;

&lt;p&gt;Publish an Event from the Device and you will see the SMS message come through.  &lt;/p&gt;

&lt;p&gt;That's all folks!&lt;/p&gt;

&lt;p&gt;P.S. If you need any help with getting setup, &lt;a href="https://twitter.com/wiaio"&gt;tweet us&lt;/a&gt; or email &lt;a href="mailto:support@wia.io"&gt;support@wia.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;References&lt;/em&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://www.twilio.com"&gt;Twilio&lt;/a&gt; is a developer platform for communications. Software teams use Twilio API to add capabilities like voice, video, and messaging to their applications. This enables businesses to provide the right communications experience for their customers. &lt;/p&gt;


</description>
      <category>internetofthings</category>
      <category>wia</category>
      <category>twilio</category>
      <category>tutorials</category>
    </item>
    <item>
      <title>How To Integrate Any Sigfox Device With Wia</title>
      <dc:creator>Conall Laverty</dc:creator>
      <pubDate>Fri, 15 Dec 2017 14:25:10 +0000</pubDate>
      <link>https://forem.com/conalllaverty/how-to-integrate-any-sigfox-device-with-wia-a7</link>
      <guid>https://forem.com/conalllaverty/how-to-integrate-any-sigfox-device-with-wia-a7</guid>
      <description>&lt;p&gt;Hey Folks!&lt;br&gt;
We've just released a whole new way to easily integrate any of your &lt;a href="https://www.sigfox.com"&gt;Sigfox&lt;/a&gt; devices with the &lt;a href="https://www.wia.io"&gt;Wia&lt;/a&gt; cloud platform. Here's the steps you need to follow to get up and going.&lt;/p&gt;

&lt;p&gt;P.S. If you want to see your devices on iOS and Android, pre-register &lt;a href="https://wia.io/beta"&gt;here&lt;/a&gt; for our beta.&lt;/p&gt;

&lt;h3&gt;
  
  
  Create Your Wia Account
&lt;/h3&gt;

&lt;p&gt;If you haven't already got one, &lt;a href="https://dashboard.wia.io/signup"&gt;click here&lt;/a&gt; to sign up.&lt;/p&gt;

&lt;h3&gt;
  
  
  Setup a Space
&lt;/h3&gt;

&lt;p&gt;Once logged in, setup a new Space for your devices. I'm going to call mine &lt;code&gt;My Sigfox Devices&lt;/code&gt;. When your Space is ready, you should see a screen like the one below.&lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/14Hdt1PmZkkgwO2cgaki6M/5773ead70b88b9d869412006d9a5ec0b/screencapture-dashboard-wia-io-spaces-created-1513170238630.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/14Hdt1PmZkkgwO2cgaki6M/5773ead70b88b9d869412006d9a5ec0b/screencapture-dashboard-wia-io-spaces-created-1513170238630.png" alt="screencapture-dashboard-wia-io-spaces-created-1513170238630"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Start Setting Up Integration
&lt;/h3&gt;

&lt;p&gt;Open the Space dropdown, by clicking on the Space name in the top left corner, and click &lt;code&gt;Settings&lt;/code&gt;. Select &lt;code&gt;Integrations&lt;/code&gt; in the sidebar.&lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/268l3mg23qUAW4qkGC4imy/059055b9823a3307bcf9e5369f5b1138/screencapture-dashboard-wia-io-spaces-spc_FO431hY1-settings-integrations-1513170427867.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/268l3mg23qUAW4qkGC4imy/059055b9823a3307bcf9e5369f5b1138/screencapture-dashboard-wia-io-spaces-spc_FO431hY1-settings-integrations-1513170427867.png" alt="screencapture-dashboard-wia-io-spaces-spc FO431hY1-settings-integrations-1513170427867"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click &lt;code&gt;Setup&lt;/code&gt; to begin setting up the integration. &lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/2KeACAm7ny2iCcUgC4Ekwu/6136f6976e8852e4118cccb6654d0af8/screencapture-dashboard-wia-io-spaces-spc_FO431hY1-settings-integrations-sigfox-1513170504931.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/2KeACAm7ny2iCcUgC4Ekwu/6136f6976e8852e4118cccb6654d0af8/screencapture-dashboard-wia-io-spaces-spc_FO431hY1-settings-integrations-sigfox-1513170504931.png" alt="screencapture-dashboard-wia-io-spaces-spc FO431hY1-settings-integrations-sigfox-1513170504931"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  How to get your Sigfox API keys
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Go to the &lt;a href="https://backend.sigfox.com"&gt;Sigfox dashboard&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Go to Group &amp;gt; &lt;code&gt;Your Group Name&lt;/code&gt; &amp;gt; API Access&lt;/li&gt;
&lt;li&gt;To generate your API keys, follow these steps:

&lt;ul&gt;
&lt;li&gt;Click on &lt;code&gt;New&lt;/code&gt; in the top right hand corner&lt;/li&gt;
&lt;li&gt;Enter Wia as the name&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Add DEVICES_MESSAGES[R]&lt;/code&gt; option and generate keys&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/2fUJXoshJSYY4gEwEYOYUO/c77621f95ef4d816238000fb11bfcd81/screencapture-backend-sigfox-api-user-59b91a779058c21b41b8d96c-list-1513171158652.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/2fUJXoshJSYY4gEwEYOYUO/c77621f95ef4d816238000fb11bfcd81/screencapture-backend-sigfox-api-user-59b91a779058c21b41b8d96c-list-1513171158652.png" alt="screencapture-backend-sigfox-api-user-59b91a779058c21b41b8d96c-list-1513171158652"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Copy and paste the Login and Password keys into the input fields in Wia and click &lt;code&gt;Create Integration&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/2nnSURxvEkgawoiOuwwUOu/07cfb4f2096d8cae1d805de2a0e94f59/screencapture-dashboard-wia-io-spaces-spc_FO431hY1-settings-integrations-sigfox-1513170596442.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/2nnSURxvEkgawoiOuwwUOu/07cfb4f2096d8cae1d805de2a0e94f59/screencapture-dashboard-wia-io-spaces-spc_FO431hY1-settings-integrations-sigfox-1513170596442.png" alt="screencapture-dashboard-wia-io-spaces-spc FO431hY1-settings-integrations-sigfox-1513170596442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  How to setup your Sigfox callback
&lt;/h3&gt;

&lt;p&gt;Now that you've setup the integration. Let's setup the callback for your devices.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the &lt;a href="https://backend.sigfox.com"&gt;Sigfox dashboard&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Select Device Type, then the name of the device type you would like to integrate&lt;/li&gt;
&lt;li&gt;On the left, select Callbacks

&lt;ul&gt;
&lt;li&gt;Note: If there are current any Wia callbacks, remove them&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Click New in the top left corner to create a new callback&lt;/li&gt;
&lt;li&gt;Select Custom Callback and enter the parameters below:

&lt;ul&gt;
&lt;li&gt;Type: &lt;code&gt;DATA&lt;/code&gt; &lt;code&gt;UPLINK&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Channel: &lt;code&gt;URL&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Url pattern: &lt;code&gt;https://api.wia.io/v1/events&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Use HTTP method: &lt;code&gt;POST&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Headers&lt;/li&gt;
&lt;li&gt;header: &lt;code&gt;Authorization&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;value: &lt;code&gt;Bearer [YOUR INBOUND KEY]&lt;/code&gt;

&lt;ul&gt;
&lt;li&gt;Note: See inbound key below that starts with &lt;code&gt;ik_&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Content Type: &lt;code&gt;application/json&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Body: Copy and paste text from &lt;a href="https://gist.github.com/conalllaverty/49ba5a6cdefd853a43662d0349b30338"&gt;here&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Click Ok&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="//images.contentful.com/i5evrz7h2uo7/5bXhqFyVK8wiS2OCukseQw/e40cefee0625f7990c16b2aa0ef3acc2/screencapture-backend-sigfox-devicetype-59c178829e93a154e9374013-callbacks-5a2eb8043c87897b18442712-edit-1513171179662.png" class="article-body-image-wrapper"&gt;&lt;img src="//images.contentful.com/i5evrz7h2uo7/5bXhqFyVK8wiS2OCukseQw/e40cefee0625f7990c16b2aa0ef3acc2/screencapture-backend-sigfox-devicetype-59c178829e93a154e9374013-callbacks-5a2eb8043c87897b18442712-edit-1513171179662.png" alt="screencapture-backend-sigfox-devicetype-59c178829e93a154e9374013-callbacks-5a2eb8043c87897b18442712-edit-1513171179662"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Start sending data from any of your Sigfox devices of that device type and they will start to appear in Wia.&lt;/p&gt;

&lt;h3&gt;
  
  
  Invite People to Your Space (Optional)
&lt;/h3&gt;

&lt;p&gt;You can now share your Space with other users. Click on the Space name in the top left corner, go to &lt;code&gt;Settings&lt;/code&gt; then click &lt;code&gt;Users&lt;/code&gt; in the sidebar. Enter the email address of the person(s) you would like to invite.&lt;/p&gt;

&lt;p&gt;That's all folks!&lt;/p&gt;

&lt;p&gt;P.S. If you need any help with getting setup, &lt;a href="https://twitter.com/wiaio"&gt;tweet us&lt;/a&gt; or email &lt;a href="//mailto:support@wia.io"&gt;support@wia.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Reference&lt;/em&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://www.sigfox.com"&gt;Sigfox&lt;/a&gt; is a French Internet of Things (IoT) company founded in 2009 that builds wireless networks to connect low-energy narrowband objects such as electricity meters, smartwatches, and washing machines, which need to be continuously on and emitting small amounts of data.&lt;/p&gt;

</description>
      <category>iot</category>
      <category>sigfox</category>
      <category>programming</category>
      <category>wia</category>
    </item>
  </channel>
</rss>
