Author Topic: Hand wired honeywell hall effect matrix  (Read 7702 times)

0 Members and 1 Guest are viewing this topic.

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Hand wired honeywell hall effect matrix
« on: Thu, 30 January 2014, 12:39:02 »
Has anyone attempted to create such a beast before? I have some project time coming up and was contemplating taking a swing at it.

Thanks

Offline dgreekstallion

  • Posts: 215
  • Location: Texas
  • B.S. Fiend
Re: Hand wired honeywell hall effect matrix
« Reply #1 on: Thu, 30 January 2014, 20:06:30 »
I just saw the PCB of that monster on deskthority... Wow!

Good luck!
Recent keyboard fanatic.

Model F-122 convert.

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #2 on: Thu, 30 January 2014, 21:32:03 »
I haven't started it yet, but I did think up some good ideas for one.

Basically, I wanted to make the matrix NKRO (and USB).

The ideas change a lot depending on what hall effect switch you are using. The microswitch ones require a PCB, so the hall sensor doesn't fall out.

Basically: I'm sure I have some ideas that will help, but I cant help without more info. I was not able to find your PCB pictures on DT.

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #3 on: Sun, 02 February 2014, 12:52:42 »
I just saw the PCB of that monster on deskthority... Wow!

Good luck!
To which DT thread are you referring? I've posted a bit about the switches I had wanted to use, but nothing has advanced to the PCB stage, I'm still working on a hand-wired matrix.

I haven't started it yet, but I did think up some good ideas for one.

Basically, I wanted to make the matrix NKRO (and USB).

The ideas change a lot depending on what hall effect switch you are using. The microswitch ones require a PCB, so the hall sensor doesn't fall out.

Basically: I'm sure I have some ideas that will help, but I cant help without more info. I was not able to find your PCB pictures on DT.
Micro switches and the part number is 1B3S (used in the 1B3S - Nokia MikroMikko 1 keyboard, according to the DT wiki):

* 1 - White stem
* B - Angled stem
* 3 - Normal (78cn)
* S - 4 pins, 2 [redundant] sense lines (Unknown difference from A)

I honestly don't know to what thread dgreekstallion is referring to, sadly.

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #4 on: Tue, 04 February 2014, 04:53:27 »
Do you have the loose switches that MECI had in stock for a while, or are you trying to rewire an entire board.

Since you have the single magnet types, if they are loose, your best option is to just get a custom steel plate lasered up and then wire everything directly. You'll have to solder three wires to each switch. A busbar for power and ground, and the matrix (with diodes) to either of the two center pins. The hall sensors can be pulled out, but they have enough friction to stay in place I think.

Another option is to make a PCB that'll allow you to wire up whole rows of switches pretty easily. I'm still thinking up the best way to do this though.

If you are wiring up an entire board, you can either wire up the switches after desoldering the PCB( as above) or you can wire the matrix from the PCB directly to a teensy and have 2KRO.

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #5 on: Tue, 04 February 2014, 08:35:10 »
Just the loose MECI ones. My goal was to make ~10 such num/gamepads using them (enough hopefully to get some economies of scale), or perhaps fewer pads and a couple mini keyboards. First step though was going to be a hand-wired matrix with the idea of that evolving into a full PCB. Work out the Teensy code first on the matrix before trying to work it into a pressed board.

On that note, for such a beast would you think a Teensy 2.0 or 3.1 would be a better fit? The cost difference between the two is sufficiently minimal that I'm not really fussed about that aspect.
« Last Edit: Tue, 04 February 2014, 08:57:32 by xmagusx »

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #6 on: Tue, 04 February 2014, 21:25:07 »
Well if you go with a PCB you can screw the switches to it, which will save the expense of having plates made. Or you can get custom plates made up and wire them to those. Either way will work.

The actual uc you pick will essentially be the same as for a normal KB: the number of matrix connections is the same. You just have to worry about powering the switches. So get some solid core wire, tin it, and solder it to the power / ground legs of all the switches. Then wire it to the USB power (VCC and GND).

I need to look up the current requirements of these switches to make sure no additional power is required. I'm almost certain the dual magnet types suck down more power (with their older and much larger semiconductor process)

