Vous n'êtes pas identifié(e).
⚠️⚠️⚠️ Ce forum va bientôt migrer vers Flarum, pour éviter de rester sur du vieux PHP non maintenu trop longtemps. Si vous avez une objection, vous pouvez venir m’en faire part sur ce topic. — Sardem FF7 ⚠️⚠️⚠️
Bon, j'ai profité d'un dimanche matin pour monter l'Ergodone :
Dans un premier temps, j'ai retiré les bitoniaux servant au passage des vis pour ne pas avoir à faire de trous trop grand dans la pcb.
Avant : Après :
J'ai ensuite marqué les positions des trous et pour m'éviter de couper des connexions j'ai sélectionné 3 zones sans risques pour percer. 3 et demi en fait car sur l'un des cotés il a fallut creuser un peu.
J'ai ensuite soudé les switchs sur la pcb :
J'ai merder un peu en n'enfonçant pas assez les switchs dans la pcb :
Mais ça ne gène pas au final.
Sur chaque pcb il y a 3 emplacements pour des leds, donc je les y ai mise mais il n'y a pas de trou dans le boitier à cette place là, si j'y trouve une utilité je ferai les trous après.
Ensuite est venu le temps de l'ajustage. il m'a fallut faire le trou pour la connexion mini usb clavier/pc car — à la différence de l'ergodox — la connectique se fait sur le coté gauche au lieu du droit.
Les leds que j'ai rajouté m'ont obligé à retirer de la masse dans le boitier :
J'ai agrandi les trous pour le passage du câble inter-clavier car sinon une fois le boitier fermé ça laissait trop d'ouverture.
Sachant que je n'ai que 4 vis pour fermer le boitier, il y a des endroits où malheureusement ça baille un peu.
Sur le boitier en façade, il y a un trou qui normalement devait être utile pour l'ergodox mais pour l'ergodone ça tombe sur le contrôleur du clavier esclave, c'est dommage mais je m'y ferai.
Il ne me reste plus que la programmation pour la disposition, mais je ferai ça plus tard
Hors ligne
L'ergodone n'utilise pas de Teensy 2.0 mais un Pro Micro. Donc le TeensyLoad ne fonctionne pas pour charger sa configuration. De plus il n'y a pas de bouton Reset sur ce contrôleur donc il faut faire un shunt entre GND et RST (encore un truc facile…).
Instruction de configuration et d'installation (en) : http://www.instructables.com/id/Set-up- … the-Ardui/
Reset du Pro Micro (en) : https://learn.sparkfun.com/tutorials/pr … ng-and-faq
Howto (en) : https://deskthority.net/workshop-f7/how … t8448.html
Compiler une disposition pour le Pro Micro :
Principes de fonctionnement : https://geekhack.org/index.php?topic=82693.0
Création de la disposition : http://www.keyboard-layout-editor.com/
Conversion pour le Pro Micro : TGK (TMK Keymap Generator) : https://tkg.io/
Transfert dans de Pro Micro : https://imgur.com/a/rfezG
Dernière modification par Elivagar (1/8/2017 23:29:18)
Hors ligne
Bonjour,
Je viens de terminer mon ergodone :
Rétroéclairage :
Après avoir revérifié les pistes, je reviens sur ce que j'ai dit, il n'est pas possible de faire de rétroéclairage avec l'ergodone.
Boitier :
Est-ce que quelqu'un à une idée de ce que pourrait couter un boitier de clavier imprimé en 3D? Quand j'aurais le temps (c'est à dire pas avant un moment) j'essaierai de me rapprocher d'un fablab pour voir ce qui est possible de faire...
Ajouter 3 LED de l'Ergodone ? :
Comme l'a évoqué Elivagar, il est possible de souder 3 LED sur la PCB main gauche. (à coté des résistances en haut à droite de la carte : voir discussions précédentes)
Je vais voir s'il est possible de rajouter 3 LED + 3 résistances sur la PCB main droite et utiliser des sorties libres de l'arduino pour les allumer. Les cotés négatifs, c'est qu'il va falloir recoder l'arduino mais aussi bricolé en ajoutant un câble supplémentaire entre les 2 parties main gauche, main droite.
Il y a peut-être une autre possibilité :
L'arduino (main gauche) communique avec le composant MSP23017 (main droite) par une liaison I2C. Le composant MSP23017 n'est autre qu'un composant permettant de déporter 16 Entrées/Sorties. D'après l'adressage des interrupteurs, je pense que seulement 13 E/S sont utilisées : SW0:x à SW5:x (6 entrées) + SWx:0 à SW0:6 (7 entrées). S'il reste bien 3 E/S libres et qu'il est possible de les configurer en sorties, cela peut éviter de tirer un nouveau câble entre les parties gauche et droite. A suivre...
Dernière modification par Manolo (7/8/2017 02:48:42)
Hors ligne
@Manolo : je me suis permis du fusionner tes 2 messages. Pour ton info je t'ai passé membre pour que tu puisse profiter pleinement du forum (MP, lien, édition de messages, …), chose qui se fait normalement automatiquement au bout de 5 messages, mesure anti-spam oblige.
Hors ligne
J'ai pas trop eu le temps mais voici ce que j'ai trouvé sur l'ergodone:
Arduino et MCP23017 en détail : Lien vers l'image (l'image est un peu grosse pour être affichée)
Infos générales sur l'ergodone (PCB-pro mini) : lien
Firmware non officiel, code source en C : lien
Je vais essayer de creuser sur ce dernier point pour tenter de reprogrammer l'ergodone.
Ajouter l'arduino au logiciel Arduino IDE (même si je vois pas trop à quoi cela peut nous servir): lien
Hors ligne
Après le montage il me restait la programmation, voila ceci fait.
Ce n'est pas si compliqué que ça en fait.
Dans un premier temps, il faut le navigateur Chrome, il est utile car pour le transfert du fichier de configuration dans le clavier il a été développé une extension dédié le TKG Chrome App.
Puis il faut prendre le temps de configurer sa disposition sur ce site : Keyboard Layout Editor
La fenêtre se compose de 2 parties, en haut la représentation du clavier, bas la configuration.
Pour changer une touche, il faut cliquer dessus puis dans l'onglet «Properties» de la partie basse, les champs les plus à gauche de «Top Legend» et «Bottom Legend».
Pour des raisons de compatibilité il faut que chaque touche corresponde à une touche présente sur le clavier Qwerty, les légendes à mettre sur les touches se trouvent là : https://tkg.io/#help
Il y a des exceptions et en particulier les touches fonctions, celle ci permettent, entre autre, de se déplacer dans les différentes couches. Pour cela dans la touche désirée il faut mettre dans le champs Top Legend Fn1 (et en incrémentant au fur et à mesure de l'utilisation des touches fonction)
Une fois sa couche terminée, il faut aller dans l'onglet «</>Raw Data», copier tout ce qu'il y a dans le champs, et le coller dans le champs Layer 0 du site TMK Keymap Generator et recommencer l'opération pour chaque couche que vous avez prévus (je préconise de sauvegarder ce code dans un fichier txt car il servira pour les futures modifications, s'il y en a).
Une fois que les Layouts sont remplies il faut s'occuper de la configuration des touches fonctions. Il y a plein de fonction possible, celle que j'utilise est le Layout action > Momentary qui me donne accès à la couche de la touche fonction tant que celle ci est appuyée.
Mon boitier étant opaque les leds ne me servent à rien, mais je les ai tout de même configurées pour le cas où je fasse des trous dans le boitier.
Les fonctions sont exportables, dans le menu du haut, «Tools», Export Fn. L'import permettra de retrouver sa configuration pour de futures modifs.
Une fois la disposition prête, il faut débrancher l'ergodone, appuyer sur la touche en haut à droite de la partie gauche du clavier (celle que correspond au Matrix 0,0) et rebrancher le clavier. À partir de ce moment le bouton «Burn .eep file» du site TMK Keymap Generator devient accessible. En cliquant dessus, la configuration est écrite dans le clavier et il est enfin prêt à l'usage.
Facile. Bon je dis ça mais dans mon merdouillage, le clavier ne fonction plus que sur 1 seul des ports USB de mon PC, les autres ne le voient pas. À noter aussi que le clavier ne fonctionne pas s'il est branché sur un port USB 3.
Voici le code que j'utilise pour mon clavier, bien entendu je suis obligé de conserver le driver Bépo car le clavier est configuré pour être reconnue par Windows comme un clavier normal, pour pouvoir afficher les caractères que l'on veut cela demande un peu plus de compétence que je n'en dispose dans le domaine :
Le Layer 0
[{x:3.5},"#\n3",{x:10.5},"*\n8"],
[{y:-0.875,x:2.5},"@\n2",{x:1},"$\n4",{x:8.5},"&\n7",{x:1},"(\n9"],
[{y:-0.875,x:5.5},"%\n5","+\n=",{x:4.5},"del","^\n6"],
[{y:-0.875,w:1.5},"~\n`","!\n1",{x:14.5},")\n0",{w:1.5},"-"],
[{y:-0.375,x:3.5},"E",{x:10.5},"I"],
[{y:-0.875,x:2.5},"W",{x:1},"R",{x:8.5},"U",{x:1},"O"],
[{y:-0.875,x:5.5},"T",{h:1.5},"Tab",{x:4.5,h:1.5},"Backspace","Y"],
[{y:-0.875,w:1.5},"|\n\\","Q",{x:14.5},"P",{w:1.5},"{\n["],
[{y:-0.375,x:3.5},"D",{x:10.5},"K"],
[{y:-0.875,x:2.5},"S",{x:1},"F",{x:8.5},"J",{x:1},"L"],
[{y:-0.875,x:5.5},"G",{x:6.5},"H"],
[{y:-0.875,w:1.5},"}\n]","A",{x:14.5},":\n;",{w:1.5},"\"\n'"],
[{y:-0.625,x:6.5,h:1.5},"enter",{x:4.5,h:1.5},"enter"],
[{y:-0.75,x:3.5},"C",{x:10.5},"<\n,"],
[{y:-0.875,x:2.5},"X",{x:1},"V",{x:8.5},"M",{x:1},">\n."],
[{y:-0.875,x:5.5},"B",{x:6.5},"N"],
[{y:-0.875,w:1.5},"shift","Z",{x:14.5},"?\n/",{w:1.5},"shift"],
[{y:-0.375,x:3.5},"AltGr",{x:10.5},"AltGr"],
[{y:-0.875,x:2.5},"Gui",{x:1},"shift",{x:8.5},"Fn1",{x:1},"Gui"],
[{y:-0.75,x:0.5},"Ctrl","Alt",{x:14.5},"Alt","Ctrl"],
[{r:30,rx:6.5,ry:4.25,y:-1,x:1},"Fn2","Esc"],
[{h:2},"space",{h:2},"Fn1","Alt"],
[{x:2},"fn4"],
[{r:-30,rx:13,y:-1,x:-3},"Caps","Fn3"],
[{x:-3},"Alt",{h:2},"shift",{h:2},"space"],
[{x:-3},"fn5"]
Le Layer 1
[{x:3.5,a:7},"",{x:10.5,a:4},"-"],
[{y:-0.875,x:2.5,a:7},"",{x:1},"",{x:8.5,a:4},"+",{x:1},"/"],
[{y:-0.875,x:5.5,a:7},"","",{x:4.5,a:4},"ins",{a:7},""],
[{y:-0.875,w:1.5},"","",{x:14.5,a:4},"*",{w:1.5},"="],
[{y:-0.375,x:3.5},"copy",{x:10.5},"6\nright"],
[{y:-0.875,x:2.5},"cut",{x:1},"paste",{x:8.5},"5",{x:1},"7\nhome"],
[{y:-0.875,x:5.5},"undo",{h:1.5},"again",{x:4.5,a:7,h:1.5},"",{a:4},","],
[{y:-0.875,a:7,w:1.5},"","",{x:14.5,a:4},"8\nup",{w:1.5},"9\npgup"],
[{y:-0.375,x:3.5,a:7},"",{x:10.5,a:4},"1\nend"],
[{y:-0.875,x:2.5,a:7},"",{x:1},"",{x:8.5,a:4},"0\nins",{x:1},"2\ndown"],
[{y:-0.875,x:5.5,a:7},"",{x:6.5,a:4},".\ndel"],
[{y:-0.875,a:7,w:1.5},"","",{x:14.5,a:4},"3\npgdn",{w:1.5},"4\nleft"],
[{y:-0.625,x:6.5,h:1.5},"calc",{x:4.5,a:7,h:1.5},""],
[{y:-0.75,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.875,x:5.5},"",{x:6.5},""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.75,x:0.5},"","",{x:14.5},"",""],
[{r:30,rx:6.5,ry:4.25,y:-1,x:1},"",""],
[{h:2},"",{h:2},"",""],
[{x:2},""],
[{r:-30,rx:13,y:-1,x:-3},"",""],
[{x:-3},"",{h:2},"",{h:2},""],
[{x:-3},""]
Le Layer 2
[{x:3.5},"F3",{x:10.5,a:7},""],
[{y:-0.875,x:2.5,a:4},"F2",{x:1},"F4",{x:8.5,a:7},"",{x:1},""],
[{y:-0.875,x:5.5,a:4},"F5","F6",{x:4.5,a:7},"",""],
[{y:-0.875,w:1.5},"",{a:4},"F1",{x:14.5,a:7},"",{w:1.5},""],
[{y:-0.375,x:3.5,a:4},"F9",{x:10.5,a:7},""],
[{y:-0.875,x:2.5,a:4},"F8",{x:1},"F10",{x:8.5,a:7},"",{x:1},""],
[{y:-0.875,x:5.5,a:4},"F11",{h:1.5},"F12",{x:4.5,a:7,h:1.5},"",""],
[{y:-0.875,w:1.5},"",{a:4},"F7",{x:14.5,a:7},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.875,x:5.5},"",{x:6.5},""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.625,x:6.5,a:4,h:1.5},"PSC",{x:4.5,a:7,h:1.5},""],
[{y:-0.75,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.875,x:5.5},"",{x:6.5},""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.75,x:0.5},"","",{x:14.5},"",""],
[{r:30,rx:6.5,ry:4.25,y:-1,x:1},"",""],
[{h:2},"",{h:2},"",""],
[{x:2},""],
[{r:-30,rx:13,y:-1,x:-3},"",""],
[{x:-3},"",{h:2},"",{h:2},""],
[{x:-3},""]
Mon Layer media
[{x:3.5,a:7},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5,a:4},"next",{x:1,a:7},""],
[{y:-0.875,x:5.5},"","",{x:4.5,a:4},"mute","play"],
[{y:-0.875,a:7,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5,a:4},"prev",{x:1,a:7},""],
[{y:-0.875,x:5.5},"",{h:1.5},"",{x:4.5,a:4,h:1.5},"volup","stop"],
[{y:-0.875,a:7,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1,n:true},"",{x:8.5,n:true},"",{x:1},""],
[{y:-0.875,x:5.5},"",{x:6.5},""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.625,x:6.5,h:1.5},"",{x:4.5,a:4,h:1.5},"voldown"],
[{y:-0.75,x:3.5,a:7},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.875,x:5.5},"",{x:6.5},""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.75,x:0.5},"","",{x:14.5},"",""],
[{r:30,rx:6.5,ry:4.25,y:-1,x:1},"",""],
[{h:2},"",{h:2},"",""],
[{x:2},""],
[{r:-30,rx:13,y:-1,x:-3},"",""],
[{x:-3},"",{h:2},"",{h:2},""],
[{x:-3},""]
Le code des Fonctions et Leds à importer :
"1":["ACTION_LAYER_MOMENTARY",1],"2":["ACTION_LAYER_
MOMENTARY","2"],"3":["ACTION_LAYER_MOMENTARY","3"],"4":["
ACTION_MODS_KEY","LR_LEFT",["MOD_CTL","MOD_SFT"],"KC_
DELETE"],"5":["ACTION_MODS_TAP_KEY","LR_RIGHT",["MOD_ALT"],"KC_SPACE"]
Et en cadeau le Layer Vierge
[{x:3.5,a:7},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.875,x:5.5},"","",{x:4.5},"",""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.875,x:5.5},"",{h:1.5},"",{x:4.5,h:1.5},"",""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1,n:true},"",{x:8.5,n:true},"",{x:1},""],
[{y:-0.875,x:5.5},"",{x:6.5},""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.625,x:6.5,h:1.5},"",{x:4.5,h:1.5},""],
[{y:-0.75,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.875,x:5.5},"",{x:6.5},""],
[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
[{y:-0.375,x:3.5},"",{x:10.5},""],
[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""],
[{y:-0.75,x:0.5},"","",{x:14.5},"",""],
[{r:30,rx:6.5,ry:4.25,y:-1,x:1},"",""],
[{h:2},"",{h:2},"",""],
[{x:2},""],
[{r:-30,rx:13,y:-1,x:-3},"",""],
[{x:-3},"",{h:2},"",{h:2},""],
[{x:-3},""]
Hors ligne
Voilà un post qui ne demande qu’à être recopié ou à avoir un lien dans le wiki…
TM 2030, bépo depuis 2010
Open BSD - pdksh - ratpoison + dmenu + tmux + st - Vim - zathura ou mupdf - imv ou sxiv - keynav
ma page du wiki
Hors ligne
C'est exactement ce que j'allais dire
Hors ligne