Since we started building Embosser, some users where asking a particular feature : The ability to emboss Braille from a smartphone, especially Android since it is the most widespread terminal in Africa. This summer, we worked on the WIFI feature, with some fail and some promising success.
- The system will provide a way to connect an Android phone with a BrailleRAP with WIFI or Bluetooth.
- The Android application will provide the ability to input some text, translate the text in a Braille standard and send it to BrailleRAP.
- Obviously, as unsighted peoples use Android smartphone. The application will use accessibility Android features to enable use by unsighted people, like AccessBrailleRAP software.
- The Android application must be able to work without internet connection.
- The Braille translation must be up to date and adapted to different Braille standard, like AccessBrailleRAP do with LibLouis library.
- The android application must be multi languages.
- Depending on the technical solution, it would be nice to provide an "upgrade kit" for existing BrailleRAP as there is several BrailleRAP in the fields.
- A WIFI BrailleRAP may be still usable with USB connection to provide use with a laptop. Mobile phone is a nice feature, but laptop may provide most advanced usage.
- The solution may be cheap, a complete BrailleRAP is about 250 $ it wouldn't be reasonable to offer a 100 $ WIFI solution.
- And the last but not the least, all the system must be open source licensed like everything in BrailleRAP ecosystem.
Available technical solutions
The first idea that come in mind is using a Raspberry PI. In the BrailleRAP team we are using our 3D printers with octoprint a nice Raspberry Pi distribution, allowing you to use your 3D printer with WIFI and a user friendly web interface. Octoprint is specialized for 3d printing, and you can use it with BrailleRAP, but this is not the user experience we want. With some software development we can build a solution with the Raspberry Pi as Access Point, an option to join an existing wifi network and providing a web application like AccessBrailleRAP. A Raspberry Pi Zero W cost around 20$ and can fit in BrailleRAP frame. It would be an elegant solution, but we have the feeling that using a Raspberry Pi would be a little overkill and may be hard to maintain as our current users are not comfortable with linux systems.
The second idea is to use use an ESP32 base board. Currently we use MKS Base or MKS Gen L, but MKS offer the MKS TinyBee which is a 3D printer board base on a ESP32 MCU with Wifi connectivity. But what about upgrading existing device ? You still can exchange the board with a MKS TinyBee, but you will gain some unused boards in the hand. It would be an elegant solution to add an ESP32 in BrailleRAP frame giving access to WIFI connectivity and providing a web mobile application. For communication with the MKS Gen L board, Malin 2 firmware provide a solution to enable a second UART for serial communication. You can still use the board with USB and you have a second channel to send GCODE commands to the controller board.
As there is still a global shortage on Raspberry Pi Zero W, and i have some ESP32 DevKit and an MKS TinyBee on my desk. I choose to give a try at the second solution