Notices

Legacy Keyboard and Repair logo

STATUS

Jan 30, 2024

After recovering from a bad cold after our Hawaiian cruse, I finally back at it.

List of current tasks needing to complete:

1) reassemble computer with obsolete/unused components Jan 31

2) waiting on case for new computer Feb 1

3) assemble new computer with new components Feb 2-8

4) transfer Database to new computer Feb 9

5) 3D print remaining components for new pressure sensor

6) assemble, test, and calibrate new pressure sensor

7) process backlog of keyboards for repair

8) process, repair, and publish keyboard inventory

NOTICES

See "Status" item for list of tasks needing completed.

ACTIVITY

1) I started out trying to modify the Grbl (Machine Control) code. The code did not make my key pressure readings when it was in an idle state. My method of learning someone else's code is to rename items (constants, variables, methods, etc.) I managed to corrupt the code three times and it was taking too much time.

2) I don't know why I didn't think of it sooner, but I embarked on using an Arduino Nano mounted on the Z-axis head to process the key pressure. After some electronic testing and the third revision of the hardware I ended up with a quit nice setup with a 0.96" OLED display. However, after a few commands from the UI program, the Nano refused to process any additional commands. After a few days of trying to correct the situation, I set that project aside and added an option to the UI not to include key pressure testing.

3) Since I had learned a lot from that project, I updated the Keyboard interface Nano code. In addition, I found an updated version of the Arduino PS2 keyboard interface software. It was more understandable, very compact, and easy to use. Things were looking good! After a few iterations of code improvement I achieved scan code processing that was robust and reliable. However, after a few commands from the UI program, the Nano refused to process any additional commands. The same problem as the Pressure Nano.

4) I'm thinking that the handshaking process is somehow not reliable enough to separate sending and receiving data. I will need to do some research on this topic.

5) I found that the Grbl code, though in command mode, still had several streaming components. To solve the Nano communications problem, I converted all streaming items to a Hand-Shaking protocol.

Share by: