Posts Tagged ‘itead studio’

Sonoff Wireless Switches & Light Bulbs Now Work With Google Home

August 8th, 2017 No comments

ITEAD Studio Sonoff wireless switches can be controlled by voice commands using Amazon Alexa or Google Home, but so far, the latter was only possible by emulating Belkin Wemo switch in alternative open source firmwares such as ESPurna or Sonoff-Tasmota. For people who don’t want to update the firmware themselves, and instead prefer to use the stock firmware with eWelink mobile app, the manufacturer has now announced support for Google Home, on top of the already supported Amazon Alexa service.

Click to Enlarge

The instructions are explained in details in ITEAD’s blog post, but basically, you need to start Google Home app in your mobile, select your Google Home device, go to Home Control to add Devices, select Smart We Link, login to eWelink with your username/phone number and password, name the devices you want to control and you’re done.

You should now be able to control devices or rooms with voice commands such. For single port devices it’s easy:

OK Google, turn on the bedroom light.
Hey Google, turn off the bedroom light.

For switches with multiple sockets or switches you also need to add the name of the “gang”:

Hey Google, turn on dual switch light one.

You can set the color and dim your lights too:

Hey Google, turn on {light name}
Hey Google, turn {light name} green
Hey Google, set {light name} to 50%
OK Google, dim {light name}
Hey Google, brighten {light name}

If you have assigned devices to rooms, you can control a complete room, or all devices with one voice commands, for example:

OK Google, turn off all of the lights
Hey Google, turn on lights in living room

Some features are not supported, and it’s unclear whether they’ll ever be, such as setting timers, or adjusting the temperature threshold for SonoffTH10/TH16. Since I recently configured an Orange Pi Zero board with Google Assistant, I wanted to try, but Google Home app cannot detect my device. That’s normal as Google Assistant SDK release notes list this as an issue:

Account linking for third party services requires owning a Google Home and installing the Google Home application. This affects using services like Uber, or connecting to home automation devices like Hue.

That means you need an actual Google Home, and solutions like AIY Projects Voice Kit with Raspberry Pi 3 board won’t work, at least for now.

Sonoff G1 AC Powered Smart Power Switch Works Over 2G GSM/GPRS

July 22nd, 2017 1 comment

Today, I’ve searched for AC powered wireless switched similar to Sonoff devices, but with ESP32 instead in order to get WiFi and Bluetooth, since the latter is better to use with a battery powered buttons. I did find a DC powered board, but no AC powered ones yet. However, as I visited ITEAD website to check if they had anything of the sort, I discovered they had a new model called Sonoff G1, similar to Sonoff TH16, but instead of using WiFi, you can use 2G GSM/GPRS to control the switch remotely.

Sonoff G1 specifications:

  • Wireless Module – ST86 quad band GSM/GPRS module
  • GSM/GPRS connectivity
    • GSM850, EGSM900, DCS1800 and PCS1900 MHz support
    • GPRS multi-slot class 10, GPRS mobile station class B
    • 1.8V, 3V  SIM card slot
    • Transmit power: Class 4 (2W): GSM850, EGSM900; Class 1 (1W): DCS1800, PCS1900
  • Relay – Up to 16A (3000 Watts max)
  • Terminals – 6 terminals for mains and load’s ground, live and neutral signals. 90~250V AC (50/60Hz) input supported
  • Misc – LEDs for power and connection status, button for manual on/off
  • Standby Power Consumption – 1.0 mW
  • Dimensions – 114 x 52 x 32mm
  • Weight – 100 grams
  • Temperature range – Operating -40°C to +80°C, but recommended is 0 to 40°C… So go figure.

Such system could be useful if you need to control devices in remote locations, as long as you are in a zone not affected by 2G sunset like China and Europe.

