
Clavier
Bilaikra2014/Keyboard
Lorsque la batterie est déchargée, le clavier sera branché à l'ordinateur via une prise USB. La prise de l'ordinateur va alimenter le clavier, et charger la batterie avec le courant restant.

Lorsque la batterie est déchargée, le clavier sera branché à l'ordinateur via une prise USB. La prise de l'ordinateur va alimenter le clavier, et charger la batterie avec le courant restant.
Matrice is an open-source printed circuit board by Bilaikra2014, from the Bilaikra2014/Keyboard repository on GitHub. It is a 2-layer board of 300.5 × 95.6 mm with 150 parts on 98 nets, routed with 539 tracks and 22 vias.
It is built around the 1N4148WT and COM-15141. Its parts include 71 switches, 70 diodes, 3 resistors and 1 connector.
Lorsque la batterie est déchargée, le clavier sera branché à l'ordinateur via une prise USB. La prise de l'ordinateur va alimenter le clavier, et charger la batterie avec le courant restant. Une prise USB A d'ordinateur peut fournir en général jusqu'à 500 mA.
Pour gérer l'alimentation et la charge, le composant utilisé sera le MCP73871 qui permet :
Alimentation et Puissance
Contrôle et Logique:
Programmation et Sécurité:
Indicateurs visuel: Ces broches tirent vers la masse, on y connecte des leds
Le µC sera alimenté par du 5v ou bien du 3v7, or il n'accepte que du 3v3. Il faut donc utiliser un régulateur de tension. Le régulateur de tension utilisé est un BU33SD5WGTR.
La mesure de la batterie permet d'indiquer à l'utilisateur si le clavier à besoin d'être chargé ou pas. La tension étant supérieur aux 3v3 de l'esp32, il faut diviser cette tension pour qu'elle puisse être lue par l'esp32 à travers un pont diviseur de tension.
Pont Diviseur de tension:
Le pont diviseur de tension formé par R16 et R17 permet d'ajuster la tension mesurée par L'ESP32. La tension de la batterie varie entre 4v2 et 3v7, ce qui donnera pour l'ESP32 une tension mesurée entre 3v et 2,64v, ce qui est dans la plage de donnée mesurable.
Ajout des transistors Q3 et Q4:
Utiliser simplement un pont diviseur consommerait du courant en permanance, aussi minime soit-il. C'est pour cela que des transistors ont été ajouté. Le transistor Q2 est un mosfet canal P, qui lie la batterie au pont diviseur lorsqu'il est passant. Ce transistor est piloté par son complémentaire Q1, un canal N commandé par l'esp32. Ce transistor sera passant uniquement lors de la mesure déclenchée par l'ESP32. La résistance R15 sert de pull-up pour maintenir le transistor Q2 bloqué quand Q1 est bloqué. Ce montage permet de relier le pont diviseur à la batterie uniquement lors de la mesure, limitant ainsi la consommation du pont diviseur.
Le port USB-C permet l'utilisation filaire du clavier, ainsi que la recharge de la batterie.
Les broches D+ et D- permettent la communication ESP32-Ordinateur. Les broches CC1 et CC2 doivent être liées à des résistances de 5k1 de pull-down pour que la source détecte la présence du clavier et délivre ainsi le 5v.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 70 | 1N4148WT | Diode_SMD:D_SOD-523 | D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23, D24 +54 |
| 5 | MountingHole_Pad | MountingHole:MountingHole_3.2mm_M3_DIN965_Pad | H1, H2, H3, H4, H5 |
| 3 | 10k | Resistor_SMD:R_0805_2012Metric | R3, R8, R10 |
| 1 | ! | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW54 |
| 1 | $ | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW57 |
| 1 | ) | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW51 |
| 1 | * | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW58 |
| 1 | , | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW41 |
| 1 | 0 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW46 |
| 1 | 1 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW6 |
| 1 | 2 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW11 |
| 1 | 3 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW16 |
| 1 | 4 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW20 |
| 1 | 5 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW24 |
| 1 | 6 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW29 |
| 1 | 7 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW33 |
| 1 | 8 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW38 |
| 1 | 9 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW42 |
| 1 | : | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW49 |
| 1 | ; | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW45 |
| 1 | < | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW9 |
| 1 | = | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW56 |
| 1 | A | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW7 |
| 1 | Alt | MyFootprint:SW_Cherry_MX_Plate_1.25u | SW15 |
| 1 | B | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW32 |
| 1 | C | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW23 |
| 1 | COM-15141 | Rotary_Encoder:COM-15141_SPK | SW37 |
| 1 | CTRL | MyFootprint:SW_Cherry_MX_Plate_1.25u | SW5 |
| 1 | Conn_02x13_Odd_Even | Connector_IDC:IDC-Header_2x13_P2.54mm_Horizontal | J1 |
| 1 | D | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW18 |
| 1 | Definir | MyFootprint:SW_Cherry_MX_Plate_1.50u | SW65 |
| 1 | Delete | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW61 |
| 1 | Down | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW63 |
| 1 | E | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW17 |
| 1 | Entrer | MyFootprint:SW_Cherry_MX_Plate_1.75u | SW64 |
| 1 | F | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW22 |
| 1 | Fn | MyFootprint:SW_Cherry_MX_Plate_1.25u | SW70 |
| 1 | G | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW26 |
| 1 | H | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW31 |
| 1 | I | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW39 |
| 1 | J | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW35 |
| 1 | K | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW40 |
| 1 | L | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW44 |
| 1 | Left | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW60 |
| 1 | M | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW48 |
| 1 | N | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW36 |
| 1 | O | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW43 |
| 1 | P | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW47 |
| 1 | PageDown | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW67 |
| 1 | PageUp | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW59 |
| 1 | Q | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW8 |
| 1 | R | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW21 |
| 1 | R4 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW73 |
| 1 | R5 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW50 |
| 1 | R6 | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW55 |
| 1 | Right | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW68 |
| 1 | S | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW13 |
| 1 | S1 | MyFootprint:SW_Cherry_MX_Plate_1.25u | SW71 |
| 1 | S2 | MyFootprint:SW_Cherry_MX_Plate_1.25u | SW72 |
| 1 | Shift | MyFootprint:SW_Cherry_MX_Plate_1.25u | SW4 |
| 1 | Space | MyFootprint:SW_Cherry_MX_Plate_1.75u | SW28 |
| 1 | Supp | MyFootprint:SW_Cherry_MX_Plate_1.25u | SW66 |
| 1 | T | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW25 |
| 1 | Tab | MyFootprint:SW_Cherry_MX_Plate_1.50u | SW2 |
| 1 | U | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW34 |
| 1 | Up | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW62 |
| 1 | V | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW27 |
| 1 | VMaj | MyFootprint:SW_Cherry_MX_Plate_1.75u | SW3 |
| 1 | W | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW14 |
| 1 | Win | MyFootprint:SW_Cherry_MX_Plate_1.25u | SW10 |
| 1 | X | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW19 |
| 1 | Y | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW30 |
| 1 | Z | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW12 |
| 1 | ^ | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW52 |
| 1 | ù | MyFootprint:SW_Cherry_MX_Plate_1.00u | SW53 |

