Unabiz has recently released the first Sigfox Monarch certified devkit. It is based on a LiteOn WSG309S module. The LiteOn module contains a St-Microelectronics based solution including a BlueNRG / S2LP in it.
In addition, the module board also have different sensors: temperature, humidity, pressure, air quality, accelerometer, magnetometer, light sensor, magnetic switch (reed switch).
You are able to use the module board as a standalone circuit. You directly program the LiteOn module. Or you can use the standard AT interface of the module and connect an Arduino MKR Zero board to use it.
In this post, we are going to see how to use the kit to test Sigfox Monarch solution.
UnaMKR kit content
The kit contains a LiteOn board, you can add an Arduino board. It comes with 2 antennas:
- BLE antenna (the pcb one)
- Sigfox antenna with it IPEX-SMA connector
In short, I would have appreciated a different type of antenna connector like a SMA directly connected on the board for the Sigfox one but honestly, regarding the density of component on the board, it’s better like this. Having a such IPEX-SMA connector is also an helper to install a such board is a plastic box for a prototype.
Usb modem / standalone mode
To simply access the LiteOn module, you do not need to use the Arduino board. You can directly connect an USB cable to the radio board and send your commands over a serial console.
The green box is the IPEX connector corresponding to the Sigfox antenna. The red jumper is corresponding to the power supply. You position it on the right to source the energy from the USB connector. The blue and pink jumpers position are on the right too. They connect the RX/TX lines of the module serial to the USB serial.
Once configured, you can connect the board to a computer serial line with a 115200/8/N/1 standard configuration. On my Mac I did not had to install any driver to make it working.
To test the module and the serial communication, you can simply type
To test the Monarch feature, you just need to type
AT$MONARCH=300 OK AT$ZONE? 1
The parameter 300 is corresponding to the number of seconds you want to wait for the Monarch beacon. The Sigfox Monarch beacon are sent every 5 minutes, this is why this value is given.
The command returns OK or FAILED. If you get an OK, you will be able to read the RCZ with the AT$ZONE? command.
You can find the list of the different AT commands here.
As you can see, the use of Monarch is really easy to get the information.
Monarch Power consideration
Monarch is power consuming if not correctly use.
During all the Monarch search (until the beacon is found) the power consumption average is 16,7mA @ 3.3V. This is corresponding to the 4 bands scan according to the Sigfox specification.
After the beacon has been received, you are able to predict the next beacon transmission and this information could be stored / used for the next AT$MONARCH call.
Unfortunately this is not the case in the given firmware: the command directly starts listening for beacon until the end, or until the beacon has been received.
It means you need to manage this information on your software stack.
By the way, accessing the last Monarch Beacon RSSI information would have been interesting to optimize your Monarch code. This information is not accessible or not documented.
Register the board
To register the devkit, you need to have the Sigfox ID and PAC. You need to type some command on the serial console:
AT$ID? 01020304 AT$PAC? 0102030405060708
With these information you can go to Sigfox devkit activation service.
Fire your first communication
Now, you can start transmitting data.
You an see the results in the Sigfox backend.
However, at this point, the antenna provided did not convinced me and I tried with a different one. I really do not recommend to use the antenna provided within the devkit. There is a big difference with a 868Mhz 1/4 wave antenna as you can see below. By the way, I do not have the spec of the given antenna, I assume it is centered on 915Mhz. For instance, the number of reached gateways, repeats and RSSI/SNR indicator are really better with another antenna. (same other conditions)
Module Power consumption
The transmission have a really efficient power consumption (this is the S2LP effect) with 25,6mA max current and a 0,105mWh total power for a 8 byte transmission at +14dB.
The module power consumption between two AT commands is 3.31mA. If you want to reduce this active sleep power you can switch the module in SLEEP mode.
This command changes the module state to deep sleep and the power consumption falls to 7uA when USB is disconnected and an external energy source is in use. In the same vein you get 9uA with USB. This sleep mode is really efficient for really long autonomy solution. Above all, the 7uA is the overall board consumption with all the sensors powered but sleeping.