So you are wanting to mess around with IoT development? Want to learn a thing or two?
See it is very easy to pick up a development board and get your hands dirty in embedded systems development, but a lot of times. Many people would be distracted by the many projects and to-dos out there that they get easily overwhelmed and end up learning something not necessary.
You want to ask yourself what kind of projects you want to learn? Are you in it for fun or to learn to make your next million dollar idea? Let’s take a look at projects that are my personal favorite and taught my real life lessons that I used in my professional career.
The best platform to get started in learning about everything connected devices need to communicate with one another and how to easily program them to do what you need is by using the correct MCU.
You should get started with ESP32 development boards. These are small tiny, and very low cost devices that are made by Espressif with firmware and API documentation available virtually everywhere. The next projects are targeted specifically at ESP32 development boards.
I recommend you use the ESP-IDF programming documents, rather than starting with Arduino. If you start with Arduino and go to ESP-IDF down the line, it will be a much bigger learning curve. But if you use ESP-IDF first and then move to Arduino, much easier transition. Just keep in mind that ESP-IDF uses the freeRTOS, which is a fantastic way to get started in learning RTOS.
IoT Room Activity Monitor
Start by making a room monitor that uses a motion sensor to detect activity in the room. You can send those data points to the cloud and collect them to do small analysis on them. Such as the most activity time, when is the room the lowest in activity.
This will help you achieve the idea of learning from data and simple sensors.
The project below is written for Arduino, use the same ideas but with ESP-IDF instead. (if you still cannot understand or need help with esp-idf, please comment and I will make a tutorial)
Connected Vibration Sensor
Monitor the vibration of your refrigerator or the washing machine and learn about important factors that contribute to the functions of the devices under different periods. For instance, you can learn how many times your household uses the washing machine, what is the pattern of the vibration of the washing machine and can you make sense out of that so you can learn when a time comes that the vibrations are different than usual.
Learn to send yourself a notification everytime a wild vibration occurs and you might be able to predict a problem before it even occurs! This is another important use for IoT and that is the use in predicting maintenance.
Water Level Detector
Make a smart water level detector, when the water level rises to a certain level. Send a notification to yourself to react. This is a real world scenario as well in which manufacturers or smart homes require a flood detector.
Make smart decisions about how the device will react, maybe add another smart device that would shut off a valve when a flood occurs.
Smart Light at the Door of your Room for Privacy
If you are living with a partner, roommates, or family sometimes people forget to knock or they knock and not think that there is someone there or you are on the phone.
You can create a small LED light that shines a red color with a sign that says, DO NOT ENTER. You can tell your friends and family that this is when you need full privacy. You can control the light simply from your phone or computer. Bonus: you can try to save the data points when you set the privacy on and off and let the device learn from that and have the device do the on and off on its own and see how it learns!
These projects are good enough for you to learn the basics and if you would like us to build any of the projects on any platform, please feel free to reach out!