Electromechanical Refreshable Braille Module

Lowering the cost of Refreshable Braille Cells by using Electromagnetic Cam Actuators & 3D Printing

Public Chat
Similar projects worth following
The big drawback to refreshable braille devices has always been their cost. The loose rule of estimation applied to these products has translated into something like $100 to $150 per braille cell. A 40-cell display, in other words, may cost $4,000 to $6,000, while an 80-cell model will cost $8,000 to $12,000. And so it has been that, while desirable, braille computer access has been out of reach for many users of assistive technology.

It is thus of great value to lower the cost of individual braille cells in order to manufacture Refreshable Braille Devices at a price that is affordable to the Visually Impared community.

While commercially available braille displays use expensive piezo-electric actuated pins. This project employs an electromechanical system with off-the-shelf and easily manufacturable components, leveraging the accessibility of high-quality 3D Printers and micro-magnets to keep the cost low without compromising functionality.

Design & Engineering Goals:

  • < 10$ price of each Braille Cell
  • <1W Power consumption 
  • Standard Braille sizing 
  • Scalable to multi-row braille Display
  • Ease of Manufacturing & Assembly
  • 8 Dot Braille

Prior Work:

This design in principle works like a previous design using cam actuation, by replacing the vibration motor with a solenoid that causes an eccentric cam that is embedded with a rare-earth magnet to rotate, and in turn, lift a braille pin. 

Refer to the Project logs for a full table of references.

Working Principle: 

An electromechanical, electromagnet-based braille display that can represent braille characters. The key principle is a cam actuator, consisting of an eccentric cam that has a rare-earth magnet embedded into it which is rotated to two stable positions by the action of an electromagnetic that changes its polarity. The rotation of the eccentric cam causes a braille dot to be lifted up or taken down.

The cam rotates slightly more than 180° and is stopped against the wall of the enclosure (Upper Cell). Once the Braille pin is lifted, the weight of a finger on the pin(while reading braille) cannot back drive the cam. This not only satisfies the need for protrusion force of the braille pin but also that the electromagnet need not be powered once the pin has been lifted resulting in lower power consumption.


Prototyping is done using a high-resolution SLA 3D Printer as there are many thin-walled sections.
PR4 REsin on a 3D Systems Figure4 machine is being used for its ability to achieve 0.2mm wall thickness.

To meet the cost goals of the project, the braille cells will be injection molded in POM after the validation stage. The design has already been optimized for injection molding.

The micro 1mm x 0.5mm NdFeB magnet is what makes this project possible, and would be impossible without the availability of such tiny magnets. Luckily there are now a handful of vendors around the world keeping these in stock as they are also used for things like jewelry clasps on thin bracelets, Kingdom Death miniatures, super thing Games Workshop miniatures, and more.

The electromagnets will be constructed with 40-micron enamel-insulated copper wire with a soft iron core. A winding jig will be created to help wind the could around lengths on 0.6mm Soft Iron wire.


The electronic circuit will be heavily inspired by the workings of Flip-Dot displays. Instead of discrete drivers for each braille cell, the same driver will actuate pins of a full braille display with multiple braille cells using a multiplexer since a braille pin doesn't need to be kept powered on once actuated.

Failure mode and mitigation: 

The biggest problem expected with the design would be the interaction of all the magnets in a single braille cell with each other, which would prevent the braille cell from functioning appropriately.

To mitigate against this:

  • The magnet power could be varied (with controlled heating?)
  •  Thin steel sheets could be introduced in between the cavities of the "Upper Cell" to shield against the magnetic fields of the individual magnets
  • Using plastic material during the 3D Printing or Injection molding process that contains iron particles that would dampen the magnetic field of the magnets.
  • Using Metal Injection Molding(MIM) to produce the "Upper Cell". 
  • Electroplating a thin layer of NIckel (which is ferromagnetic) over the "Upper Cell"

Braille Cell Eagle Library.lbr