You’ll need to open the device to insert your own SIM card, install the usual eWelink app, scan a QR code on the device to initialize it. Once this is done, you can turn it on/off, set timers, integrate it into scenes, and share it with other permitted users. Basically anything you can do with the WiFi model, including Amzon Alexa & (soon) Google Home support, but it adds checking the remaining balance. This is explained in more details in the Wiki and links there. There’s also Sonoff G2 model for mainland China with a built-in China Mobile SIM card. You’ll have to happy with using eWelink Android/iOS app, as that model is unlikely to hackable with a custom firmware.

ITEAD sells Sonoff G1 for $19.90 plus shipping.

Sonoff B1 is an $18 Hackable WiFi RGB LED E27 Light Bulb based on ESP8285 WiSoC

July 4th, 2017 6 comments

Earlier this year, I wrote about an ESP8266 based RGB LED “AI Light” lightbulb that was hacked to run ESPurna open source firmware. That’s all good, except some people tried to get one, and ended with a different hardware. So if you’d like something that’s more of a “sure thing”, ITEAD Studio has designed Sonoff B1 dimmable RGB LED E27 light bulb based on ESP8285 processor, and with a “4 pads” to allow for custom firmware flashing.

Sonoff B1 hardware specifications:

  • Typical Lumen Output – 600lm
  • Beam Angle – 120 degrees typ.
  • Color Temperature –  2800K-6500K & RGB full color
  • Connectivity – WiFi 802.11 b/g/n @ 2.4GHz
  • Power Supply – 90-260V AC 50/60Hz via E27 base
  • Power Consumption – Light off: 0.5W Max; rated power: 6W
  • Temperature Range – Operating: 0ºC~ 40ºC; storage: -20ºC~ 80ºC
  • Operating Humidity – 5%-90% RH

Sonoff B1 with stock firmware can be controlled using the usual eWelink Android / iOS app to turn the light on and off, define timers, select the color, and/or dim the light. The aopp also supports 4 scenes for resting, reading, partying and casual use that you can customize as you wish. The LED bulb is also compatible with Amazon Alexa, and Google Assistant services so you can use voice commands to control the light instead. Bear in mind that you may need to wait a little longer to get custom firmware working for it, unless you are willing to get your hands dirty. But this looks so similar to “AI Light”, that I’d expect a port not to be too difficult.

You can purchase Sonoff B1 light bulb for $18 + shipping on ITEAD Studio website.

Mini Review of Nextion Enhanced NX8048K070 7″ Display with Enclosure for HMI Applications

June 21st, 2017 3 comments

I reviewed some Nextion touchscreen a while ago. Those were 2.4″ and 5″ serial TFT displays with optional resistive touch support that could be used in standalone mode, or connected to an MCU board over UART to control external hardware. The user interface could be designed and emulated in Windows based Nextion Editor program before uploading it to the display via UART or micro SD card. ITEAD Studio has recently launched Nextion Enhanced NX8048K070 family of 7″ displays with resistive or capacitive touch panels, and support for GPIOs. The company sent me the capacitive model with enclosure for evaluation, so I’ll have a quick look at the hardware and Nextion Editor in this mini review.

Nextion Enhanced NX8048K070_011C Unboxing

I received it in a package from “ITEAD intelligent solutions” with basic description with

  • Model: NX8048L070_011C with enclosure
  • Outside dimensions : 275 x 170 x 50 mm (That’s the package dimensions)
  • Product size: 218 x 150 x 22.5 mm
  • Gross weight: 0.598kg

Click to Enlarge

The display comes with a UART cable, or small micro USB power board, and a wall mounting kit.

Click to Enlarge

If we check the other side of the display, we’ll find the UART connector on the left, a micro USB slot on the bottom right, and the GPIO connector that inconveniently requires a flat cable, so you’d have to make your own board to connect external hardware, or purchase the company’s $5 expansion board, which is not included in the kit by default. There’s also the almost-compulsory typo found on many devices made in China: “Human Mechine Interface”.

Click to Enlarge

The thickness is indeed 22 mm, but if you fully embed the display into a wall, the visible thickness will be 6 mm.

