# USB Braille Machine # Project Summary The objective of this project is to simulate the FPGA (Tang Primer 20K) as a HID keyboard via USB Full Speed protocol. Instead of a normal keyboard, the project takes advantage of the peripherals of the ChipInventor Devboard 2.1, such as buttons, switches and seven segments display, to simulate a Digital Braille Machine.

In this link you can access more information in the Application Note: [USB Braille Machine](https://docs.google.com/document/d/1HlL_t_NP2DlqpAy3oB2dQpBOwnB3AoPr9fjIHCdc0V0/edit?usp=sharing)

# Implementation This digital Braille Machine is projected using the ChipInventor platform and implemented on the Tang Primer 20K FPGA. The project utilizes 8 buttons and 2 switches of the Devboard to convert Braille combinations into standard keyboard outputs using USB HID (Human Interface Device) functionality, allowing seamless integration with computers without additional drivers. The following table outlines the key specifications of the project and its hardware requirements: **Table 1 – System Specifications**
Field Description
FPGA Board Tang Primer 20K
FPGA Core Gowin GW2AR-18
USB Functionality HID (Human Interface Device) – Recognized as a keyboard
Input Interface 6 Braille buttons + function keys (Caps Lock, SpaceBar button, Delete, Number Mode)
Braille Standard International Braille (Unified Standard)
Supported Characters Uppercase and lowercase letters, numbers
Unsupported Characters Special symbols and punctuation marks
Clock Frequency 27 MHz
Button reading interval 1 second
Power Supply 5V via USB-A
Programming Interface JTAG or USB Programmer

The project is based in [Internationally Standardised Braille](https://www.pharmabraille.com/pharmaceutical-braille/the-braille-alphabet/).

Here is the blocks diagram of this project: **![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXfZtz2iZIogGfqjT52M6k8rc1T6_TTY5dyxhawKq4XdmW1_ia0ruvcBWzMvobPxT_mCKL48JrpZmE-4UJsl7fp0qSA7HPXVr3xRObrywVV1MFejVbYz48aKoruYpGIJgKGX2EoA?key=EIGEd-9rvox2kChd5HxuI8k3)** # Visual Resources ![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXfgsI5PSCXeXuhUD--9BMeQoSjJUsP62DIDcMJpy6WER-yKAH8TAOFLZt6VwIAYON2cxGsTTxAYgzRgWLQ2TIXzrdaIYshS2uR4Hk-u3XOoUUkoCw3NImjqPmxXYTWbwOzgQxLA?key=EIGEd-9rvox2kChd5HxuI8k3) **Figure 1 – Internationally Standardise Braille dots arrangement** ![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXd3jQq9yBQEYaR0_a7H-oAPB1Qz_odmXBZncn9_aLhl1ggRDrs7La4Un5J7ZaEeBJ3_A66ezgKgEky1YFp31wGoI07OvNbBrbZhkI13HS0_PhAKdQeslD09hw7eQdRNfXAed4wS7Q?key=EIGEd-9rvox2kChd5HxuI8k3) **Figure 2 – Internationally Standardise Braille alphabet and numbers** ![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXcJhN5xIDq7sKNiCZIm5JVvomJvpFUxv_OrXpoeDej4G3Db29m-XCSblI1qHzY9xhA80unRdGWzMLjEQ0IABjC7yeFVNYRZKyOF4mHxvKa5neGukGLNsnuqyb0nv0JmqvJEVIAByA?key=EIGEd-9rvox2kChd5HxuI8k3) **Figure 3 – Input keys placement** ![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXcJm2CjJpB1G3QkQ6HoZZ-f91vT7mnbYi3NehSJKyLVJQykFLpiDaIJVhLnDgXRJR55CWJAM6oRcqUkppTO5GGzVd1U4ega77cKu0goI1HxhO9nN3ujDC-ntupYlg0M3sq1cWrQ?key=EIGEd-9rvox2kChd5HxuI8k3) **Figure 4 – How to connect**