.lbr file for footprint and schematic of a braille module for eagle

lbr - 14.22 kB - 09/26/2023 at 16:57


Braille Evaluation Board Eagle Source

Eagle BRD and SCH files for Braille Evaluation Board

x-zip-compressed - 102.99 kB - 09/26/2023 at 16:52


Braille Cell Eagle Source

Eagle BRD and SCH files for Braille MOdule PCB

x-zip-compressed - 7.32 kB - 09/26/2023 at 16:52


Braille Module Gerber

Gerber File for Individual Braille Cell Module

x-zip-compressed - 366.07 kB - 09/26/2023 at 16:18


Braille Evaluation Board PCBA

Gerber, BOM & Centroid files for the Braile cell Evaluation Board ( 8-cell Driver Board) PCBA. Note: You may need to change the centroid depending on where you are fabricating the PCB's

x-zip-compressed - 358.37 kB - 09/26/2023 at 16:16


View all 11 files

  • Testing Electonics

    Vijaya day ago 0 comments

    Tested out the driving electronics using two LED's connected in opposing polarities, and adjusting the LM317 output to bring down the voltage so as to not burn the LED's

    Testing out the addressability of the pins

  • Assembly and Single dot test

    Vijaya day ago 0 comments

    Equipment I'm using.

    Read more »

  • 3D Printing: The Devil is in the Details

    Vijaya day ago 0 comments

                         Fig 1. Version 3 Braille Parts printed on a Figure4 3D Printer by 3D Systems

    Getting the design right has been a bigger challenge than I initially thought it would be.  I had to go through 7 iterations before things were getting to something that fit together satisfactorily. 

                Fig 2. The various versions of the braille cells printed in SLA in different orientations

    I initially was outsourcing to an external vendor who had a 3D systems figure machine with ProBLK 10 resin that produced pretty strong parts at extremely high detail. Even though I was very impressed at first, I quickly realized that things were either too snug a fit and wouldn't allow for easy motion or that there was too much tolerance and the mechanisms would not actuate predictably. 

    Read more »

  • Braille-Module & Driver PCB's

    Vijay2 days ago 1 comment

                                               Fig 1: Individual Braille Cell PCB's

    I had to max out the PCB fabs capability and took a few risks in the design by overriding my tried and tested DRC(Design Rule Check) file in Eagle when it came to the distance of the traces to the edge of the board, drills, and pads, but it seems to have worked. Nothing is shorted, or disconnected, so big win! 

    Read more »

  • Coil Winding Tool for Micro-Electromagnets

    Vijay3 days ago 2 comments

    I figured that the trickiest parts of the build would be the winding of the ultra-small coils, so I designed a coil winding tool to help with this process and make it easier 

    Read more »

  • PCB Design of Braille Cell Evaluation Board

    Vijay4 days ago 0 comments

    I created an 8 - Braille cell board to evaluate the braille cell functionality. 

    Read more »

  • Updated Drive Electronics

    Vijay09/13/2023 at 03:34 0 comments

    I spent a few days on Proteus simulating the circuit and was dismayed that is didnt work

    Then I found amazing documentation by Frederic L  on his Flip Dot Display Controller project ( ), and was pleasently surprised that we had a similar approach using Source and Sink Trasistor Arrays, but used Shift-Registers instead of Decoders.

    Trying to figure out why my circuit wouldnt work [ Seems that I cant connect the outputs of the Source and Sink trasistor arrays together directly if I want the circuit to work on Proteus atleast], I found on one of his log that the Flip-Dot pannel has some additional components, namely Swiching diodes placed between the Source and Sink on each coil:

    When added these into the circuit, things still wouldnt work, as then proceeded to add one switching resistor pair to the common conenction of the coils for each module, and voila! 

    The Above Video shows the working simulation. I used UDN2981's for the source drivers and ULN2803's for the SINK, analogous to the ones I chose before in the last log. All the pins of a single module are arranged in a vertical line and show only 2 modules for simplicity. 

    As a suggestion by kelvinA on the previous log, I've used the Active Low enable pins of the Decoder IC and connected them to SET/RESET in a way to prevent shoot-through condition of the H bridge.

    The next step is designing the board with this schematic!

  • Braille Cell Array Drive Circuit

    Vijay09/10/2023 at 17:44 2 comments

    I'm working on the drive electronics to actuate pins for an array of braille cells that can make up a full braille display.

    I have been looking into the functioning of Flip-Dots, as they share many similar characteristics to each Braille-Cell dot.

    Flipping Dots Fast. | About using electronic stuff

                     Above: A single Flip dot toggles its position when the polarity of an electromagnet is changed.

              Above: A single Braille dot toggles its position when the polarity of an electromagnet is changed.

    Luckily, there are several projects on Hackaday to learn from (Hackaday community seems to love these). I found these amazing mechanical 7-Segment displays from AlfaZeta that are a perfect analogy for the Braille-Cell, each segment works just like an individual flip dot, and 7 segments of them are packaged into a module where each segment need to be energised only momentarily and then retains its state, similar to our 6-dot Braille Cell:

    I found a project that just "Throws H-Bridges" at the module to drive them, but I wanted to be able to save on money and microcontroller pins to create a more elegant solution, and keep the cost lower than the 10$ per Braille-Cell goal I have for the project: 

    I came across this video by YouTuber GratScott! that showed an array of these modules controlled by some interesting electronics:

    The circuit on this is what Ive decided to reverse engineer as best as possible for a using 6-dot braille cells.

    How the driver works (I think), taking the example of driving 5 Braille Cell Modules:

    • On each 6-Segment Braille Cell, one end of the solenoid of each segment is connected together in common. Pictured below is the schematic, 1A and 1B are a single coil, 2A and 2B another, and so on. The A's of all coils of a single module are connected together.
    • The inputs of both the source and sink transistor arrays are connected to two  CMOS 3-to-8 Decoder ICs( (74HC2238D ) . The inputs of both these decoder ICs are connected together to MOD_0, MOD_1, and MOD_2 which will go to the MCU pins. These will be responsible for selecting which module to select for driving. 
    • SET & RESET are connected to the Enable PIns of the decoder connected to the Source Transistor Array and the SInk Transistor array respectively. These will be responsible for connecting the common connection of each Braille Cell Module to the source or sink by activating the decoder-transistor IC pairs. SET and RESET Cannot be both HIGH or else the half H bridge will be in a "shoot-through" state, releasing magic smoke.
    • In a similar manner, the other end of each coil of each braille cell is connected in parallel with the respective coils of other braille cell modules.

    • These are in turn connected in a similar arrangement as the common connections for each module,  connected to a source and sink transistor array, controlled with 3 to 8 decoder ICs

    •  The inputs of both these decoder ICs are connected together to PIN_0, PIN_1, and PIN_2 which will go to the MCU pins. These will be responsible for selecting which PIn to drive to select for driving. 
    • SET & RESET are connected to the Enable PIns of the decoder connected to the Sink Transistor Array and the Source Transistor array respectively.  If SET was enabling...
    Read more »

  • 1st 3D Printed Prototypes

    Vijay05/28/2023 at 07:28 0 comments

    Hey there, Hackaday community! I wanted to share an exciting update on my ongoing project focused on 3D printing small Braille parts. Today, I want to discuss the significance of resolution when it comes to creating high-quality Braille tactile components.

    One of the most critical factors in creating functional Braille parts is achieving a high level of detail and precision. In the case of 3D printing, resolution plays a pivotal role in determining the readability and usability of Braille tactile elements.

    To begin, let's dive into what resolution means in the context of 3D printing. Resolution refers to the level of detail that can be captured and reproduced in a printed object. It is typically measured in terms of layer height or the minimum feature size that the printer can accurately produce.

    When it comes to the required Braille parts, which rely on tiny tactile dots, cams, and an enclosure with small wall thickness, achieving a high resolution is essential. The components need to be precisely formed and accurately positioned to ensure legibility and functionality. Increasing the resolution can create more defined dots with sharper edges and smoother surfaces, resulting in enhanced touch sensitivity.

    The smallest wall thicknesses needed for a functional prototype were 0.4mm. After exploring and evaluating a wide range of options for 3D printing, I settled on SLA technology with the 3D Systems Figure 4, which offered the best resolution among all the printers tested. I chose to print with the PR4 resin, they gave the best results for toughness and yet a touch of flexibility that was needed for some of the snap-fit components. 

    The parts came out great, but it was quite a struggle to assemble the parts together. Got me to understand the design changes that would be needed to make this easier to assemble, without needing to be a watchmaker.

    Design for Assembly and Manufacturability will be a big part of the design changes going forward.

    I'll continue my exploration in this project, experimenting with different printers, materials, and techniques to further enhance the resolution quality and assembly of 3D printed Braille parts. Stay tuned for more updates! Feel free to share your thoughts, suggestions, or any experiences you've had with micro-scale 3D printing projects. Let's collaborate and make a difference together!

  • References & Previous Work

    Vijay05/20/2023 at 04:54 0 comments

    This project is derived from years of work and research done by scientists and engineers over there years and is in no way "novel". Indigenous production of refreshable braille devices is essential to have this technology accessible to visually impaired communities in all countries without relying on imports and duties on already expensive devices. My goal in working on Braille Displays is not only to create a working device but to do so in a way in which it can be indigenously produced without needing a complex supply chain and assembly process.

    I started working on refreshable braille displays almost 10 years ago when I was introduced to the problem statement by professors from the MIT Media Lab.

    in 2016 after talking to Paul D'Souza and learning about his amazing braille projects, I started working on a refreshable braille display design derived from his idea to use micro-vibration motors.

    Chris Ulbi, doing his Masters's Thesis at the time took the design further to create a working prototype 

    The current design is inspired by the work of Joonyeong Kim et al.: "Braille Display for Portable Device Using Flip-Latch Structured Electromagnetic Actuator"

    The design was changed with the intention to have all parts 3D Printable and overcoming some of the challenges in the design:

    • Interference of magnets with each other.
    • A drive system adapted from Flip Dot displays to keep the electronics low cost and improve the refresh rate.
    • Prevent the action of gravity causing the pins to fall out when used in other orientations.
    • Redesign coil and coiling procedure to lower the cost of the electromagnet.

    Other References:

    MOLBED 2 project, and the manufacturing processes used for winding the coils.

    Paul D'Sousa and his work

    M. Benali-Khoudja, M. Hafez, and A. Kheddar, “VITAL: An electromagnetic integrated tactile display,” Displays, vol. 28, no. 3, pp. 133–144, 2007.

    F. S. Cooper, "Research on reading machines for the blind" in Blindness Modern Approaches to the Unseen Environment, N. J., Princeton:Princeton University Press, pp. 512-543, 1950

    H. Freiberger and E. F. Murphy, "Reading machines for the blind", IRE Trans. on Human Factors in Electronics, vol. HFE-2, pp. 8-19, March 1961.

    Mohamed Benali-Khoudja, Moustapha Hafez, Jean-Marc Alexandre, and Abderrahmane Kheddar "Tactile interfaces: a state-of-the-art survey" SR 2004, 35th International Symposium on Robotics, 23-26 March, Paris France

    M. Benali-Khoudja "Electromagnetically driven high-density tactile interface based on a multi-layer approach" November 2003 DOI:10.1109/MHS.2003.1249924 IEEE Xplore

    T. Völkel, G. Weber, and U. Baumann, “Tactile graphics revised: The novel BrailleDis 9000 pin-matrix device with multitouch input,” in In International Conference on Computers for Handicapped Persons, 2008,

View all 10 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates