sigfox workshop with akeru & thethings.io

Post on 16-Jan-2017

612 Views

Category:

Engineering

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

WorkshopAKERU + THETHINGS.IO

Contribute

Contribute

Don’t forget to publish your experiments

Code Samples, HW design, fails … will be useful to other

people

We all start by copy/pasting ;)

Your own website, github, hackster.io, instructables … your

call!

We’re hiring !

Maker In Residence

(internship)

Build useful and/or funny

prototypes

Test new hardware

Publish & document them

Field Evangelist Europe

Run workshops

Talk at conferences

Support the community

Useful Resources

Workshop slides

http://bit.ly/SigfoxMakersTour

Q&A

http://

sigfox.cloud.answerhub.com/

Github

http://github.com/sigfox/makers-tour-resources

http://github.com/nicolsc

http://github.com/thethings/thethings.iO-Sigfox-SDK

Add your own !

Register

http://backend.sigfox.com/activate

Provider: Snootlab

Country : Ireland

Device ID: sticker on the board

PAC: check the list

The things.io

Data management platform

Free to use for attendees

thethings.iO analytics (1 of 3)Go to https://sigfox.thethings.io

Register @ thethings.iO

https://sigfox.thethings.io

Register user

Create a Sigfox product

HELLO WORLD

Hello World Sketch

Open the Arduino IDE

Select the board

Board type : Arduino Uno

Port : USB-something

Hello World Sketch#include <SoftwareSerial.h>

SoftwareSerial sigfox(5,4);

void setup(){

Serial.begin(9600);

sigfox.begin(9600);

sigfox.write("AT$SF=48 45 4c 4c 4f 20 57 4f 52 4c 44\r");

}

void loop(){

while (sigfox.available()){

Serial.print(sigfox.read());

}

}

Message received ?

http://backend.sigfox.com

Navigate to the devices menu in the top bar

Click on the ID of your device

Enter the messages menu from the left navigation

column

First callback

Callback setup

Device Type menu

Click on your device type name

Enter the Callbacks menu

Select new default callback

Callback setup

TYPE : DATA UPLINK

Choose a CHANNEL : URL (EMAIL for a quick test)

Url pattern: URL of your own server

Use HTTP method: GET/POST/PUT

Callback status

In the Devices > Messages panel, you have a indicator of the callback

status (an arrow)

Black : in progress

Green : Callback OK

Red : Callback KO

Click the arrow to display details.

KO means at least one of the callbacks failed

Downlink

How does it work ?

Send a message, with a downlink flag

Once message is sent, the module gets back to sleep

After 20s, it will wake up automatically, in Rx mode

It will wait 20s for a downlink message

Afterwards it will get back to sleep

Downlink setup

To setup an automatic callback :

Device Type > Info > Edit

In the Downlink data settings, set the following :

Downlink Mode : DIRECT

Set the following value : 123400000BADCAFE

How to request a downlink

Same AT command, with additional parameters

AT$SF=[hex byte]*, 2, 1

Handle the response

When entering Rx mode, the module will display

+RX BEGIN

Received frame (if any) will be displayed as:

+RX= [byte] [byte] [byte] [byte] [byte] [byte] [byte] [byte]

End of Rx mode

+RX END

Downlink callback

In Device Type > Info > Edit

change Downlink mode to CALLBACK

Create a new default callback, with TYPE : DATA |

BIDIR

Then set up your URL

Sample input output

AT$SF=55 50 4C 49 4E 4B, 2, 1

OK

+RX BEGIN

+RX=44 4F 57 4E 4C 49 4E 4B

+RX END

Sample code

Arduino

https://github.com/sigfox/makers-tour-resources/tree/

master/Akeru/downlink

Server side

https://github.com/nicolsc/sigfox-downlink

PR welcome in different languages

FIRST SKETCHWITH THETHINGS.IO CODE

Random number Sketch

Download the akeru library inside thethings.iO sigfox github

and place it to your Documents > Arduino > Libraries folder.

Open the Arduino IDE

Copy & Paste thethings.iO Arduino code from thethings.iO

Sigfox github

Board type : Arduino Uno

Message received ?http://backend.sigfox.com

Navigate to the devices menu in the top bar

Click on the ID of your device

Enter the Statistics menu from the left navigation

column

thethings.iO analytics (1 of 3)Go to Things Manager > Product Details

thethings.iO analytics (2 of 3)

TheThings.io callback

TYPE : DATA UPLINK

Choose a CHANNEL : URL

Url pattern: Paste your subscription URL

Use HTTP method: POST

thethings.iO analytics (3 of 3)Go to Cloud Code > Functions

Edit the sigfox_parser Function (thethings.iO

github)

thethings.iO analytics (3 of 3)Make a cool dashboard!

Go furtherUSING AN AKERU BOARD

Other AT commands

AT&V : Detailed info about the module

AT$SF=[hex byte]* : Send a frame

ATS300=[int] Schedule the emission of a keep-alive frame every [int] hours

AT&W : Save settings

ATI26 :Module temperature in °C

ATI27 : Module idle power supply voltage

Other AT commands

Arduino sample code + link to full references of

the TD1208 module

https://github.com/sigfox/makers-tour-resources/tree/

master/Akeru/mirror

Use the module only

The module has a Cortex M3 than you can

reprogram

Checkout the TD Next website for instructions

http://rfmodules.td-next.com/sdk/

Keep in touchNicolas

nicolas.lesconnec@sigf

ox.com

twitter: @nlesconnec

Anthony

anthony.charbonnier@sigf

ox.com

twitter: @Anth0_Carles & Bastian carles@thethings.io bastian@thethings.io

twitter: @thethingsiO

top related