-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Pull‐Up Resistor
Keyboard converter needs pull up resistor on signal lines in most cases. Without the pull-up resistors it may not work correctly.
Place the resistor between VCC and signal line like diagram below. In general 1K Ohm is recommended for keyboard converters. Consult with instructions of target converter.
You can use 1/10W or higher power rating of resistor. See this for resistor power rating.
Keyboard MCU(AVR)
-----. ,-----.
5V|------------------------------+--+----|VCC |
| | | | |
| R R | |
| | | | |
DATA|------------------------------|--+----|PD0 |
CLOCK|------------------------------+-------|PD1 |
| | |
GND|--------------------------------------|GND |
-----' `-----'
R: 1K Ohm resistor
https://geekhack.org/index.php?topic=103648.msg2840078#msg2840078
You must have an external pull-up resistor between VCC(5V) and DATA(PD0) line. 1k ohm is strongly recommended.(470 ohm is more legitimate? see this.)
4.7k-10k won't work in some cases like longer curled cable or daisy-chained multiple devices. See Troubles below.
Keyboard MCU(AVR)
-----. ,-----.
5V|---------------------------------+----|VCC |
| | | |
| R | |
| | | |
DATA|---------------------------------+----|PD0 |
| | |
GND|--------------------------------------|GND |
-----' `-----'
R: 1K Ohm resistor
https://geekhack.org/index.php?topic=14290.0
https://github.com/tmk/tmk_keyboard/wiki/Apple-Desktop-Bus#pull-up-resistor
People have had many troubles without pull-up.
- 4.7k didn't work with daisy-chained multiple devices: https://github.com/tmk/tmk_keyboard/issues/683#issuecomment-850190574
- Some mouses required 4.7k ohm and didn't work with 10k pull-up. https://geekhack.org/index.php?topic=14290.msg3117619#msg3117619
- 10k Ohm didn't work for Turbo Mouse 5 with vintage coiled ADB cable, which is expected to have quite a bit capacitance. 4.7k did work. Note that 4.7k won't work when multiple devices are connected. See above.
- Low value resistor like 100 Ohm doesn't work also: https://geekhack.org/index.php?topic=14290.msg2903590#msg2903590
- Rise time: http://geekhack.org/index.php?topic=14290.msg1070139#msg1070139
- Signal form: http://geekhack.org/index.php?topic=14290.msg296052#msg296052
UART works without pull-up resistor when connected with device constantly. But it can read garbage without pull-up resistor when its pin is open or no device is connected.
Receive pin(RXD) needes pull-up resistor particularly. Pull-up resisotr for TXD may be unnecessary but would not be harmful.
In case of inverted UART pull-down resistor would be useful instead.