Also it was YOU who bought all those before I could! I wanted some (to make a gamepad as well) but by the time I got my paycheque in, they were sold out. :(

So I bought like 5 more hall effect keyboards to make up for it.

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #7 on: Tue, 04 February 2014, 23:33:34 »
That sounds like a wonderful coping mechanism. :D

As far as the pcb design is concerned, do you have any suggested software? Was going to try out kicad if not.

Thanks again for the help!

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #8 on: Wed, 05 February 2014, 00:26:27 »
That sounds like a wonderful coping mechanism. :D

As far as the pcb design is concerned, do you have any suggested software? Was going to try out kicad if not.

Thanks again for the help!

I've never used a PCB program, but I hear good things about KICAD.

Fortunately, I'd only intended such a PCB to aid in wiring up a KB, so it'd be really easy to make. Most of the connections between rows will be off board and the unit itself will be modular (so you cut off however many switch units per row you want)


Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #9 on: Wed, 05 February 2014, 08:01:56 »
I've never used a PCB program, but I hear good things about KICAD.

Fortunately, I'd only intended such a PCB to aid in wiring up a KB, so it'd be really easy to make. Most of the connections between rows will be off board and the unit itself will be modular (so you cut off however many switch units per row you want)

How have you handled PCB design/implementation in past in that case?

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #10 on: Fri, 07 February 2014, 15:23:37 »
At any point please feel free to tell me that I'm on crack and have things completely wrong. My google-fu has been weak when it comes to finding explicit documentation on this subject.

One of the key hurdles I'm having trouble wrapping my head around is the circuit design for a matrix using these HE switches. When using a series of electrical switches, you're wiring the columns up to one set of pins and rows to the other set of pins, with the switch's closing creating a complete circuit, which allows the signal sent to the column pin to be returned through the row pin. Diodes are thrown into the mix to prevent backflow through the matrix. I think I at least have this bit straight in my head.

In looking at the logical diagram found on the deskthority wiki, I'm unclear as to what VDC would be wired to. It seems to me that it should be wired to a data line (similar to a column in the previous example). This makes sense in that it would then act similarly to a switch, so when the HE chip was active (magnet moved close) it sends a signal through output line(s). Unless what it's indicating is that in order to function, it always needs power, and it's just whenever it's activated that it sends a signal across the output line(s); this would explain to me the need for dedicated ground. As I said, this is the area where things get rather fuzzy for me, so any clarification would be helpful. :D

Also, the diagram seems to indicate that there is a diode already built into these switches. Can you confirm/deny?

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #11 on: Thu, 27 February 2014, 14:29:04 »
Anyone know if these would require diodes for antighosting? Working on diagrams and the data on deskthority seems to indicate that they wouldn't, but was wondering if anyone actually knew for sure.

Thanks!

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #12 on: Tue, 04 March 2014, 20:58:50 »
So I was talking to HaaTa about this, 'cause I want to get mine modded sometime, and he's the guy who knows.

In a normal matrix, you scan each column and see what comes back: looking for continuity. Diodes are required for NKRO. For the HE, which output 5V directly when down it can be a little different.

One thing he suggested that I really liked was to unpower all the switches, and only send power to one column at a time, then sense the rows for which have 5V, the move to the next colum, etc.

I did some looking, and the hall sensors don't have any appreciable power up time. This is to be expected I think, because of the type of device they are. They also don't really need debounce as it sends 5V directly out (any "debounce" is handled by the chips on each hall sensor, and is really more of an implementation of some hysterisis than anything else. See the honeywell hall effect document, link at the end)

I don't think you need diodes for NKRO as you can isolate a column this way (all unpowered switches are not sending voltage and can't contaminate the reads like the do for contact switches) This has to do with the additional switching properly. When the switch is unpowered, then it's effectively off and reads as "up" or unpressed.

So I dunno about coding or whatever, but I do know the teensy should be able to power a column of hall sensors directly. Te program would have to be careful to preserve the state of each switch that's not being scanned until the next scan comes by. Good thing hall sensors can accept crazy insane scan rates (see the honeywell document, but I believe it is on the order of 100 KHz) This is likely due to the almost-instant turn on/off time of the sensor.

Even if the teensy can't power a full column by itself, you can use transistors to do it. Just need one per column.

