Skip to main content


Showing posts from 2018

Google Cloud IotCore with Raspberry PI

In my previous blog post, I have written about the integration of Google Cloud IoTCore using UDOO and how the temperature information is sent up to Pub/Sub. In the post, I will describe the integration of Raspberry PI to Google Cloud IoTCore. The primary communication protocol between the sensors and the IoTHub is mosquitto MQTT.

For this setup, I have a temperature sensor using ESP8266 flashed with ESP Easy firmware. The ESP and sensor are battery power which set to wake up every 60 minutes to take the measurement and transfer this to Raspberry Pi. The IOT bridge is written in Python which bridges the internal MQTT messages and Google Cloud IoTCore.

The sensor is battery power using a 3rd party Nokia BL-5C (1020 mah) rechargeable battery. This can be cheaply purchased from many battery shops or online. I have used 2 versions of the Wemos Mini charging shield version (1.1and 1.2). The details on how to modify the version 1.1 to be able to read the voltage level of the battery can be f…

Smart Home Control Panel using ESP-Link

This post describes the control panel developed with a few open source software and libraries. The main purpose is to have a proof of concept that the various components can be put together to become a useful product.

I have built a smart home system controlled using Openhab and the hardware switches are primarily using Sonoff switches with Tasmota firmware. The switches are controlled using Openhab Habpanel using an Android Tablet. Generally, this is my preferred way of using the Android Tablet but the Arduino control panel is developed so that it can interface to external hardware at low cost.

The control panel is developed using ESP-Link firmware with the El-client APIs and the hardware is an ESP8266 and Mega2560 combi board.  Besides acting as a touchscreen based on/off switch, it is also an internet clock (ntp) and a doorbell buzzer.

The software/firmware/libraries are
ESP-Linkel-client APIs (interface to ESP-Link firmwareMCUFriends Arduino library to control the TFT screen.JOS me…

Two routers configuration for Smart Home

When setting up the smart home system using WIFI as the core network infrastructure, it is important to split the surfing traffic and smart home traffic. This will ensure that the smart switches respond timely. 

For my smart home setup, I have used 2  Asus routers (RT-AC1200G+ & RT- AC68U), one is configured as the main the other configured as the slave. There is no reason why a particular model is chosen as it is based on what I have on-hand but it is better to have dual-band routers because I will have 4 separate bands (Two 5Ghz and two 2.4 GHz) of network bandwidth.

The router is configured as a Master-slave mode with different subnets and network route is added to make sure that the traffic can flow both ways. The smart switches are all connected to a dedicated 2.4 GHz bandwidth and the remaining 3 bands are for normal surfing.

For normal surfing, in order to the client devices to automatic connect to the strongest signal frequency, all the SSIDs have to be the same.  So the clie…