updated documentation

This commit is contained in:
Ronald Schaten 2008-11-03 20:32:11 +00:00
parent 4071c755d5
commit cdf0fda123
2 changed files with 41 additions and 21 deletions

View File

@ -7,3 +7,10 @@ $Id: Changelog.txt,v 1.3 2008/07/12 21:23:36 rschaten Exp $
* Release 080712 * Release 080712
- fixed usbSendReport() and backslash-key on european keyboards - fixed usbSendReport() and backslash-key on european keyboards
* Release TODO
- ghost key detection and prevention
- support for two different hardware models, added Sun Type 5
- bootloader hotkey moved to D, to provide consistency on keyboards without
numeric keypad

View File

@ -50,19 +50,30 @@
* update the keyboard's firmware without disassembling it, and without the * update the keyboard's firmware without disassembling it, and without the
* need for a dedicated programmer. * need for a dedicated programmer.
* *
* \subsection sec_models Models
*
* Till now, I modified the following keyboard models:
* - IBM Model M: The initial project, hardware as described above. This
* keyboard has a 8x16-matrix, all the lines can be connected directly to
* the controller.
* - Sun Type 5: Another classic. A nice model with many keys. Some of them
* are placed a bit uncommon, but if you think about it the layout is great.
* This model was never intended to work with a PC, it has some kind of
* proprietary connector. The contained matrix has 13 columns and 22 rows,
* which is too big for a naked Mega32. So I had to make a circuit with some
* shift registers.
*
* Included in the package are circuits for both models, and a firmware that
* can be compiled separately for each one.
*
* \subsection sec_hardware Other hardware? * \subsection sec_hardware Other hardware?
* *
* As mentioned, the controller in this project is just connected to an * As mentioned, the controller in this project is just connected to an
* ordinary keyboard matrix. You can find this kind of matrix in all kinds of * ordinary keyboard matrix. You can find this kind of matrix in all kinds of
* keyboards, from key-telephones over good old hardware like the Commodore * keyboards, from key-telephones over good old hardware like the Commodore
* C=64 or the Schneider CPC, keyboards with non-PC-connectors like those made * C=64 or the Schneider CPC, keyboards with non-PC-connectors like -- as
* by Sun, to modern hardware that could need a few more features. * mentioned -- those made by Sun, to modern hardware that could need a few
* * more features.
* Till now, I just made a PCB layout for the IBM Model M, but I intend to
* modify at least a Sun keyboard. In order to do that, I expect having to
* refactor the key-scanning, since the key-matrix is not 16x8. The positions
* of the keys on the matrix will be different, I'll have to re-engineer that.
* And of course, I'll have to make another PCB.
* *
* \subsection sec_features Features * \subsection sec_features Features
* *
@ -91,9 +102,10 @@
* \section sec_install Building and installing * \section sec_install Building and installing
* *
* Both, the bootloader and firmware are simply built with "make". You may need * Both, the bootloader and firmware are simply built with "make". You may need
* to customize both makefiles to fit to your system. If you don't want to add * to customize both makefiles to fit to your system and to the keyboard model
* new features, you don't need to build the software yourself. You can use the * you want to run the firmware on. If you don't want to add new features, you
* hex-files included in this package. * don't need to build the software yourself. You can use the hex-files
* included in this package.
* *
* \subsection sec_boot Bootloader * \subsection sec_boot Bootloader
* *
@ -123,10 +135,10 @@
* Afterwards you can put the programmer back into the toolbox, you won't need * Afterwards you can put the programmer back into the toolbox, you won't need
* it from here on. * it from here on.
* *
* When you plug in the device while holding the minus-key on the number-keypad * When you plug in the device while holding the D-key (D is for Dulcimer)
* pressed, the keyboard indicates that it would like to get a new firmware by * pressed, the keyboard indicates that it would like to get a new firmware by
* showing a running light on the LEDs. That firmware will be flashed over the * fading all LEDs on and off. That firmware will be flashed over the normal
* normal USB-cable that the keyboard is connected with. * USB-cable that the keyboard is connected with.
* *
* \subsection sec_fw Firmware * \subsection sec_fw Firmware
* *
@ -159,11 +171,7 @@
* *
* \section sec_drawbacks Drawbacks * \section sec_drawbacks Drawbacks
* *
* I don't know if and how keyboard manufacturers face the problem of ghost * Let me know if you find any. :-)
* keys, I didn't take special measurements for this. I hope that the engineers
* at IBM distributed the keys on the matrix in a way that minimizes this
* problem. Don't misunderstand: I haven't experienced that on this keyboard,
* but I know that it's a common problem on key-matrixes.
* *
* \section sec_files Files in the distribution * \section sec_files Files in the distribution
* *
@ -175,9 +183,11 @@
* only modified the bootloaderconfig.h and the Makefile. * only modified the bootloaderconfig.h and the Makefile.
* - \e USBaspLoader.2008-02-05.tar.gz: The unmodified bootloader sources, for * - \e USBaspLoader.2008-02-05.tar.gz: The unmodified bootloader sources, for
* reference. * reference.
* - \e circuit: Circuit diagrams in PDF and KiCAD format. KiCAD is a free * - \e circuit_ibm_model_m: Circuit diagrams for the IBM Model M, in PDF and
* schematic- and layout-tool, you can learn more about it at its homepage: * KiCAD format. KiCAD is a free schematic- and layout-tool, you can learn
* more about it at its homepage:
* http://www.lis.inpg.fr/realise_au_lis/kicad/ * http://www.lis.inpg.fr/realise_au_lis/kicad/
* - \e circuit_sun_type_5: Circuit diagrams for the Sun Type 5 keyboard.
* - \e License.txt: Public license for all contents of this project, except * - \e License.txt: Public license for all contents of this project, except
* for the USB driver. Look in firmware/usbdrv/License.txt for further info. * for the USB driver. Look in firmware/usbdrv/License.txt for further info.
* - \e Changelog.txt: Logfile documenting changes in soft-, firm- and * - \e Changelog.txt: Logfile documenting changes in soft-, firm- and
@ -197,6 +207,9 @@
* answered many stupid questions about electronics I had during the last few * answered many stupid questions about electronics I had during the last few
* years. * years.
* *
* Once again, <b>Thomas Stegemann</b> supported this project. Ghost key
* prevention and the possibility to work on different models are his work.
*
* And of course I'd like to thank <b>FaUl</b> of the Chaostreff Dortmund who * And of course I'd like to thank <b>FaUl</b> of the Chaostreff Dortmund who
* gave me the idea for this project. * gave me the idea for this project.
* *