This idea makes a lot of sense to me, and I like it a lot. I plan to make the PCBs sometime in the next few months (I'm clearing out some of my older projects now). To answer your earlier question, I haven't ever made PCBs before. I just modify what I have and then go for direct wiring.

Offline Grimey

  • Posts: 262
  • Location: Eye Oh Wah
Re: Hand wired honeywell hall effect matrix
« Reply #13 on: Wed, 05 March 2014, 11:54:44 »
Are the HE switches directional then?  If they are not I could see an issue with keys being registered as pressed when they are not with back flow occurring.
Erlang your pants off

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #14 on: Wed, 05 March 2014, 21:32:02 »
Are the HE switches directional then?  If they are not I could see an issue with keys being registered as pressed when they are not with back flow occurring.
The diagrams I've seen show an and gate built into the switch, which would indicate directionality to me, but I don't know if that's actually the case.

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #15 on: Wed, 05 March 2014, 21:55:44 »
Are the HE switches directional then?  If they are not I could see an issue with keys being registered as pressed when they are not with back flow occurring.
Doesn't matter, the switch outputs nothing without power.

If you control the power, then you KNOW only one column at a time is sending output. You don't need to worry about "Backflow" or whatever.

Offline Grimey

  • Posts: 262
  • Location: Eye Oh Wah
Re: Hand wired honeywell hall effect matrix
« Reply #16 on: Thu, 06 March 2014, 13:15:40 »
Simple case
 C1  C2
 V   V
[A] [N] <- RX
[C] [D] <- RY

Lets say that A,C,D are activated for the duration of the scan. 
When row X is powered Column1 will receive a "High" from the fact that A is activated, the activation of C has little to do in this case.
If backflow is possible (the switches are not directional), then the row connector from C to D would be considered open (flowing backwards, but flowing). 
Since D is activated, the line of power from R1 to C2 is possible by traversing these 3 switches is it not?  Which would then provide to the matrix scan for RowX a incorrect key press?

TLDR
Concern is that without directional constraints A could power C which could power D.
« Last Edit: Thu, 06 March 2014, 13:24:25 by Grimey »
Erlang your pants off

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #17 on: Thu, 06 March 2014, 19:03:43 »
but you are only reading info from the one column that is powered.

You'll get "backflow", but itwont affect anything.

Lets say you have keys 1,2,3 on the number row down, as well as F1.

Column of F2,2,w,etc is active.

What do you read with the controller? in a contact KB, you read that F-row is pressed (because of "backflow" from F1) as well as the numberrow. This is bad.
In this design, only the numberrow would show as being active, since the F1 key is unpowered, it doesn't output anything. Since you are powering the f2 colum, then you know that only the number 2 in the colum is being pressed.

Then, when you scan the next column, The F1 column, the numberrow and the function row go high and you know that F1 and 1 are being pressed.

Then you just "remember"  the switch states until the next time you scan. If scans happen at 100 KHz or so, you'll have much better performance over basically any MX KB.
---
In your example, C and D would NOT show as flowing, even if there is voltage present there. The controller will ignore any value from the wrong column since it's not the one it is scanning. It will preserve the value from the last scan.

So if underscore is pressed and no underscore is no voltage, this is what we get

RX powered:
C1  C2
 V   V
[A] [N] <- RX
[C] [D] <- RY

Since RY is unpowered, this effectively becomes

C1  C2
 V   V
[A] [N] <- RX
[C] [D] <- RY

The controller sees
C1  C2
 V   V
[A] [N] <- RX
[C] [D] <- RY

The controller isn't looking at RY (it can't it is just powering it when told and remembering which column is currently powered and what switches are on it)

C1 shows voltage, so you know that [A] is pressed. There may be continuity all down C1 from the other switches and lack of diodes, but since only pressed switches that are also in RX can show voltage now, then you know which switches are pressed. Any "false positive" or "ghost" in another Row you KNOW must be discounted since it's unpowered it can't be showing voltage.

In a contact switch system you get issues, because you cannot isolate the column (or rows in your example) this way. You cannot safely discount those lines like you can do here. You gain an additional piece of information with hall effect: You know which lines show voltage and you know what column they are on. Or, to put it another way, you know which keys are pressed. It's this additional piece of information, this addiotnal "switch" of unpowering the switches that allows us to do this.

Now the actual scanrate will be determined by how quickly you can switch voltages. This might need diodes or something to quickly "unpower" the column. That said, according to honeywell, the scanrate is normally on the order of hundreds of KHz.

