diff options
Diffstat (limited to 'guide/README.org')
-rw-r--r-- | guide/README.org | 56 |
1 files changed, 55 insertions, 1 deletions
diff --git a/guide/README.org b/guide/README.org index d9b94e4..457fe82 100644 --- a/guide/README.org +++ b/guide/README.org @@ -93,6 +93,8 @@ - Here too firmware and wiring go hand in hand, you pretty much have to have a detailed look at the firmware you are using before wiring anything. I provide my modification of the "ergodox-firmware" over here: https://github.com/BubblesToTheLimit/ergodox-firmware + - TODO: Make a successfull pull-request, such that it is available in the official + ergodox-firmware - Some of the steps of this guide may not be described in much detail, but in contrast to option one there is a whole lot more of information. - [[Route 2: Dactyl Hand-Wiring Guide]] @@ -171,6 +173,58 @@ [[file:wiring-create-rows-both-sides.jpg]] - Because this was my first soldering job i went ahead and tested each one of the 70 switches. + You might want to go ahead and test each one of the 70 switches with a multimeter. [[file:wiring-create-rows-testing.jpg]] + + The next step is to create the columns by soldering the diodes. Notice which way these diodes + are directed here, the way these diodes are directed, we have to have a firmware that "drives + the rows". (TODO: insert diagram here) Luckily in our firmware "ergodox-firmware" we have the + option that adapts to that. However if you want to try and use the "tmk_keyboard" firmware + which seems to be also interesting you want to wire the diodes the other way. This way the + "columns are driving". As a side note, for some reason the tmk_keyboard firmware things of rows + as columns and the other way around, so if you look through the source code it will also see + "drive rows", even though that means "driving columns". + + The tmk_keyboard firmware could also be used for this kind of wiring, but it would have to be + rewritten, maybe in a beautiful way, such that it can also "drive rows". However I didnt go + ahead and perfomed that rewriting, so I had to stick with the "ergodox-firmware". In retrospect + I'd wish I had wired the diodes the other way around. + + The first picture doesnt show how the 6 thumb-keys are actually individually connected to the 6 + main columns. + + [[file:wiring-create-columns-left.jpg]] + + This second picture shows how the 6 thumb-keys are actually connected to the 6 main columns. + + [[file:wiring-create-columns-right.jpg]] + + TODO: Insert diagram of how the thumb-keys are connected to the main clumns. + + The next step is to wire the Teensy 2.0 and the MCP 23018 in place. + Everything necessary for that really is the following circuit diagram + + [[file:circuit-diagram.svg]] + + [[file:rows-and-columns-connected-to-chips.jpg]] + + Things to note here: + - The columns for the MCP go from 0 to 6, the columns for the Teensy go from 7 to D (counting + in hexadecimal) which makes great sence, since the MCP is left to the Teensy and we read from + left to right. + - When debugging this and using the ergodox-firmware, both sides have to be wired completely + and actually connected, dont expect the keyboard to work before that. The reason being is how + the ergodox-firmware stops completely if either the Teensy or the MCP weren't initiated + properly. + - In the circuit-diagram the columns on the left side (MCP side) actually go from GPA5 to INTA + (TODO: Update the circuit diagram and get rid of this point) + - The LEDs are handy for debugging, definately go ahead and connect those. When the keyboard + starts successfully two of the LEDs light up shortly. + - From the Teensy over to the MCP go exactly 4 connections. The blue, the red and the two green + ones. This is done using the TTRS jacks and cable (TODO: Add picture here how the jacks are + wired) + - Yes, the connection from B4 to VCC doesnt seem to make any sense, but the B4 port actually + gets used directly in the ergodox-firmware, so just connect those connections that make no + sense on first sight and either dont question it or find out why this is necessary by going + through the firmware in great detail. |