You may have to open the bottom cover, as you’ll need to add a battery in case you want to use the RTC function.

Click to Enlarge

Let’s have a look an the main IC while we have the case open:

I close the case back, and power the display via the micro USB power supply board, and a USB power adapter.

Click to Enlarge

It’s a simple demo with a background image, some text, a slider, and 4 different pages, which I’ll demonstrate below after doing some simple modifications.

Nextion Editor and NX8048K070 Demo Sample

Nextion Editor is a Windows program, but a while ago, I was told it also worked with Wine in Ubuntu. So I downloaded the latest version (v0.47), and while the installation started, it eventually failed in Ubuntu 16.04. So I reverted to using Windows 7 in VirtualBox. I also downloaded and extracted found at the bottom of Wiki page, which I then opened from Nextion Editor.

Click to Enlarge

The user interface will allow you to add various items from the Toolbox including text, scrolling text, numbers, buttons, pictures, progress bars, gauges, check boxes, and so on. As with the previous version, you’ll also need to import and convert font with a fixed size. The demo already has four of those defined. You can also add and link several pages with 4 pages used in the demo, and the Attributes section is used to defined parameters for the selected item

Click to Enlarge

I just added text. It should have been easy, but I was very confused at the beginning, since nothing would show up when I clicked on “Text” in toolbox. I could change the attributes, but the text would not be displayed. I went back to check the old review, and I used “Add Component” menu in Nextion v0.30 at the time, but that menu does not exist anymore. Finally, I noticed the 800×480 display was not shown completely, on the text was located on the top left of the UI. I delete the dozen text items I had created, and added “CNXSoft was here!” at the end of the list. The user interface is not really intuitive, so I’d still recommend to read the user guide, even some of the parts are outdated, as it should help getting started, and they have examples with Arduino. To control GPIOs on the display, you’d need to use cfgpio code.  In case, you run into troubles because the documentation is not quite as good as expected, you can always try your luck in the forums.

You can click on Compile to check for errors in your user interface, and then Debug to launch the simulator.

This will allow you to test the UI as if it was running in the display itself. You can even send keyboard or MCU commands. Once you are happy with the results, click on Operation->Upload to Nextion to upload the UI to the display. I had some troubles getting the display work when I connected it through my serial debug board via USB hub (the display would blink), but the problem was solved by connecting it directly to the USB power from my computer. The upload still failed as the demo is configured for the 5.0″ board, and it correctly detected a 7.0″ board. The fix was easy, as I just had to select Device ID, and change NX8048K050_011 to NX8048K070_011.

Click to Enlarge

After that the upload could start with the Nextion display properly detected.

It took 6 minutes and 35 seconds to upload the ~4MB user interface to the display, so it’s not really fast. That mean if you have  ~32MB UI, it would take close to 50 minutes. In that case, it would be much faster load the UI from the micro SD card. In that case, you need to copy the .tft file found via Nextion->File->Open build folder.

Here’s a quick overview and demo.

Nextion Enhanced 7″ display can be purchased for $88 with resistive touch and $108 with capacitive touch.

$23 Sonoff 4CH Pro 4-Channels WiFi & RF Switch Ships in a DIN Rail Enclosure

June 14th, 2017 10 comments

ITEAD Studio’s Sonoff family is a collection of really useful and inexpensive home automation devices which have been featured multiple times on CNX Software with either to stock firmware and eWelink app, or open source firmware developed by the community. I’m using a Sonoff TH16 to control a water pump, a Sonoff Pow to monitor my office’s power consumption, and Karl used some Sonoff switches to control his lights at home. The company has now launched Sonoff 4CH Pro with 4 relays that can be controlled with buttons on the unit, WiFi, or RF remote controls, and comes in a DIN Rail enclosure.