---
Ok I've posted a lot and rambled a bit, but this was also for my own understanding: to make sure I'm getting it right. Please tell me any hole I've missed, as it is entirely possible that I have.

---
Edit: I think I get what you mean now. Please read past the above. I think you already understand all that.

So there's three pins. Ignoring the ground (for now). You are wondering if there's flow between the output line and the power line, even when the switch is off. That WOULD cause the behavior you describe. I will get a multimeter and test it, though I am almost certain it won't. I think that even if it does, if you wire up the redundant pins it'll still work, but I'll have to think about it to be sure.

edit: I read over 25 megaphms between power and ground in one direction and NC in teh other. Between all other pins in all directions, I read NC.

I can't test it powered until I get some alligator clips for my powersupply.
« Last Edit: Thu, 06 March 2014, 19:16:35 by dorkvader »

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #18 on: Thu, 06 March 2014, 20:13:52 »
Simple case
 C1  C2
 V   V
[A] [N] <- RX
[C] [D] <- RY

Lets say that A,C,D are activated for the duration of the scan. 
When row X is powered Column1 will receive a "High" from the fact that A is activated, the activation of C has little to do in this case.
If backflow is possible (the switches are not directional), then the row connector from C to D would be considered open (flowing backwards, but flowing). 
Since D is activated, the line of power from R1 to C2 is possible by traversing these 3 switches is it not?  Which would then provide to the matrix scan for RowX a incorrect key press?

TLDR
Concern is that without directional constraints A could power C which could power D.
According to this:

There is a diode built into the HE switch in order to prevent backflow and I think to prevent damage to the AND gate (been a long time since a digital electronics class and don't recall if those burn out if wired backwards). This also prevents ghosting. Because in an HE matrix, you have an output line tied to rows and a ground line, and aren't just grounding to rows as you would in a Cherry matrix. So to expand your example a bit:
Code: [Select]
Glossary:
V = Voltage
O = Output
G = Ground

 C 1         C 2
V O G       V O G
| | |       | | |
[ A ]->-O->-[ N ]->-O->-RX
| | |       | | |
[ C ]->-O->-[ D ]->-O->-RY
    |           |
    \-----------\-------G
And for there to be output, you need to have voltage applied and have the switch depressed. So in the case of [ A ], [ C ], and [ D ] being depressed, when C1 has voltage applied, the output lines for both RX and RY will have voltage as well, so [ A ] and [ C ] will register, and since no voltage is applied to C2, so [ N ] and [ D ] will not register. When C2 has voltage applied, the output lines for RY will have voltage, so [ D ] will register, and the diode in [ A ] will prevent the output lines from completing a circuit back to RX, so [ N ] will not register.
« Last Edit: Thu, 06 March 2014, 20:22:15 by xmagusx »

Offline Grimey

  • Posts: 262
  • Location: Eye Oh Wah
Re: Hand wired honeywell hall effect matrix
« Reply #19 on: Thu, 06 March 2014, 21:10:25 »
My question was not about power passing through the switch when not depressed, only when depressed. 

Code: [Select]
Glossary:
V = Voltage
O = Output
G = Ground

 C 1         C 2
V O G       V O G
| | |       | | |
[ A ]->-O->-[ N ]->-O->-RX
| | |       | | |
[ C ]->-O->-[ D ]->-O->-RY
    |           |
    \-----------\-------G
And for there to be output, you need to have voltage applied and have the switch depressed. So in the case of [ A ], [ C ], and [ D ] being depressed, when C1 has voltage applied, the output lines for both RX and RY will have voltage as well, so [ A ] and [ C ] will register, and since no voltage is applied to C2, so [ N ] and [ D ] will not register. When C2 has voltage applied, the output lines for RY will have voltage, so [ D ] will register, and the diode in [ A ] will prevent the output lines from completing a circuit back to RX, so [ N ] will not register.

That is precisely what I was curious about.  My only questions is in the example for part <B>, so you mean to say that the diode in [ C ] will prevent the voltage line between [ C ] and [ A ] from getting power, preventing RX from registering?

I don't mean to come off as antagonizing about this project, just generally curious when I read that the concept of a wired matrix without diodes might be possible (work has been lacking in stimulation lately).  If the HE switches are in fact internally directional, that is actually kind of sweet.
« Last Edit: Thu, 06 March 2014, 21:13:13 by Grimey »
Erlang your pants off

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #20 on: Fri, 07 March 2014, 08:06:21 »
That is precisely what I was curious about.  My only questions is in the example for part <B>, so you mean to say that the diode in [ C ] will prevent the voltage line between [ C ] and [ A ] from getting power, preventing RX from registering?

I don't mean to come off as antagonizing about this project, just generally curious when I read that the concept of a wired matrix without diodes might be possible (work has been lacking in stimulation lately).  If the HE switches are in fact internally directional, that is actually kind of sweet.
That is my understanding based upon the logical diagrams I have seen thus far. I should (hopefully) be able to test that hypothesis this weekend based upon some parts' arrival and my newborn daughter's sleep schedule. :)

