pull down to refresh

HTX Studio received a special email. The letter writer's daughter was unfortunately run over by a heavy truck on her way to school, and her right hand permanently lost its function. When using the computer, her hands have to frequently switch between the keyboard and the mouse, which makes typing very slow and tiring. He wanted us to make a one-handed keyboard for his daughter.
The project has just been open-sourced at https://github.com/htx-studio/One-Handed-Keyboard and hopes to be helpful to those who need it. In English for you below:

One-Handed Keyboard

This is a single-mode mechanical keyboard with integrated trackball. The firmware uses QMK . Thanks to all the developers who have contributed to the QMK community.
Keyboard production reference: [Mr. He] We made a special keyboard...
Open source hardware: HTXStudio one-handed keyboard
The development environment and setup are available here , and the firmware source code is available here .
The information in this warehouse includes:
  • A total of 8 PCBs for three keyboards for the left and right hands, provided by EasyEDA Engineering.
  • VIA key change configuration file and compiled firmware.
  • Model design files.

Warehouse directory structure

Docs

Data sheet and pictures of the chip.

Firmware

QMK firmware for three different keyboard models, and JSON files for VIA key changes.

Hardware

Project files of Jialichuang EDA.

Model

Model files and processing files used by each keyboard model.

Production Guide

PCB:

1-Right-hand keyboard-hot-swappable (large): board material FR-4, board thickness 1.6mm, four-layer board, laminate structure JLC04161H-3313, impedance control +/-20%.
1-Left-hand keyboard-welding board (small): board material FR-4, board thickness 1.6mm, double-layer board, ALPS yellow axis needs to be installed with a little force when inserted.
1-Left-hand keyboard-hot-swappable (large): board material FR-4, board thickness 1.6mm, four-layer board, laminate structure JLC04161H-3313, impedance control +/-20%.
2-TypeC: board material FR-4, board thickness 1.6mm, double-layer board, marked CON1 (only for large keyboards).
3-Trackball: board material FR-4, board thickness 1.6mm, double-layer board, the module needs to pay attention to the welding direction, marked CON3.
4- Mouse wheel: board material FR-4, board thickness 1.6mm, double-layer board, it is recommended to use 7mm high encoder, 6mm high button, button trigger pressure ≤180g, marked CON2.
5-Directional buttons: board material FR-4, board thickness 1.6mm, double-layer board, ALPS yellow shaft needs to be inserted with a little force, marked CON4.
6- Main control board - left hand (small): board material FR-4, board thickness 1.6mm, double-layer board.
  • Three of them are keyboard-controlled common boards 《3-轨迹球》《4-鼠标滚轮》《5-方向按键》.
  • 《5-方向按键》And 《1-左手键盘-焊板(小)》, the key axis uses ALPS yellow axis.
  • Note that the left and right hand keyboards are not completely mirrored.
  • The trackball control uses SPI1 channel, and the scroll wheel has two separate signal lines, which allows replacing other control devices without major adjustments.
  • The main control uses STM32G431CBU6.
  • Compatible with A to C or C to C data cables.

Printout:

Keycap: resin, PLA, etc.
Trackball seat: resin, PLA, etc.
Left and right mouse buttons: resin, PLA, etc.
Shell: resin, PLA, etc.
Base: resin, PLA, etc.

Processing:

Positioning plate: Recommended material: pom, thickness 1.5mm.
Positioning plate cotton strip: glue left on one side.
Sandwich cotton: Recommended material is poron, 3.5mm thick.
Axle seat cotton: 2mm thick.
Bottom cotton: Recommended material: poron, 4mm thick.
Silicone pad (for keypad only): 5mm thick, hardness Shore 00-10.

other:

Trackball: diameter 25mm, material PTFE.
Lubricating ball: 2mm diameter, made of PTFE, installed in the printed trackball seat, 6 pieces in number.
Roller: Recommended diameter is between 19mm-20mm, thickness is between 4mm-5mm, and material is metal.
Satellite axis: 2U steel plate satellite axis.
Key switches: 57 ultra-small ALPS yellow switches for the small keyboard and 57 common mechanical switches for the large keyboard.
Cable arrangement: spacing 0.5mm, 8P reverse, 10cm2 strips, 15cm2 strips.
  • The FPC sockets of the control board and the small board are both marked with CON, and the corresponding interfaces are connected.
  • The file uses an FPC cable holder that can be connected up and down. It should be noted that when the cable holders are connected down, use reverse cable connection.

Model structure:

Installation order:

Take the large keyboard as an example
Pre-assembly work
  • First, connect the 4 small PCBs to the keyboard body PCB using cables and burn the program.
  • Install 3-5 shafts, rollers and trackballs. Make sure they function normally before assembly.
  • Install the correct hot-melt copper nuts at the corresponding positions of the printed shell and base.
  • Keycap printing.
  • Attach the cotton strips to the protruding parts of the positioning plate (both on the front and back sides).
When burning the firmware for the first time, you can press and hold the button marked "B" on the back of the PCB and then plug in the USB cable to burn the firmware.
If you want to update the firmware, you can press and hold the "ESC" key on the keyboard and then insert the USB cable to burn the firmware.
For more information, please refer to Flashing Your Keyboard (QMK)
Next, start assembling
  1. Use screws to install the 4 small boards to the corresponding positions of the base (pay attention to the wiring and installation direction), and install screws at the bottom of the trackball base.
  2. Fix the left and right buttons on the keyboard PCB with screws.
  3. From bottom to top, place the bottom cotton, shaft seat cotton, keyboard PCB, sandwich cotton and positioning plate into the fan-shaped area of ​​the base in order.
  4. Insert the key switch.
  5. Put it into the housing and secure it with screws from the bottom.
  6. Install the keycaps to complete the assembly.
The screw and nut installation guide can be found here
Finally, this is our first open source project. If there are any shortcomings, you are welcome to criticize and correct us. Thank you.

References

mrjohnk. ADNS-9800. GitHub repository
Great story and the keyboard looks amazing.
reply