AllThingsTalk Maker. Make IoT ideas happen.

AllThingsTalk Maker is the developer platform by AllThingsTalk to rapidly connect your things and collect, visualize and use data in minutes. AllThingsTalk Maker supports your own custom binary data format which you can decode using the ABCL payload decoder.
AllThingsTalk Maker is free for prototyping purposes.

Set up the integration

Let’s say that you have a LoRaWAN device with temperature sensor and LED actuator and you want to connect it to Maker.

Now you can send the payload from TTN console and verify that it arrives in Maker:

In TTN console, go to Device tab

Use SIMULATE UPLINK to send a payload:

In Maker you will see temperature state updated to 23

​​Important: LoRaWAN class ‘A’ devices can only receive payload data (downlink messages) as a response on an uplink message. The network uses the receiving slot of an uplink message to send data towards the device as typically the device will go to sleep mode to conserve energy.

Actuate your device

Now that you’ve received your data in Maker, you can command your device from Maker, and turn on the LED. Before you do so, you can test by sending a command from Maker and receiving it in TTN console.

Create an actuator asset

Create a LED asset which you’ll use to send a command.

Choose + NEW ASSET

Create an Actuator with name LED and profile type boolean

Actuate your device with CBOR

The easiest way to test the actuations is by using CBOR. The message format which AllThingsTalk uses for CBOR is
{"<asset name>":<value>}.

For your RDK device, you’d need to implement a logic which would turn on the LED when a value comes from Maker. For example, when value true comes from the asset LED your code will set LED state to HIGH and the LED on your device would light up.

Actuate your device with ABCL

ABCL stands for AllThingsTalk Binary Conversion Language , and it’s a JSON-based, domain specific language, used for encoding and decoding of AllThingsTalk asset data to and from binary payloads. It gives you the freedom to specify your own decoding scheme on a per device level.

As opposed to CBOR, which sends A1 63 4C 45 44 F5 when you send true command from LED asset in Maker, with ABCL you can set a conversion which sends only FF for the same command. This results in much less data being used to achieve the same goal.

To set up a conversion in Maker, go to SETTINGS > Payload formats and check ☑️ Use ABCL to convert custom binary data.

Add a conversation which will translate the boolean state of LED actuator into the first byte of your binary payload:

{"actuate":[{"asset":"mode","field":{"byte":0,"type":"boolean"}}]}

Click on the asset LED, and from Command field send the command true:

Back in TTN console go to Data screen, and you’ll see the payload FF coming in:

You can now use Maker to collect your temperature readings, and turn on the LED on your device.