Gadget Renesas

Linking Ideas and Electronics

GR Atelier

Title:ActionCode IOT Server

Displayed Name:Wichai Tossamartvorakul

ActionCode IOT Server

Concept / Overview
There are many IOT devices from different vendors in the market. When users want to control or reading values from these devices. They need to install each programs from different vendors to control devices. Users need to switch each program to control different IOT devices and need to know which devices control by which programs. ActionCode IOT Server (short as AIS) project propose to solve these problems. By assign each IOT devices' code called ActionCode. ActionCode can use to map UI for each IOT devices. And show the action relate to that devices both control and display sensors values. Users just read ActionCode which programmed in NFC tag or QR code printed on the control symbol. Control IOT make it simple just tap the devices symbol you need to control.

System Overview

Block diagram below show how system work. The ActionCode are programmed into NFC tags. These tag attached to symbol or picture of device we want to control. When users want to control. They just tab the mobile phone to that symbol. Mobile phone (with NFC) will read the ActionCode in the tag and send this code to AIS. AIS will map ActionCode with the devices and send back UI of selected device in HTML format. Users interact with devices via Web UI. AIS get response from mobile and send control or read sensors values from these IOT devices. ActionCode may not necessary an UI. It can be any pre-program series of action. Ex. Open the garage, Turn on Air con and turn on Light.(When you arrive home)




• NFC Tag and Mobile need to support NFC. (QR code may be used in the future)

• GR Peach responsible for Web server and control IOT devices.


• Tab the phone at the garage sticker in the car to open the garage.

• Tab at the door to open the lock and at the same time turn on light and Air con.

• Tab to see the camera inside the house or front door.

• Tab sensor symbol to read the temperature or humidity.

Future Roadmap

There are many possibilities to expand AIS in the future.

• Make it support QR code make it easy to print on any sticker or signboard. (NFC has advantage when you use it in dim light)

• Put more complex tasks or scenario in action code. For example, sleeping scene will turn off TV, light and adjust cool and fan's speed of air con.

• Link the input to output. For example tap the smart switch and tap the air con to link it together. You can then reprogram physical switch to control anything.




Summary of Video Demo

ActionCode IOT Server (AIS) will help users to control IOT device easily by using mobile phone. The phone should have NFC enabled or we can use QR Code for control

Demo 1
* Control various devices Ex Relay (Lamp) and Servo (Door Open and Close) Just by tapping on NFC sticker or using QR Code.

Demo 2
* Control devices using GR Peach program on Android phone for data feedback devices Ex. Temperature reading. Video Streaming from Webcam or control position of Servo.

Demo 3
* Add new devices by just tapping NFC sticker. If new device is detected, the New device page will show. If devices already added, program will show the control page of that device.
* Control devices with password protected devices. User need to input passcode to control devices











AIS is the platform that propose the way to control IOT devices seamlessly. Just by sending Action code to AIS. Different vendors of IOT devices can working together.

Further Enhancement
* More complex control with pre-action program depend on the scene. For example, when we leave home. We need to close all lamp and turn off the air con.
* Use https protocol for more secure sending data back and forth.
* More action added. For example timers set, routine schedule setting


NFC ActionCode Processing


Data Structure



Device Database



Action Code Mapping

Action code : PassCode,Object.ActionID,Argument for Action (Object and Action Id are integer numbers)

 Passcode : String Object = Process Location.


 ActionID = ActionGroup.ActionID.Arguments





ActionCode's Field






ActionCode's Field



ActionCode in GR Peach Project

Command send to GR_PEACH via http get

 Format : (GR Peach IP Address) /rpc/Actioncode/run,(passcode),(actioncode id), (argument 1)/ (argument2)



Action Code ID


Wichai Tossamartvorakul

Finalist, GR-PEACH Design Contest 2017 in ASEAN.