Showing posts with label Android application for ESP8266. Show all posts
Showing posts with label Android application for ESP8266. Show all posts

Monday, October 19, 2015

Update: Android application to control my ESP devices around the home

I've updated the Homy application that controls my ESP8266 based devices around the house.

So more Smart Plugs has been added, more irrigation controllers (for testing),  temperature and humidity sensors.

At the begging each node is starting as AP with it own embedded web server. I can connect to it
with a browser to it and setup the WiFi network and password ( I am planning to do this also from Homy application). After that node gets rebooted and became part of the network.

At statup Homy connects to the cloud broker ( which is connected to my local one) and request an
update from all devices. In this way knows how many of them are and what types they are, what cron settings thay have and what IP, software version they have etc.



Next to do on devices is OTA.
Next device to build is a chrono thermostat device. It will be able to control a heater based on its predefined cron program and aggregated temperature from sensors. Off course  I will be able to control it from the Homy application around the world.




Monday, August 3, 2015

ESP8266 conclusions after 8 month




After 8 month of working with ESP8266 I think I made an impression on this tiny wireless chip.

- It is robust ( no crashes, disconnects etc)
- can be put in low power mode ( ~100 days on three AA with reading a value a every 10 minutes and publish it on a remote server)
- the chip producer, EspressIf, is very involved in adding more features and correcting small bugs ( documentation is still on ice age, but I hope that they will makeit more clear)
- can be interconnected with various sensors
- run in non demanding conditions ( I have one module that is running in 70% humidity and 50 to 60 Celsius )

Until now I have ESP8266 modules that are connected with temperature and humidity sensors and relays. Next devices: barometric pressure, scale, IR LED. 

The modules are sending MQTT to my broker ( hosted on a PogoPlug and some time on Raspberry Pi) that is connected to my cloudMQTT.com (they run a great MQTTservice) account were I have another MQTT broker. ( they are bridged). 

In this way, from my mobile application, I can control and see my modules anywhere in the word. 

If I am not at home, my application connects to my cloud broker that is connecting to my home broker where are connected my devices. In this way I can monitor and send them commands.

If I am at home my application is connecting to my local broker ( to avoid high RTD - which are not so high, something like 500 ms).

In conclusion, ESP8266EX is doing a great job, you can invest money and time in it.

Happy coding !!! 

Tuesday, June 2, 2015

Android application Homy

The new Android application that is connecting with my broker over web sockets is having now new features:

1. Auto-discovery. Each time the application is started, all devices are sending their status. Here there are 6 IoT devices discovered:

  • two plugs
  • two irritool ( one is in production for more then one month, and the other is for debugging and simulation ( NASA style :-)  )
  • two (dth - digital temperature and humidity sensors. They are mount on each irritool)


6 devices dicovered



2. Devices are presented on categories, based on the incoming  data from them. 
At  this stage the name is based on the unique device id and its type.

Plug devices discovered

3. Device detail. All the information about device is presented in here:
-device id
-ip address
-network type (B/G/N)
-up time ( if is configured to be transmitted)
and I am able to control the device ( like in plug/irritool case) or see the data for sensors.
Device detail - PLUG
Device detail - IRRITOOL 

Device detail - Sensor DTH


Looks ugly and hard to remember that the ESP_00A08478 is the name for irrigation controller so I've added the new option to rename the device name with whatever you want. This aliasing is persistent so every time I reopen the application, the mapping between device id and device alias is the same.


Here is a renamed plug:


Plug renamed 

Other feature is 7 day weather report for my location (need more work in presenting the data).

weather report next 7 days


I can declare now the application to be in alpha stage ....


4.Other option I have in the Menu:



Debug will be to see the messages received from broker.




There are a lot of picture in this post, but a picture is 1000 words.