And you're not coming off as antagonistic to me at least, don't worry. I want as many people as I can get away with curious about/involved in/helping with/etc this project, as each one improves the odds of it seeing fruition. :D And yes, if the HE switches end up in fact being internally directional, that will be really sweet and definitely make me want to try to find more.

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #21 on: Fri, 07 March 2014, 16:39:05 »
First swing at a schematic for a 4x4 matrix & teensy (ATmega32U4):


Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #22 on: Tue, 25 March 2014, 15:44:34 »
General question:

Could LEDs be wired in series with these switches so that they wouldn't need their own matrix?

Example of a three switch column:
Data pin -> LED -> HE Switch -> LED -> HE Switch -> LED -> HE Switch -> Resistor -> Ground pin

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #23 on: Tue, 25 March 2014, 20:50:56 »
General question:

Could LEDs be wired in series with these switches so that they wouldn't need their own matrix?

Example of a three switch column:
Data pin -> LED -> HE Switch -> LED -> HE Switch -> LED -> HE Switch -> Resistor -> Ground pin
You could wire LEDS and a resistor to be powered by the same lines that power the switches, but they'll be quite dim as most of the rows will be dead most of the time.

I should also mention that I came up with a PCB on paper the other day for wiring these. I'll refine it (and figure out how to make holes the right size in QiCAD) and get some made for testing.

Anyone know roughly what PCBs cost?

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #24 on: Tue, 25 March 2014, 23:33:49 »
You could wire LEDS and a resistor to be powered by the same lines that power the switches, but they'll be quite dim as most of the rows will be dead most of the time.

I should also mention that I came up with a PCB on paper the other day for wiring these. I'll refine it (and figure out how to make holes the right size in QiCAD) and get some made for testing.

Anyone know roughly what PCBs cost?
Could this be compensated for by adjusting the resistor do you think?

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #25 on: Wed, 26 March 2014, 01:44:58 »
You could wire LEDS and a resistor to be powered by the same lines that power the switches, but they'll be quite dim as most of the rows will be dead most of the time.

I should also mention that I came up with a PCB on paper the other day for wiring these. I'll refine it (and figure out how to make holes the right size in QiCAD) and get some made for testing.

Anyone know roughly what PCBs cost?
Could this be compensated for by adjusting the resistor do you think?

Well, sort-of. I was just thinking about that.