Bilaikra2014/Keyboard
Lorsque la batterie est déchargée, le clavier sera branché à l'ordinateur via une prise USB. La prise de l'ordinateur va alimenter le clavier, et charger la batterie avec le courant restant.

Bilaikra2014/Keyboard
Lorsque la batterie est déchargée, le clavier sera branché à l'ordinateur via une prise USB. La prise de l'ordinateur va alimenter le clavier, et charger la batterie avec le courant restant.

shanteacontrols/OpenDeck
A platform for building interactive control and sensing devices using MIDI and OSC built with Zephyr RTOS.

beekeeb/zerosprey42
Zerosprey42 Keyboard is a wired, beginner friendly, choc hotswap, MonoBlockSplit (Unibody), column-staggered, DIY mechanical keyboard.


todbot/macropadsynthplug
Turn StemmaQT port by into Audio Out + MIDI In

acha666/RP2040_ToolheadPCB_SB
A Toolhead PCB for VORON StealthBurner based on RP2040


floookay/olice
The olice is 40% alice-like ortho keyboard. It features two board extension modules that can be magnetically attached on the sides.

drpykachu/Sonar-Watch
A self-designed, home-made watch intended to tell time in a funky and unique way!
It measures 300.5 × 95.6 mm and has 2 copper layers, 1.6 mm thick.
150 parts, built around the 1N4148WT and COM-15141. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the Bilaikra2014/Keyboard repository on GitHub, at the commit this page was made from: the board is Electronique/Clavier/Matrice/matrice.kicad_pcb and its schematic Electronique/Clavier/Matrice/batterie.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask Bilaikra2014 before reusing the design.