5. About SIGFOX
• SIGFOX has invented a radiocommunication
protocol
• SIGFOX is operating a global network
• SIGFOX does not sell hardware components
• SIGFOX does not build connected solutions
6. New possibilities
• Direct Internet connection.
• No battery drain. Years of autonomy.
• Detect. Send. Receive.
• No configuration
7. In a nutshell
• Power on
• Send a message
• It’s picked up by n of our base stations
• Instantly forwarded to your own server
• That’s it
10. Why SIGFOX
• Hub-based technologies are not compatible with
independent devices
• Need for a protocol designed for the IoT, and
not one tweaked to address it.
11. Core concepts
• Energy efficiency
• Very Long Range
• Out of the box connectivity
• Outdoor + Indoor
• Two-way communication
• Low bandwidth, small messages
• Ultra Narrow Band
12. Energy efficiency
• Tx : ~25/30 mA for a few seconds
• 99.x% of the time, device is silent
• Idle consumption is key
• Idle : a few µA
13. Very Long Range
• Countryside : Tens of kms
• Cities : A few kms
• Direct line of sight : wow !
14. Out of the box
• Network is serving the devices, not the other
way round
• Device simply sends a frame, message is
detected by n base stations
• Message is validated / deduplicated by our
backend
15. Outdoor + indoor
• 868MHz has good propagation properties
• Radio waves are not magic
• Consider ~20dB of attenuation indoor, and
~30dB for light underground or tricky buildings
16. Two-way communication
• Send updates to your device(s)
• Default behaviour: wake up, send, back to sleep
• No passive Rx mode
• Device can receive a message upon request
• Every communication is instigated by the device
18. 12 bytes !?
• Yes. Seriously. 12 bytes.
• This is the available payload.
• You can put a lot of info in 96 bits
• 2^96 is a 30ish-digit number.
• 8 billions of billions of billions of possible values
19. Payload examples
• Full GPS Coordinates : 6 bytes
• Temperature : 2 bytes
• State reporting : 1 byte
• Hearbeat, update request : 0 byte
21. 140 times / day
• Not a technology limit
• Compliant with the European regulation: 1% duty
cycle
22. Money
• Most pricey subscription: €14/year
• A couple of devices, 140 messages/day
• The higher volume, the lower the price
• The lower number of messages, the lower the price
• Down to €1/year for large volumes & a couple of
messages/day
• Startup plan : €8/year, as if already 30k devices.
24. Security
• Each device is identified by a unique ID on the
network
• Each message is signed
• Servers managed by ourselves, in 2 french
datacenters.
• Security is never finished, permanent effort.
25. Signature
• Each message is accompanied by an hashed
signature, made from :
• the device id
• the device PK (unknown to the user)
• the payload
• internal increment
27. Encryption
• By default, the payload is not encrypted
• Encryption cost a lot of energy
• No « one size fits all » solution.
• Up to you to use the encryption most suited to
your case
28. Radio properties
• Great resistance to interferors
• Very difficult to jam
• Interception is hard
• UNB
• Unpredictable frequency
31. Ultra Narrow Band
• The SIGFOX protocol relies on the Ultra Narrow
Band technology
• A message : ~100Hz wide
• Each base station watch a 200KHz part of the
spectrum
• Hard part: detect message without knowledge
of the precise frequency or schedule
32. Ultra Narrow Band
• Why Ultra Narrow Band ?
• Easy analogy : cars vs motorbikes
43. USA
• Currently: San Francisco
• Early 2016 : 10 majors cities, including Atlanta,
Boston, Chicago, Dallas, Houston, Los Angeles
• And we’re just starting :)
46. Hello World
• Send a dummy message
• Check it on the SIGFOX website
• Forward it through the callback mechanism
• Store message in a database
• Display list of recorded events
52. • Track the location of any good or equipment
• Post theft devices
Logistics
53. Ifttt-like
• Press the button, send an
empty frame & trigger any pre
determined action
• « Mom I’m home ! »
• « Get me a taxi»
• Replay last order, ~Amazon Dash
54. « Silver economy »
• Health monitoring, fall alerts, ..
• Without the locked-in effect of gateway-based solutions
• Track the community-payed services effectiveness
• Did the carer really come every day for 2 hours ?
55. • Know when some equipment is about to fail
• Schedule maintenance works efficiently
Predictive maintenance
57. DIY Projects
• Connected wine cellar. Because french.
• Connected cat food dispenser. Because cats.
• Kitchen garden: temperature, moisture, …
• GPS Tracking of anything
58. You ?
• You can build a PoC very quickly
• Lot of funny stuff to make
• And lot of $$$ to make too ;)
• KISS, dumb device means:
• Cheap
• Less prone to failure
60. Hardware SIGFOX
• SIGFOX is not a hardware vendor
• Many established partners offer SIGFOX-ready
chips: Atmel, TI, Silicon Labs, Axsem, Atim, …
• Most Sub-GHz radio transceivers are
compatible, it’s just about a software upgrade.
61. Prototyping
• Arduino : Snootlab, SmartEverything
• Raspberry Pi : Yadom
• Can be bought one unit a time
• Get started within minutes
• Not for industrial use
62. Modules
• Easy to work with : AT commands
• Price range from ~10 to 20€
• Evaluation boards available from
manufacturers : Adeunis, Telecom Design,
Telit, ..
63. SoC, transceivers
• Texas Instruments, Atmel, SiLabs, Axsem, ..
• Cheap, a few $
• More complex to work with if not familiar
• Certification needed if you don’t stick to the
provided ref design.
64. Antenna
• Critical when doing radio
• 868MHz -> best case is 17cm (lambda/2)
• Helicoidal, patch, … antennas possible.
66. Get your data
• Part of the standard service.
• 3 ways
• View - website
• Pull - HTTP API
• Push - HTTP Callback
67. Common use case :
push callbacks
• Get notified each time of your devices send a
message
• Can trigger whatever you want : alarm,
notification, data processing, …
• Example here: http://github.com/nicolsc/sigfox-
callback-demo
74. Connected RFID reader
• Standard 125KHz RFID reader & tags
• Once a tag is detected, send its ID through
SIGFOX
• Update a live dashboard
• Do something else :)
78. Register
• http://backend.sigfox.com/activate
• Click SmartEverything
• Enter the device id of your board + the provided PAC
number
• Check http://192.168.5.38:1234/
• Operator : select SIGFOX_Spain
• Enter your personal info
79. Getting started
• Plug the SmartEverything board using a micro USB cable
• Plug the antenna ;)
• Check that it’s recognised by your computer
• $ ls /dev/tty.*
• Windows
• Launch Powershell
• > [System.IO.Ports.SerialPort]::getportnames()
80. Arduino setup
• Install the Arduino Zero core
• Tools > Boards > Board Manager
• Install the ASME core
• Tools > Boards > Manager (Again !), filter on type=Partner
• Choose the SmartEverything Board Type
• Tools > Boards
• Install the libs associated to each sensor (... and to the SIGFOX module)
• Sketch > Include Library > Manage Libraries ; Filter on
Type=Partner ; install each library
81. 1st Arduino Sketch
• Open the Arduino IDE
• Select Board Type > Smart Everything Fox (USB)
• Select the correct port
• File > Examples > SmartEverything > VL6180X >
AmbientLight
• Upload
• The blue LED on the board should blink
85. Callbacks menu
• On your device page, go to Info & click on the
device type
• On the device type page, you have a Callbacks
menu
• Then, click New on the top right corner
86.
87. Callback Setup
• You can choose to receive an email, or redirect
each message to a URL of your choice
• You can set the headers (content-type, ..), and
body format of the HTTP request
89. How does it work ?
• The Module send the frame, then sleep for 20s
• Then it enters Rx mode
• Waits 20s for a response
• Quits Rx mode & goes to deep sleep
90. Request a downlink
• Use the AT$SF command, with an additional
parameters
• AT$SF = [hex byte]*, 2, 1
92. Handle the response
• When entering Rx mode, the module will display
• +RX BEGIN
• Received frame will be displayed as
• +RX=[hex byte] [hex byte]…
• When leaving Rx mode, it will display
• +RX END
93. Handle the response
• Detect an input line starting with +RX= & parse it
as a series of hex bytes
• If no downlink message has been sent, you’ll
have no +RX= line, just the BEGIN & END flags