Basically, the resistor limits the current, but LEDs are actually very tolerant at having "too much" current running through them, provided it is very brief. Since we are effectively running a high current-high frequency-low % duty cycle square wave through it, it may be fine with just a very small resistor. Keep in mind we will (in theory) be switching this on/off at something like 100 KHz (or rather, it'll be on for 1/100,000 of a second, and off for (n-1)/100,000 seconds, where n is the number of rows) Since it'll be off for so long, the additional heat will dissipate, though clearly some experimentation is necessary.

Also, for this implementation, it'll draw SIGNIFICANTLY more power, so we'd need the teensy controlling transistors to power the rows/columns on/off, which will almost certainly slow down the scanrate significantly. Still, it's entirely possible that it won't be too slow (remember, it "sholud" be able to handle a few orders of magnitude faster than a normal cherry matrix, the slowdown would depend on how "fast" the transistors are.)

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #26 on: Wed, 26 March 2014, 08:59:48 »
That's more or less the idea behind LED dimming, no? Not a reduction in brightness, just in lumen output over time by reducing the amount of time it's turned on.

Edit: Pulse Width Modulation was the term I was looking for.
http://tinkerlog.com/2009/04/05/driving-an-led-with-or-without-a-resistor/
« Last Edit: Wed, 26 March 2014, 10:41:20 by xmagusx »

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #27 on: Wed, 26 March 2014, 22:39:43 »
I know how led dimming happens, but if your voltage is too high, you'll burn the led before it'll be useful. With 5v it's at least possible.

Offline Parak

  • Posts: 532
Re: Hand wired honeywell hall effect matrix
« Reply #28 on: Wed, 26 March 2014, 23:33:12 »
I know how led dimming happens, but if your voltage is too high, you'll burn the led before it'll be useful. With 5v it's at least possible.

I believe one can feed whatever DC voltage you want into an LED as long as it's done through a correctly calculated resistor for the voltage drop and max current rating of the LED.

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #29 on: Thu, 27 March 2014, 00:28:05 »
I know how led dimming happens, but if your voltage is too high, you'll burn the led before it'll be useful. With 5v it's at least possible.

I believe one can feed whatever DC voltage you want into an LED as long as it's done through a correctly calculated resistor for the voltage drop and max current rating of the LED.

yes.

But the LEDs will drop the voltage, so you can't have less than 5V going to the hall sensors or they won't work as well. So you can't run all the LEDs in series with the HE sensors with only one resistor.

In short, this is a different circuit than what was initially described.

It may be possible to run all the LEDs from the same 5V, but the difference between 5V and the LEDs Vf will effectively set the current of the LED. But at that voltage, the current will be quite high. BUT many LEDs can allow too high current for a brief amount of time. This is how LED flashes work on phones.

So sure, you can have a resistor on each LED, but with the duty cycle so low it'll be dim. If you want it bright enough to see, you may have to do the short pulse current like this, it may decrease the service life of the LED. Clearly, some experimentation is needed

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #30 on: Thu, 27 March 2014, 02:22:24 »
Actually, on that note, would the HE switches act as a small resistor in a such a circuit? I ask because since the output range (from what I've read/measured) is .1 to .3 V, so wouldn't the LED in front of each row effectively already have the equivalent of a small resistor removing at least that much voltage? Unless I've misunderstood something (entirely possible if not probable, my daughter turns four weeks old Friday, so I'm operating on a sub-ideal amount of sleep :), what I'm seeing in my head is a column being composed of series circuits wired VCC to LED positive, LED negative to HE switch positive, HE switch negative to resistor, resistor to ground; with each row being another such circuit connected in parallel. In which case there would be three things reducing the brightness of (and preventing the burning out of) the LED -- the scan rate acting as a PWM dimmer, the voltage loss from the HE switch, and then finally the resistor. In which case our point of experimentation would be the resistor. I'm starting to breadboard this out, so I'm trying to get my mind right lest I start destroying parts, so I really appreciate all the help, guys.

Also, I didn't mean to imply that you wouldn't know how LED dimming worked, was just trying to confirm that I had it right in my head. Most of this I'm re-learning working from decade-old electrical engineering knowledge. This has proved both helpful and frustrating, as it results in a lot of, "oh yeah, I remember that," and a lot more of "dammit, I used to know this."
« Last Edit: Thu, 27 March 2014, 02:25:11 by xmagusx »

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #31 on: Fri, 28 March 2014, 13:01:33 »
Alternately, couldn't you just wire the LEDs and HE switches straight to VCC, wire one output pin to columns and the other to rows, and then just put whatever resistor is appropriate on the circuit, thus avoiding the dimming due to scanning?

Edit: No. No, you couldn't. At least not without creating a ghosting problem.
« Last Edit: Fri, 04 April 2014, 11:16:30 by xmagusx »

Offline Bludude4

  • Posts: 68
  • Location: Katy, Texas
Re: Hand wired honeywell hall effect matrix
« Reply #32 on: Fri, 03 October 2014, 13:26:30 »
With the LED thing, would that be for backlighting?  Could you put in a reactive-only LED system and wire the LEDs directly to the switch so whenever you press that key, the LED behind it would light up for the duration of the press?
All hail Hall Effect keyboards!
I'm a QFR Blues noob.
WASD keycaps are terrible.

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #33 on: Sun, 05 October 2014, 19:39:34 »
With the LED thing, would that be for backlighting?  Could you put in a reactive-only LED system and wire the LEDs directly to the switch so whenever you press that key, the LED behind it would light up for the duration of the press?

Not easily. The "easy" way to do that is to run current through the switch, and the sensors can't output that much current (though the voltage is fine for LED usage: 5V). Since that's unavailable, the "hard" way is left: you will need a microcontroller and a huge amount of LED driver chips to individually address an entire matrix of switches and LEDs both. This will allow you to have other lighting effects though.

The "medium" way would involve tapping the output with a transistor that drives the LED for the switch. This would work, but you'd need a transistor and resistor for each switch, and you'd need a decent oscilloscope to ensure that the switch output is sufficient to be properly detectable by the microcontroller anyway. This would be more expensive and involve more soldering but significantly less microcontroller programming knowhow. It is the approach I would take, but that's mainly because "my favourite programming language is solder"

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #34 on: Thu, 23 October 2014, 07:52:04 »
As was mentioned previously, if the LEDs are in series with the switches (and not on an independent matrix), there would be a dimming issue.

Also, since the switch output is high by default, (I think, but would definitely defer to DV if he corrects me) the only reactive effect you could produce in such a configuration would be to have the light turn off when pressed, and to do that, you'd have to put the LED between the switch and the Teensy receiving pin. Since the output from the switch is only 0.2v, and each LED would only be lit for 1/(number of rows) of the time, it would likely make for very dim backlighting.

Also, the project is not dead, just took a serious back burner for a while due to family matters which necessitated my moving back to Houston. Between that, the toddler, and a new job, my extra bandwidth would very charitably be classified as "low". However, baby is in day care once more, job is calming down now that I'm getting my department in line, the house is almost completely unpacked, *and* I've even found a local hack/make club, so I might just be able to get this back on track again. :-D

Offline dgreekstallion

  • Posts: 215
  • Location: Texas
  • B.S. Fiend
Re: Hand wired honeywell hall effect matrix
« Reply #35 on: Thu, 23 October 2014, 08:12:19 »
Welcome to Texas. I hail from D/FW.
Recent keyboard fanatic.

Model F-122 convert.

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Hand wired honeywell hall effect matrix
« Reply #36 on: Thu, 23 October 2014, 11:29:36 »
As was mentioned previously, if the LEDs are in series with the switches (and not on an independent matrix), there would be a dimming issue.

Also, since the switch output is high by default, (I think, but would definitely defer to DV if he corrects me) the only reactive effect you could produce in such a configuration would be to have the light turn off when pressed, and to do that, you'd have to put the LED between the switch and the Teensy receiving pin. Since the output from the switch is only 0.2v, and each LED would only be lit for 1/(number of rows) of the time, it would likely make for very dim backlighting.

Also, the project is not dead, just took a serious back burner for a while due to family matters which necessitated my moving back to Houston. Between that, the toddler, and a new job, my extra bandwidth would very charitably be classified as "low". However, baby is in day care once more, job is calming down now that I'm getting my department in line, the house is almost completely unpacked, *and* I've even found a local hack/make club, so I might just be able to get this back on track again. :-D

When I tested it I believe switch output is low by default and switches to high (5v) when you press it. This is also the behaviour I would expect looking at the schematics of the sensor). I can always doublecheck though.


