Step 1.) Identify the key that has been pressed.
Step 2.) Identify if the control or alt key has been pressed,
accordingly selecting the correct alphabet or letter to be sent
Step 3.) The data goes to the phone through the USB OTG
Cable and the phone thinks that an external keyboard is
sending that data
Step 4.) The data passes through the Swiftkey keyboard autocorrect
engine for physical keyboards, if a space is pressed
the closest prediction will be written onto the app that converts
the text to speech.
Step 5.) A simple offline android text to speech engine converts
the text to speech and then speaks it out through the