updated documentation
This commit is contained in:
parent
4071c755d5
commit
cdf0fda123
@ -7,3 +7,10 @@ $Id: Changelog.txt,v 1.3 2008/07/12 21:23:36 rschaten Exp $
|
||||
* Release 080712
|
||||
|
||||
- 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
|
||||
|
@ -50,19 +50,30 @@
|
||||
* update the keyboard's firmware without disassembling it, and without the
|
||||
* 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?
|
||||
*
|
||||
* 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
|
||||
* 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
|
||||
* 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.
|
||||
* C=64 or the Schneider CPC, keyboards with non-PC-connectors like -- as
|
||||
* mentioned -- those made by Sun, to modern hardware that could need a few
|
||||
* more features.
|
||||
*
|
||||
* \subsection sec_features Features
|
||||
*
|
||||
@ -91,9 +102,10 @@
|
||||
* \section sec_install Building and installing
|
||||
*
|
||||
* 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
|
||||
* new features, you don't need to build the software yourself. You can use the
|
||||
* hex-files included in this package.
|
||||
* to customize both makefiles to fit to your system and to the keyboard model
|
||||
* you want to run the firmware on. If you don't want to add new features, you
|
||||
* don't need to build the software yourself. You can use the hex-files
|
||||
* included in this package.
|
||||
*
|
||||
* \subsection sec_boot Bootloader
|
||||
*
|
||||
@ -123,10 +135,10 @@
|
||||
* Afterwards you can put the programmer back into the toolbox, you won't need
|
||||
* 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
|
||||
* showing a running light on the LEDs. That firmware will be flashed over the
|
||||
* normal USB-cable that the keyboard is connected with.
|
||||
* fading all LEDs on and off. That firmware will be flashed over the normal
|
||||
* USB-cable that the keyboard is connected with.
|
||||
*
|
||||
* \subsection sec_fw Firmware
|
||||
*
|
||||
@ -159,11 +171,7 @@
|
||||
*
|
||||
* \section sec_drawbacks Drawbacks
|
||||
*
|
||||
* I don't know if and how keyboard manufacturers face the problem of ghost
|
||||
* 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.
|
||||
* Let me know if you find any. :-)
|
||||
*
|
||||
* \section sec_files Files in the distribution
|
||||
*
|
||||
@ -175,9 +183,11 @@
|
||||
* only modified the bootloaderconfig.h and the Makefile.
|
||||
* - \e USBaspLoader.2008-02-05.tar.gz: The unmodified bootloader sources, for
|
||||
* reference.
|
||||
* - \e circuit: Circuit diagrams in PDF and KiCAD format. KiCAD is a free
|
||||
* schematic- and layout-tool, you can learn more about it at its homepage:
|
||||
* - \e circuit_ibm_model_m: Circuit diagrams for the IBM Model M, in PDF and
|
||||
* 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/
|
||||
* - \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
|
||||
* for the USB driver. Look in firmware/usbdrv/License.txt for further info.
|
||||
* - \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
|
||||
* 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
|
||||
* gave me the idea for this project.
|
||||
*
|
||||
|
Loading…
Reference in New Issue
Block a user