Oh I'm not sure if I mentioned it but a PCB is required. The older dual magnet switches absolutely need it. The newer single magnet switches the sensor is ceramic and held in with friction so it might work but I wouldn't want to risk getting a sensor misaligned. I have some PCB's and schematics laid out on paper and am still trying to figure out KICAD to get them actually done.
« Last Edit: Thu, 23 October 2014, 11:32:33 by dorkvader »

Offline xmagusx

  • Thread Starter
  • Posts: 130
  • Location: Texas
  • QWERTY is hateful.
    • The Ergonomic Zone
Re: Hand wired honeywell hall effect matrix
« Reply #37 on: Thu, 23 October 2014, 21:31:01 »
When I tested it I believe switch output is low by default and switches to high (5v) when you press it. This is also the behaviour I would expect looking at the schematics of the sensor). I can always doublecheck though.


Oh I'm not sure if I mentioned it but a PCB is required. The older dual magnet switches absolutely need it. The newer single magnet switches the sensor is ceramic and held in with friction so it might work but I wouldn't want to risk getting a sensor misaligned. I have some PCB's and schematics laid out on paper and am still trying to figure out KICAD to get them actually done.
Shoot me a pm if having some of my switches would help. I picked them up for a song and wouldn't have known about them if not for this forum. All I'd ask is for you to use the eli5 version of what all you're doing when you're able to. :)