Sonoff 4CH Pro switch specifications:

  • Connectivity – ESP8266 WiFi module and 433 MHz receiver
  • Relays – 4x HUIKE 230V/10A relays (max 2200W per relays) with NC and NO connection
  • Configuration –  K5 & S6 switch for mode selection; K6 switch for time selection (0.5 to 4s)
  • Misc – 4x user button to turn on/off the relays, 4x LED for relay status, 1x WiFi LED; unpopulated header to program ESP8266 module
  • Power Supply – 5 to 24VDC via power barrel or 90 to 250VAC via “push buttons” terminal block

The board comes pre-loaded with a default firmware working with eWelink app for Android and iOS. The company explain there are three modes of operation which can be controlled with K5, K6 and S6 switches for each relay:

  • Self-locking mode – Each relay can be turn on and off independently.
  • Interlock mode – Only one of the relay can be turned on at a given time. For example if R1 is on, and your press R2 to turn it on, R1 will automatically turn off
  • Inching mode – A button press on the unit, mobile app, or RF/WiFi remote control will turn on the relay for X seconds as defined by K6 “delay” switch. This could be useful for locking mechanisms.

You can select modes per relay, for example R1 and R2 set to self-locking mode, and R3 and R4 to interlock mode. The company also explains you can connect two AC or DC motors using two relays per motor with only one motor controllable at a given time.

The device also supports on/off timer, and works with Alexa and Nest. Eventually, there could be open source firmware for Sonoff 4CH Pro with projects like ESPurna or Sonoff-Tasmota, since the company included the header to update the firmware as the did in their previous models.

Sonoff 4CH Pro is not available right now, but is still listed for $22.90 on ITEAD Studio website, and you can register your email to get informed when the product launched. Note that the RF remote is not included, and if you need it you can purchase it for $4.50 plus shipping.

Nextion Enhanced NX8048K070 is a 7″ Resistive or Capacitive Programmable Touch Display with an Optional Enclosure

May 15th, 2017 No comments

Nextion displays are designed to be controlled by MCU boards with the user interface designed in Nextion Editor drag-and-drop tool. ITEAD Studio launched them in 2015, and I played with Nextion 2.4″ and 5.0″ models, but at the time, I found the Windows only Nextion Editor program not to be that user-friendly and inconvenient to use, as for example, UI designs do not automatically scale across all display sizes. The company is now back with a 7″ model, available with resistive or capacitive touch panel, and featuring an ARM7 processor exposing 8 GPIOs.

Nextion Enhanced NX8048K070 (_011) specifications:

  • CPU – ARM7 processor @ 108 MHz with 8K RAM, 1024 EEPROM, 1024 bytes instruction buffer
  • Storage – 32MB flash memory, micro SD card slot
  • Display – 7″ TFT display with resistive or capacitive panel; resolution: 800×480; 65K colors; adjustable brightness: 0 to 230 nit
  • Expansion – 8x GPIOs including 4x PWM, 4-pin serial interface to MCU board
  • Misc – Built-in RTC + battery slot
  • Power Supply – 5V/2A through micro USB to 2-pin power board
  • Dimensions – Display + board only: 181 x 108 mm; enclosure: 218 x 150 x 22.50 mm
  • Weight – Display + board only: 268 g; with enclosure: 598 grams

The display can work in standalone mode controlling external hardware through the 8 GPIOs, or connected to an MCU board over serial. You’ll find a few more technical details in the Wiki. The UI designed in Nextion Editor is stored in the flash memory or micro SD card, and the MCU board can receive / send commands to get user input/update the display. Nextion Editor is still a Windows only program, but if my memory serves me well, it can also work with Linux through Wine using a /dev/ttyUSB0 to COM1 redirect.

There are four models: NX8048K070_011N without touch support (no sold for now), NX8048K070 with resistive touch sold for $81.90, as well as NX8048K070_011C and NX8048K070_011R both sold with enclosure, and either resistive or capacitive touch respectively for $88.00 and $108.00. It appears the model without enclosure has been selling for a few months already, and the models with enclosure are new.

Categories: Hardware Tags: display, itead studio, mcu, nextion

