Keyboard Builders' Digest
Save 5% at Typeractive! Code: KBDNEWS
Keyboard Builders' Digest / Tips & Tricks

Forward voltage calculations

Some hard numbers and experiments for those who'd like to try their hands on matrices utilizing the voltage drop across diodes to eliminate ghosting.

KBD.news
Published January 1, 2000
Creators! Feel free to tip me off about your keyboard related projects to bring them to 150K readers.

This is a dump of my measurements and experiments. I wanted to figure out the required forward voltage of the diodes, the threshold voltages for LOW and HIGH, etc. Will tidy it up later but reference it from some posts so here it is.

The following measurements were taken at 23°C room temperature (this may be important with these matrices):

Pic:

KB2040 experiment 2022-05-06, 23°C(!)

  • G->RAW (closed (skip voltage regulator)) 5.127V
  • G->RAW (open) 4.871V
  • G->3V 3.277V
  • G->D2 (pulled up) 3.270

Method

  • DP832 laboratory power supply
  • Common ground + PS out connected directly to D2 of an RP2040 on a Adafruit KB2040.
  • Plotting LOW/HIGH in Mu with 0.01 delay in code.
  • Starting from 3.270, the voltage was decreased/increased by 0.001V until the signal stabilized.
  • I waited 60 sec until the value (H/L) read on the pin was totally constant: plotted by 0.01 sec this means 6,000 consecutive measurements without a single outlier.

Results

  • Vhigh min: 1.388V
  • Vlow max: 1.283V

So no man's land range is: 1.39-1.28V

Btw, according to the RP2040 datasheet (3.3V):

  • V_IL(max)=0.8V
  • V_IH(min)=2V
  • V_HYS=0.2V

Empirical part

Trying 1/2/3/4 diodes with a switch.

1N4148 V_F=0.61-0.62 according to the diode function of my multimeter. When in a circuit, it was rather 0.7V.

1->2.66 2->2.05 3->1.44 Damn… 1.3 kellene…

1N4001? 0.7V

1->2.570 2->1.870 3->1.170 Yay!!!

PULLUP+GND

1N4007: is this also 0.60-62V?! 1->y 2->y 3->triggers very rarely, almost never (0-2/10)

1N4148: 0.60-61V… 1->y 2->y 3->triggers very rarely, almost never (0-2/10)

PULLDOWN+"3V"

(Conclusion, this direction doesn't work well. Use pullup instead.)

Fordítva: pulldown és feszkót neki! Ez így menne egyáltalán?

1N4148 (0.60-61V?)

1->y 2->y 3->y 4->triggers rarely (2/10)

1N4007 (0.62V?)

1->y 2->y 3->y 4->triggers a lot! (?)

It turns out you can't simply add up the individual forward voltages. Connecting the diodes results in slightly less cumulative drop than you'd expect for some reason (it may be an error in my measurement):

1N4148 0.614+0.623=1.215 0.614+0.623+0.608=1.773 0.614+0.623+0.608+0.615=2.287-2.426

1N4007 0.612+0.622=1.223 0.612+0.622+0.608=1.750 0.612+0.622+0.608+0.615=2.293

Pro Micro 5V Atmega32u4

  • raw: 4.727 (through voltage regulator, J1 NOT closed)
  • vcc: 4.678
  • high pin: 4.625

Results

  • High: >=1.449
  • Low: <=1.405

1N4148 V_F=0.61-0.62

0: 4.625 1: 4.015 2: 3.405 3: 2.795 4: 2.185 5: 1.575 6:

4.625-1.405=3.220 /3=1.071V

Ikeji's Vf measurement method

It seems the forward voltage is dependent on the actual current so you can't really measure it with the multimeter's diode mode.

Instead, you should measure the voltage drop in a similar circuit you want the diodes use in:

Pic:

KB2040/RP2040, 3.3V

  • G->D2 (pulled up) 3.270V
  • Vhigh min: 1.388V
  • Vlow max: 1.283V
  • No man's land range: 1.39-1.28V

Monitoring triggers and measuring Vf with multimeter:

1N4148

  • 1x->y (0.4674V)
  • 2x->y
  • 3x->triggers rarely, almost never (0-2/10) (1.406V)
  • 4x->n (1.861V)

1N4007

  • 1x->y (0.4836V)
  • 2x->y
  • 3x->triggers rarely, almost never (0-2/10) (1.436V)
  • 4x->n (1.909V)

To be continued…

Do you like this post? Share, donate, subscribe, tip me off!

Published on Sat 1st Jan 2000. Featured in KBD #0.


Related

Recreating keycaps for the AlphaSmart Neo

A father and son team designed replacement keycaps for the AlphaSmart Neo, bringing an old keyboard back to life with some low-cost modern tech.

Caps Word and other QMK tips

A QMK keymap with short blog posts by Mental_General_5445 explaining tricks like autocorrection, Caps Word, getting Shift keys right, etc.

Nydas Amoeba

Another single-key PCB for keyboards: Nydas Amoeba by Andy Sawyer.

Thumb input alternatives

On thumb input alternatives: Moonrim, trackballs and more.

Scylla/Charybdis tenting

Scylla/Charybdis adjustable tenting stand shared by gdeLopata.

Keyboard Yoga

Keyboard Yoga by ZSA Technology Labs is a different sort of typing trainer.

×
top