On 11th September my facemask video went live on Element14 Presents:
There are two parts to the project. The hardware and the transcription software. There are pros and cons to each iteration, but first the mask itself.
- An 8x8 NeoPixel Matrix from Adafruit which is rigid and
- An 8x8 Flexible RGB Matrix from AliExpress
The FaceMask Matrix
- It's so shiny! RGB LED grids can do so many colours. With a cloth cover they can be read in daylight and bright office light too.
- Connections are standard male/female pins, easy to connect to
- Flexible grids look great inside a mask and feel better too
- Different layouts. The fixed grid and the flexible grid were laid out differently so I had to change my code to adapt to the right one.
- Expensive - An 8x8 RGB grid from a trusted and known supplier is at least £30. Untrusted and unknown suppliers? You could get one for around £3, but it could take weeks to arrive and not work.
- Dodgy flexible grids - I've had connections fall off on the unknown suppliers. Perhaps hot glue and tape up the connections first?
Let's look at the different iterations:
Version 1 Raspberry Pi and Google API
- Hardware: The Raspberry Pi is easy to buy in the UK and comes pre-soldered
- Hardware: The Raspberry Pi takes any USB microphone
- Software: The setup of the python code and the Google API was pretty simple
- Hardware: The Raspberry Pi is quite bulky and wouldn't fit inside a mask.
- Hardware: The Raspberry Pi is expensive for this project as you have to use a full Pi3 and buy the SD card too.
- Hardware: The Raspberry Pi needs to be powered by USB meaning bulky battery packs or soldering on a lipo adaptor
- Software: The Google API wasn't great at transcribing more complicated sentences.
- Software: The Google API was quite slow
Software: You need to be connected to the Internet for the API to work
Hardware: You could use a Raspberry Pi Zero W but would needs a USB adaptor for the microphone, adding more bulk to the project.
Version 2 Wemos Lolin32 and Dragon Naturally Speaking
- Hardware: The wemos is small, fits inside the mask
- Hardware: The wemos takes a small lipo battery to power it
- Software: Dragon is great at transcribing
- Hardware: The wemos isn't easy to find from major retailers in the UK
- Hardware: You have to solder the wemos yourself
- Software: Dragon is an expensive software, only really seen in workplaces
Any ESP32 board would work here - like the Adafruit Huzzah 32
Versions 3-5 Android phone and a ESP32
I made a video about the jump to version 3 and how all the versions differ from each other
All modern Android smartphones have a transcription service built into the keyboard or you can download one from Google for free. Using a Bluetooth serial app you can send this text to any ESP32.
In version 4 we took out the second battery, powering everything from one lipo battery inside the make
In version 5 we increased the grid size to 16x8
- Hardware: everyone has a phone!
- Software: Free, free, free. The bluetooth app is free to download
- The transcription is fast and reliable
- You can also TRANSLATE your text!
- Hardware: Finding an ESP32 that's already soldered is difficult, but not impossible. The Pi Hut sell the Adafruit Huzzah 32 pre-soldered. I've not tested this yet, and it's sold out! https://thepihut.com/products/adafruit-huzzah32-esp32-feather-board-pre-soldered-ada3591
- Software: Currently, the Bluetooth serial software only sends when you press a button. You really want it to stream what you're saying and not wait for a button press.
- Software: The transcription service tends to go back and correct sentences, even though they've already scrolled on the mask.
We wrote our own app which is a work-in-progress but fixes some of the cons above. It keeps the microphone on and it only sends text when it's confirmed by the transcription service.
All my FaceMask videos are on my YouTube channel playlist