Difference between revisions of "Keyboard"

From Balthazar
 
(16 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
We have based our keyboard development following the Open Sourced [https://github.com/adereth/dactyl-keyboard Parameterized ergonomic keyboard] done by Matt Adereth
 
We have based our keyboard development following the Open Sourced [https://github.com/adereth/dactyl-keyboard Parameterized ergonomic keyboard] done by Matt Adereth
and modified for our developement by Balthazar team. [https://github.com/g1smo/balthazar_dactyl Here] you can find our detailed documentation on a current modification and [https://github.com/g1smo/balthazar_qmk_firmware here] QMK firmware that we use in this development.
+
and modified for our development by the Balthazar team. [https://github.com/g1smo/balthazar_dactyl Here] you can find our detailed documentation on a current modification and [https://github.com/g1smo/balthazar_qmk_firmware here] QMK firmware that we use in this development.
Below you can see our modifications and although this design is currently divided in left and right we will merge this into a single keyboard controller for our laptop.
+
Below you can see our modifications and although this design is currently divided into left and right we will merge this into a single keyboard controller for our laptop.
  
 
=== Dev PCB ===
 
=== Dev PCB ===
  
[[File:Pcb left.png |thumb|left]]
+
<gallery>
[[File:Pcb right.png|thumb|left]]
+
File:Pcb left.png |thumb|
[[File:Dm keyboard left wire diagram.png|thumb|left]]
+
File:Pcb right.png|thumb|
[[File:Dm keyboard right wire diagram.png|thumb|left]]
+
File:Dm keyboard left wire diagram.png|thumb|
 +
File:Dm keyboard right wire diagram.png|thumb|
 +
</gallery>
  
=== New keyboard PCB has been developed and adopted to a Balthazar dimensions ===
+
=== New keyboard PCB has been developed and adopted to Balthazar dimensions ===
  
[[File:Pcb-keyboard-proto05.png|thumb|left]]
+
<gallery>
[[File:Pcb-keyboard-proto06.png|thumb|left]]
+
File:Pcb-keyboard-proto05.png|thumb|top
 +
File:Pcb-keyboard-proto06.png|thumb|bottom
 +
</gallery>
  
 
Details on a new Keyboard module
 
Details on a new Keyboard module
Line 24: Line 28:
 
     • minimally (1/10th ) reduced keyboard size
 
     • minimally (1/10th ) reduced keyboard size
 
     • silicone rubber waterproof overall keys blanket
 
     • silicone rubber waterproof overall keys blanket
     • microcontroller shared between keyboard, charger, safety control and a touchpad PS2 to USB
+
     • microcontroller shared between keyboard, charger, safety control, and a touchpad PS2 to USB
  
 
The computer keyboard system with microcontroller (for now an 8-bit Atmel built into a small Sparkfun ProMicro board)
 
The computer keyboard system with microcontroller (for now an 8-bit Atmel built into a small Sparkfun ProMicro board)
A normal ISO keyboard layout is used. An option is given to test the ability of the microcontroller to handle also the control for PSU board and the touchpad module data transfer to USB. Keypad and touchpad user activities are usually mutually exclusive – so this seems ok. Charger control is active a couple of seconds on startup of the system, so this is also ok. In case of some charger error there is a mechanical switch on PSU board to stop charging. In this way three functions would be fulfilled in a single microcontroller – connected to the system with one USB.
+
A normal ISO keyboard layout is used. An option is given to test the ability of the microcontroller to handle also the control for the PSU board and the touchpad module data transfer to USB. Keypad and touchpad user activities are usually mutually exclusive – so this seems ok. Charger control is active a couple of seconds on startup of the system, so this is also ok. In case of some charger error, there is a mechanical switch on the PSU board to stop charging. In this way, three functions would be fulfilled in a single microcontroller – connected to the system with one USB.
  
Keyboard pcb has some dimensions already defined by the LCD's dimensions of 13.3 inch in diagonal: 290mm x 180mm. The width is the most determining factor for the keys raster which is about 17mm – instead of the regular 19mm. The keys have some ergonomic solution that gives some additional design touch.   
+
Keyboard PCB has some dimensions already defined by the LCD's dimensions of 13.3 inches in diagonal: 290mm x 180mm. The width is the most determining factor for the keys raster, which is about 17mm – instead of the regular 19mm. The keys have some ergonomic solution that gives some additional design touch.   
  
The keyboard switches are important but are for now very typical low cost membrane switches. A little better solution are the softer (silicone) – but still membrane – switches (not much love for the higher quality Cherry buttons). The idea is to have a waterproof (silicone) layer over the whole board. The board can then already act as a top cover. The feel of silicone rubber is preferred to that of natural rubber.  
+
The keyboard switches are important but are for now very typical low-cost membrane switches. A little better solution is the softer (silicone) – but still membrane – switches (not much love for the higher quality Cherry buttons). The idea is to have a waterproof (silicone) layer over the whole board. The board can then already act as a top cover. The feel of silicone rubber is preferred to that of natural rubber.  
  
Keyboard Schematics:  
+
Keyboard Schematics in:  
[[File:BalthazarKeyboardSchematic02.pdf|thumb|left]]
+
[[:File:BalthazarKeyboardSchematic02.pdf|.PDF]]
 
   
 
   
Bill of materials:  
+
Bill of materials (BoM) in:  
[[File:BalthazarKeyboard-Bill.ods|thumb|left]]
+
[[:File:BalthazarKeyboard-Bill.ods|.ODS]]
  
PCB is ready for prototyping.
+
PCB is ready for prototyping as KiCad files are available at our [https://github.com/balthazar-space Github] pages.
  
[[File:Pcb-keyboard-proto03.png|thumb|left]]
+
Those will be regularly updated as schematics and PCBs are continuously improved and optimized.
[[File:Pcb-keyboard-proto07.png|thumb|left]]
+
 
[[File:Pcb-keyboard-proto04.png|thumb|left]]
+
<gallery>
 +
File:Pcb-keyboard-proto03.png|top
 +
File:Pcb-keyboard-proto07.png|side
 +
File:Pcb-keyboard-proto04.png|bottom
 +
</gallery>
 +
 
 +
=== Prototype PCB ===
 +
 
 +
In early November 2020, we have received prototypes of keyboard PCBs, ready for implementing and connecting it to the other modules and for the correct dimensioning of a case and adjoining the screen. Here are the photos of a prototype, also with a 13.3" screen.
 +
 
 +
<gallery>
 +
File:Key schem.png|thumb|with the schematic
 +
File:Key scr1.png|thumb|with the screen
 +
File:Key balt2cl.png|thumb|close-up with logo
 +
</gallery>
 +
 
 +
Here it is with the key modules soldered on a keyboard prototype PCB, also with the controller chip and a micro USB.
 +
 
 +
<gallery>
 +
File:Key solderedon.png|thumb|with the keys soldered on
 +
File:Key back.png|thumb|back side with a controller
 +
File:Keybackclup.png|thumb|controller close-up
 +
File:Key keyonclup.png|thumb|key modules close-up
 +
</gallery>
 +
 
 +
 
 +
Go to:
 +
[[I/O_USB|I/O hub]]  or [[Power_Supply|Power Supply]]

Latest revision as of 10:31, 11 February 2022

Keyboard

We have based our keyboard development following the Open Sourced Parameterized ergonomic keyboard done by Matt Adereth and modified for our development by the Balthazar team. Here you can find our detailed documentation on a current modification and here QMK firmware that we use in this development. Below you can see our modifications and although this design is currently divided into left and right we will merge this into a single keyboard controller for our laptop.

Dev PCB

New keyboard PCB has been developed and adopted to Balthazar dimensions

Details on a new Keyboard module

Features:

   • ISO standard keyboard layout
   • an ergonomic design
   • minimally (1/10th ) reduced keyboard size
   • silicone rubber waterproof overall keys blanket
   • microcontroller shared between keyboard, charger, safety control, and a touchpad PS2 to USB

The computer keyboard system with microcontroller (for now an 8-bit Atmel built into a small Sparkfun ProMicro board) A normal ISO keyboard layout is used. An option is given to test the ability of the microcontroller to handle also the control for the PSU board and the touchpad module data transfer to USB. Keypad and touchpad user activities are usually mutually exclusive – so this seems ok. Charger control is active a couple of seconds on startup of the system, so this is also ok. In case of some charger error, there is a mechanical switch on the PSU board to stop charging. In this way, three functions would be fulfilled in a single microcontroller – connected to the system with one USB.

Keyboard PCB has some dimensions already defined by the LCD's dimensions of 13.3 inches in diagonal: 290mm x 180mm. The width is the most determining factor for the keys raster, which is about 17mm – instead of the regular 19mm. The keys have some ergonomic solution that gives some additional design touch.

The keyboard switches are important but are for now very typical low-cost membrane switches. A little better solution is the softer (silicone) – but still membrane – switches (not much love for the higher quality Cherry buttons). The idea is to have a waterproof (silicone) layer over the whole board. The board can then already act as a top cover. The feel of silicone rubber is preferred to that of natural rubber.

Keyboard Schematics in: .PDF

Bill of materials (BoM) in: .ODS

PCB is ready for prototyping as KiCad files are available at our Github pages.

Those will be regularly updated as schematics and PCBs are continuously improved and optimized.

Prototype PCB

In early November 2020, we have received prototypes of keyboard PCBs, ready for implementing and connecting it to the other modules and for the correct dimensioning of a case and adjoining the screen. Here are the photos of a prototype, also with a 13.3" screen.

Here it is with the key modules soldered on a keyboard prototype PCB, also with the controller chip and a micro USB.


Go to: 
I/O hub  or Power Supply
Nlnet banner.png NGI0 tag.png NGI0Entrust tag.png