Time to start coding the software part of this project. If you remember, the requirement seems to be simple: To make the washing machine send a notificacion when the washing cycle ends (when the door unlocks).
To send these notifications, we could choose one of many routes: e-mail, SMS, push notifications, using a custom app also designed by us… To save time, I decided to use pushbullet, a third party push notification service.
Pushbullet allows us among other things, to send small text notifications to all the devices linked to the service. We could then, from the microcontroller, send a notification and receive it in my phone and my smart watch. I have a small IoT server in my home: an orange PI PC with OpenHAB, which I use to control my smart power outlets. What if I connect my washing machine to that server and make it send the notifications for me? That way, I could check the washing machine state and send a command to start the washing machine cycle, all remotely.
Let’s start with the way of communications, which will have the ESP-01 miccrocontroller with my IoT server. In this case, I decided to use MQTT, for its simplicity: You define channels of communication (topics), the receiver will subscribe to those topics and the sender will publish messages to them. The PubSubClient library will help us use MQTT with ESP8266 microcontrollers.