Introduction: Animated Mask
Smile, they say, and the world smiles with you - unless you’re wearing a mask. Then the world can’t see your smile, much less smile back. The rise of the protective face mask has abruptly excised half of the face from our moment-to-moment human interactions.
To bring back some interactions I attached a small display to the mask with a scrolling text. No matter if you are in the subway, on a party or at the exhibition stand there will be some new interactions when people see the scrolling text. It can be your name, a product that you want to advertise or just a sentence to support your local sports club. It will definitely bring back some interactions and a little individuality.
So this Instructable is explaining you how to equip your face mask with a small battery operated, light weight screen that is displaying text via an Arduino Pro Mini. The text will be transferred by using the Arduino IDE.
... and hopefully when this period is over you can reuse your small screen as a tie needle.
Step 1: Parts List
- Arduino Pro Mini (3.3 V, 8 Mhz) ATMEGA328 (Link)
- OLED LCD Display SSD1306 Driver 3.3V 0.91 Inch 128x32 IIC I2C Blue (Link)
- Rechargeable Lipo Battery 3.7V 220mAh 1S 45C/90C (Link)
- Lithium Battery Charger Module with protection (Link)
- Wire Small JST1.25mm Connector Plug Cable Male and Female (Link)
- Micro Switch (Link)
Step 2: Hardware
All components were chosen so that they can be simply place inside the mask requiring only short wires. Therefore only lightweight and small parts could be taken into account. So I decided to use a 1S lipo battery. They are very light, provide enough energy and are easy available since small RC helicopters and planes use the same types. Only the connector cables are difficult to find but a link is given in the parts list. The downside of the 1S lipo battery is that they only provide 3.3V, therefore the regular 5V Arduino cannot be used. The smaller brother (Arduino Pro Mini) was evaluated since there are modules available that only needs 3.3V (8MHz). As a display, the small OLED LCD Display SSD1306 was just perfect because it is also working with 3.3V.
The schematic of how the components are connected is shown in one of the attached pictures. To allow you to attach the components to the mask, the screen has been soldered to the Arduino Pro Mini with stiff wires, so that these two components form a kind of clip between which you can fold the mask. In addition some wires were soldered to the Battery Charger Module and the Arduino Pro Mini as brackets. In order that you can turn the power on and off a micro switch is added in-between the Charger Module and the Arduino Pro Mini. The connections on the micro switch were secured with a hot glue gun.
Step 3: Software
If you have the hardware from the previous chapter assembled, you can load the code (File attached) onto the Arduino with the use of USB to RS232 TTL adapter. Since 3.3V is used, the power rail has to be soldered to the 3.3V pin on the adapter. I added some picture about this modification.
If you are new to Arduino I would recommend you to follow some of the lessons of Paul McWhorters channel www.youtube.com/embed/d8_xXNcGYgo . The code was taken from the comment section of the following video: www.youtube.com/embed/sTYPuDMPva8.
I included my header for better documentation and a splash screen that is shown for 5 seconds. I think it is a good habit so each time you start the program you know which program and which version you loaded onto the Arduino board. The general structure of the program is explained in the video, especially where you can modify the scrolling text.
Some problems occurred depending on whether I uploaded the code from my desktop computer or from my convertible. Since I knew that the code was the same, it was only possible that the versions of the used libraries were different on the two computers. After I wrote down all versions, I realized that especially the library Adafruit_SSD1306 on my desktop computer was very old. But that was the combination that worked. So I tested different versions of this library and it turned out that up to version 1.2.8 the code works fine, but from 1.2.9 on the scrolling text is very slow and does not run smoothly. So in order that you do not run into the same situation find the working library versions on the right side of the table.
|Acer Convertible||Desktop Computer|
|Java||Version 8 Update 251||Version 8 Update 144|
|Is not runing smoothly||Works perfectly|
Step 4: Assemble the Mask
As you can see in the video, the mask is folded between the screen and the Arduino. Two stiff wires are soldered to pin VCC and A3 of the Arduino. These wires only serve as brackets to protect the screen from falling down. On the other side the charging module was also equipped with two wires as brackets. These were soldered to IN+ and IN- because these pins were not needed.
The battery is placed loosely in one of the folds of the mask.
The system can also be easily placed in the back of a tie. Then it looks like a tie pin.
The system weighs around 15 grams with the battery.
Step 5: Charging the Battery
For charging, the Micro USB plug is inserted into the charging module. The red LED of the module lights up and indicates that the battery is being charged. When the battery is fully charged, the green LED lights up.
The power consumption is very low. The system was run once overnight. At the beginning 4.1 Volt was measured and after 10 hours a voltage of 3.7 Volt was still present. So the battery can be chosen even smaller. You can also remove the LEDs on the Arduino board to reduce the power consumption. It also looks better because you can see the green LED through the mask.
Have fun and please vote for me in the "Battery powered" contest.
Participated in the
Battery Powered Contest