This post will cover the creation of Inno, a wooden robot-looking idol, that serves as an IoT marketing medium, for a new educational initiative at the Software Engineering and Management program, in the University of Gothenburg. In the beginning of the year, I was approached by the program’s administration to discuss the creation of an organization that would engage in extra curricular activities and enrich the students’ education. After months of negotiations, proposals and surveys, we are finally almost ready to begin with the “Innovation Space” and this is one of the ways we will hype it up!
As the room that will host the Innovation Space is currently being prepared, many students are wondering what is it about. So I decided to both pique their curiosity and gather some precious emails by setting up “Inno”, the robot-looking idol, that is connected to the internet. My tutorial on how to build this, was featured in Instructables!
The system is composed of an Arduino Nano clone, an ESP8266 WiFi module, an I2C LCD screen, an HC-SR04 ultrasonic sensor and a common PS2 keyboard. Note that I am connecting the Nano directly to the ESP8266, something I read somewhere I shouldn’t do, as they are working on different voltages (5V - 3.3V) but yeah… since it works and I don’t have a logic level converter around or the time to make one, I will skip it. :-P
Furthermore, I had to use a voltage regulator that is connected directly to the power supply, so to provide enough current to the WiFi module. ESP8266 did work when I tried to power it through the 3.3V regulated output found on the Uno and the Mega, however when I migrated the system to the Nano, this was not enough.
A full list of the electronics used follows:
- Arduino Nano
- ESP8266 WiFi module
- I2C LCD screen
- LM2596 regulator
- PS2 keyboard
- HC-SR04 ultrasonic sensor
- Male & Female pin headers
- DC socket
- 6 pin mini din socket
- Jumper cables
The system had to be noticeable, affordable, easy to use and… lovable!
Building the robot became a family affair. My mother designed the robot’s outline on paper, my father cut it out on thick plywood, I took care of the electronics and my girlfriend made it look awesome.
The user is prompted on the LCD screen to enter their email, then to verify it and finally submit it. If it is a valid address and not gibberish, it is transmitted to the thingspeak.com server, which offers a trivial way to receive HTTP requests and log down their content. The screen shuts down after a specific time of inactivity and gets turned on upon a keyboard press or someone being detected from the ultrasonic sensor, which literally serves as the robot’s eyes.
The code deployed is simple in concept, however tends to get messy due to the various messages that need to be displayed on the screen. Depending on the current state and which button is pressed (character or an “action”) the system responds and accordingly refreshes the screen. If you are careful, you will notice a method (postTweet) that is never used and will allow the robot to post tweets, using the thingtweet API. Feel free to modify the code accordingly and enable your creation to tweet! For the ultrasonic sensor, I am using my old Smartcar sensors library to easily read the measured distances from it. However be aware that I am planning to deprecate it and will not support anymore.
The only intricate part of the construction, was the PS2 breakout circuit. But if you find those 6 pin mini din connectors, that shouldn’t be a problem. If you buy the ones on the link I provide, you will have to break them apart, since they come in pairs of two, for them to occupy less space.
To sum up, this was a simple example on how to incorporate the Internet of Things in your marketing campaign. With very cheap and readily available materials, you can enhance traditional advertising media and maximize your visibility and customer engagement.