Some Sonoff TH16 and Sonoff POW Manufactured in December 2016 / January 2017 Are Being Recalled

March 1st, 2017 29 comments

Sonoff TH16 and Sonoff POW are inexpensive and useful wireless switches based on ESP8266 WiSoC. I’m using Sonoff TH16 to control a water pump, and Sonoff POW to monitor my office power consumption. I received mine in early November 2016, so they were probably manufactured sometimes in October. Does manufacturing month matter? Yes, it does, as ITEAD Studio has just issued a recall notice for both devices for a batch manufactured between December 2016 and January 2017.

The problem is that while the switches come with a 16A relay, the trace were not thick enough, and if you connect a device that draws enough power, they would heat enough to make the case slowly melt. The problem is that ITEAD Studio asked the factory to add “sufficient tin to the wires to ensure low enough impedances”, but they did not quantify it clearly, and that’s why the product is not safe to use.

If you are affected, the good thing is the company owed their mistake, and you can contact the company for a refund or replacement by providing a photo or video, as well as your order number. What they did not say exactly is how to identify a product with the defect, that is before it melts…

In order to avoid the issue in the future, they’ve “optimized their workflow”, and “are seeking for better solution to improve the product during the manufacturing process”.

Karl’s Home Automation Project – Part 1: Home Assistant & YAML, MQTT, Sonoff, and Xmas Lights

February 27th, 2017 30 comments

Karl here. I am here to write about my home automation project. First thing I want to say is that I am very cost conscious and I don’t mind putting in extra effort into the setup of things to keep costs down. I did invest a lot of time and had to do a lot of reading to get my project going. It took while and I received a lot of groans from my wife while testing. I am still in the process of tweaking things.

I started watching a series of videos on YouTube from Bruh Automation. He introduced me to Home Assistant. It got me really excited. He uses a Raspberry Pi as a server but I already had a Wintel Pro CX-W8 Smart TV Box which I use as a server. I run 3 Minecraft Servers, Emby Server, iSpyConnect DVR (2 IP Cameras), Unifi wifi controller, and now MQTT Server, and Home Assistant. Below is screenshot of mostly idle.

If it weren’t for iSpy it would be around 5-10% most of the time. Emby transcoding is the only thing that is stressful and it is not used much. The reason I mention this is because after purchasing a Raspberry Pi with power supply and case, you are not far off from getting a z8300 box. Only downfall is dreaded Windows update auto reboot. I finally looked into it and disabled it. If you decide to use a Windows box, I would make sure you are running 64bit windows. One advantage to using a Raspberry Pi is there is an image on Home assistant with the basics pre-configured and just need to write it to an SD card.

Server side Setup

I won’t go into too much detail on server side, as I installed Python, Mosquitto, and Home Assitant (I followed the guide on their site for Windows)

Python was a breeze to install and just ran the executable and went with defaults. I already had it installed for something else and I am running 3.5.2 64-bit. There are newer versions now. Mosquitto was the most difficult. I followed this guide but substituted Win32OpenSSL_Light-1_0_2j.exe approx 2MB. A k version is available now. Home assistant was easy and used pip.

Christmas Lights

It was a little before Christmas when I started researching home automation. I had been reading about these inexpensive Sonoff devices here on CNX and I found a project on Github for some custom firmware by arendst that enabled them to be controlled by MQTT. (While getting the link it looks like a new project has started with some additional features here). My wife really likes decorating for Xmas and we have 3 trees and lots of lights. She mentioned getting some timers and boom I had my opportunity and ordered them the same night. After receiving It took me a couple nights and I had a simple automation turning Xmas lights on and off at specific times and life was good. I got an extra one to play with until Xmas was over. I redeployed the rest  around the house after Xmas.


I really had no idea what this was and it took me a while to grasp. You can use a cloud based MQTT if you would like, but I prefer to run my own. MQTT is a service that relays messages between devices. There are 2 main items topics and payloads. To be able to tell a switch to turn on you send payload “on” to a topic, for example, “cmnd/testbench/power”. The light turns on and it replys back to a topic “stat/testbench/POWER” confirming that the light is on and the message is received. Because we are sending “on” to the topic each device using MQTT will need its own topic. Topics are case sensitive. I made a batch file to subscribe to all topics for troubleshooting so I could monitor the messages. The # indicates all sub topics.


I picked the Sonoff basic but there are also different varieties that add additional features which are supported by arendst software.

Arendst  has been very active with this project and adding/tweaking daily. When I first flashed the device, I did find a defect and notified him and he had it fixed and uploaded within the hour. He has very detailed instructions on the Wiki. First step before flashing is soldering headers. (I link to bent headers…which I initially thought I made a mistake but turned out it was good. They are easy to straighten) A USB to TTL adapter is also needed to upload from Arduino IDE. I recommend one like this because it provides both 3.3 and 5V.  After downloading and setting Arduino up, I only set my WiFi password and SSID in the sketch. After it boots the first time, it connects to your wireless network. Find the IP address in your router, and pop the IP address in your browser to finish the configuration. Set the MQTT server credentials and topic and your done. I never setup credentials on the MQTT server so it accepts any login. Finally after everything is programmed you need to connect it to mains. Beware do not connect mains while TTL is connected.  I bought some extension cords locally. Cut them in half and stripped back a ¼ inch of the insulation. Extension cords use stranded wire so I tinned them with solder to avoid any stray strands from shorting out. Then I screwed them down on the terminals making sure polarity was correct.

Click to Enlarge


YAML is unforgiving. It is the formatting that you configure Home Assistant in. A single space will stop Home Assistant from starting. Luckily on this last update if you restart Home Assistant through the browser it will test the configuration file before actually restarting. I purposefully put an extra space on line 54 to show it is easy to find any mistakes.

Click to Enlarge

I also recommend Notepad++ for editing in windows. You can break your configuration down into different files but I like one. Notepad ++ allows you to collapse the parts you aren’t currently working on.

I recommend adding one thing at a time and restarting to make it easier to find errors. And making a copy of the last working config before adding more. In the config below there are 5 sonoff’s and an automation to turn the lights on and off at specific times. This is extremely basic. I also recommend setting up one new device and be conscious of naming. When you get your config working properly on your first new device I copy the config to a new blank text window and do a find/replace.

Below is the screen capture of collapsed parts, and and full config (minus personal info).

Notice the test bench is on later firmware and the MQTT topic is slightly different

Next Steps

So now I have a smart home, right? Not in my opinion. I can turn lights on and off with a schedule or with my smart phone or at the light by pressing the button on the Sonoff. To me this is not smart. Setting a schedule is OK, but then you have the lights on unnecessarily and wasting electricity. Only real option is to press a button on the Sonoff but what difference is that than flipping a switch. Taking your phone out takes way too long, and I feel like it is going backwards. Below are estimated costs so far. By far the Windows Box will be the most expensive part if you choose to go that way. You can re-purpose just about anything that runs Linux to be a server. One other option is to run Linux on an S905x.

Money Spent

Cost of server not included nor shipping.

Item Qty Price Total
Sonoff Basic 5 $4.85 $24.25
Headers 1 $1.50 $1.50
USB to TTL 1 $2.54 $2.54
Total $28.29

If you find this entertaining or want me to go more in depth on a specific aspect let me know in the comments. I have been finding my time setting it up very satisfying. I am able to do some hardware and software work. I hope this might get your interest in home automation going, and find out it is not hard nor expensive. I would like to state none of the products linked were provided by the sites. I purchased with my own money.

The plan right now is to do a 3 part post. In the next post, we will integrate some inexpensive motion sensors and door sensors using 433mhz, then finally modifying the sensors to include a light intensity sensor.

Continue reading “Part 2: 433 MHz / WiFi MQTT Bridge, Door & PIR Motion Sensors“.