Beamspring USB controller
-
- Location: NZ
- Main keyboard: IBM 3727 beamspring (converted to USB)
- Main mouse: What's a mouse for?
- Favorite switch: Beamspring
- DT Pro Member: -
This latest batch of Rev2 PCBs from OSH Park is taking a very long time... next time if there's enough PCBs I might consider getting them made locally, although that almost doubles the cost if there's too few.
The GUI util to configure the controller is pretty much done. I need to get it compiling under Windows now (yikes here goes another 6 hour session compiling Qt5, why is development so painful under Windows?!?! One day they'll invent package repositories and /usr/lib + /usr/include.... </rant>).
I'll call this version 0.2. Nothing's really changed in the controller code.
The GUI util to configure the controller is pretty much done. I need to get it compiling under Windows now (yikes here goes another 6 hour session compiling Qt5, why is development so painful under Windows?!?! One day they'll invent package repositories and /usr/lib + /usr/include.... </rant>).
I'll call this version 0.2. Nothing's really changed in the controller code.
Last edited by xwhatsit on 30 Jul 2013, 10:54, edited 1 time in total.
-
- Location: NZ
- Main keyboard: IBM 3727 beamspring (converted to USB)
- Main mouse: What's a mouse for?
- Favorite switch: Beamspring
- DT Pro Member: -
Apparently the OSHPark order is already shipped but there was no notification. Apologies to those waiting.
OK I've more or less done Rev3 PCB layout, which has a few changes from Rev1 and 2:
Unfortunately SPI DACs are more expensive, so instead of using a 12-bit DAC I went with a 10-bit. In theory this means we have a quarter of the resolution with Vref, but I'm using a three-resistor window divider to output between 0.8V and 1.6V (with 1024 possible values, so that's 0.78mV resolution) instead of before where it was outputting the full range between 0V and 5V (with 4096 possible values, so 1.22mV resolution).
The pushbuttons have gone as they are relatively expensive, take up a lot of board space (and we only really have one side now that the board is mounting `on-flat'), and are mostly useless as the controller can be reset into the bootloader for updating the firmware using the GUI util. I've left test pads on there so it can be manually reset by shorting out the pads with a screwdriver or whatever.
After I order this and make a few the next project is a Displaywriter converter---those are quite different from the other beamsprings, having 8 rows. They seem similar to a Model F controller in some respects.
OK I've more or less done Rev3 PCB layout, which has a few changes from Rev1 and 2:
- Surface-mount-hack mounting of edge connector, allowing board to lie flat and be used with 3278s etc.
- Move to SPI-protocol DAC for Vref (trigger voltage); this in theory means that Vref can be changed per column or even key if necessary
- Removal of pushbuttons for Program and Reset. There are test pads instead.
- Larger HC49-style crystal instead of the special tiny thing that was used before. Saves some cost.
- Solder-mounted chassis ground connection instead of massive through-hole hole
- Last but not least---15% reduction in board size. Makes it a bit cheaper.
Unfortunately SPI DACs are more expensive, so instead of using a 12-bit DAC I went with a 10-bit. In theory this means we have a quarter of the resolution with Vref, but I'm using a three-resistor window divider to output between 0.8V and 1.6V (with 1024 possible values, so that's 0.78mV resolution) instead of before where it was outputting the full range between 0V and 5V (with 4096 possible values, so 1.22mV resolution).
The pushbuttons have gone as they are relatively expensive, take up a lot of board space (and we only really have one side now that the board is mounting `on-flat'), and are mostly useless as the controller can be reset into the bootloader for updating the firmware using the GUI util. I've left test pads on there so it can be manually reset by shorting out the pads with a screwdriver or whatever.
After I order this and make a few the next project is a Displaywriter converter---those are quite different from the other beamsprings, having 8 rows. They seem similar to a Model F controller in some respects.
-
- DT Pro Member: -
Awesome! I don't have the board handy at the moment, but aren't the connections coming into the edge connectors on both top and bottom sides (rows on top on the right edge, iirc)? So how does surface mounting it account for the top row, or does one just bridge with some wire or somesuch?
Also I totally already ordered components for the previous board iteration - looks like another order will be needed. I'll have to compare the BOMs and stuff.. At least I didn't get the pcbs yet!
Also I totally already ordered components for the previous board iteration - looks like another order will be needed. I'll have to compare the BOMs and stuff.. At least I didn't get the pcbs yet!
-
- Location: NZ
- Main keyboard: IBM 3727 beamspring (converted to USB)
- Main mouse: What's a mouse for?
- Favorite switch: Beamspring
- DT Pro Member: -
Yes the keyboard PCB itself uses both sides, and the connector has individual top-side and bottom-side pins. However there are pads on this controller PCB on both the bottom and the top, and they are linked together with vias (see the little grey dots above the connector pads in the above pic).
As for previous board iteration---if it's for your 5251, there's no harm in using the Rev1 board (or Rev2 board if you're getting the connector with PCB pins instead of big fat solder lugs). Obviously there's the mounting issues with the 3278. And that will probably be an easier board to put together to be honest, the component spacing is wider (as lots of components on the back), and the through-hole mounting of the edge connector should be much easier to attach.
However if you're getting the Rev3 board (which you might for your 3278) then there's not a lot of difference with the components. The crystal has changed to a big cheap standard thing (HC49US), there's a couple of extra resistors (20k), and the DAC is different. All the rest is identical.
As for previous board iteration---if it's for your 5251, there's no harm in using the Rev1 board (or Rev2 board if you're getting the connector with PCB pins instead of big fat solder lugs). Obviously there's the mounting issues with the 3278. And that will probably be an easier board to put together to be honest, the component spacing is wider (as lots of components on the back), and the through-hole mounting of the edge connector should be much easier to attach.
However if you're getting the Rev3 board (which you might for your 3278) then there's not a lot of difference with the components. The crystal has changed to a big cheap standard thing (HC49US), there's a couple of extra resistors (20k), and the DAC is different. All the rest is identical.
-
- DT Pro Member: -
Aha, I get it now. Clever! The connectors that I got are the lug kind. I'd definitely want to use these on my 3278s first especially since the 5251 is lacking some bits and I already polywrapped the smaller 3278..
-
- DT Pro Member: -
It's funny you should say that because as soon as I get my controller I plan on launching a tactical nuclear strike on... oh wait... I better not mention that now with the NSA listening. You'll hear about it when it happens.snoopy wrote:this thing looks like one could start nuclear rockets with it
Seriously though, this keyboard appears to have come from a Texas army base. It had a sticker on it saying it was not to be used for classified material. Hmm.. that makes me wonder what kind of keyboard they actually used for classified material.
- kps
- Location: Waterloo, Ontario, Canada
- Main keyboard: Kinesis contoured
- Main mouse: Kensington Slimblade trackball
- DT Pro Member: -
snoopy wrote:this thing looks like one could start nuclear rockets with it
http://news.bbc.co.uk/2/hi/uk_news/magazine/3078097.stm wrote:The big red button to fire cruise missiles is fiction, at least on board the Royal Navy submarine HMS Splendid. Instead they are fired by the click of a mouse. One crew member, filmed during the Iraq war, tells this weekend's edition of the BBC documentary Fighting the War: “A left mouse push fires it. Kinda crazy really. We actually asked for a great big red button, but they wouldn't give us one.”
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
Movies always do it better. Especially compared to British military interfaces. Somewhere in here is the launch control for an actual nuclear missile:
No mice back in the Vulcan days.
Just nukes, nukes, nukes.
No mice back in the Vulcan days.
Just nukes, nukes, nukes.
-
- DT Pro Member: -
Who the hell wants to launch a missile with a mouse button? I'm sure the main reason some of these people go into the military in the first place is to get the thrill of flipping back the protective cover on a large glowing red button and hearing the satisfying loud click, as they patriotically fire several million dollars worth of missile at an innocent wedding party during an illegal undeclared war. It's the whole red button-pushing thing that gives them the satisfaction of a job well done.
-
- Location: NZ
- Main keyboard: IBM 3727 beamspring (converted to USB)
- Main mouse: What's a mouse for?
- Favorite switch: Beamspring
- DT Pro Member: -
Have assembled and tested a Rev3 board with the flat mounting. Seems to work, yay! Had to write some ugly #ifdefs in the code to handle the fact there's different DACs on different board revisions and different pin assignments for the rows.
Not too bad to assemble. The connector was attached flush to the bottom, leaving a gap to the top-side pins. I tried bending these down with pliers but they need to be overformed so sprung back up while the solder was still molten. In the end I just pushed them down with a big hoof tip on the soldering iron and lots of solder. Ugly but effective.
So we now have support for 3278s. Next step is Displaywriters.
Not too bad to assemble. The connector was attached flush to the bottom, leaving a gap to the top-side pins. I tried bending these down with pliers but they need to be overformed so sprung back up while the solder was still molten. In the end I just pushed them down with a big hoof tip on the soldering iron and lots of solder. Ugly but effective.
So we now have support for 3278s. Next step is Displaywriters.
- Game Theory
- Mr. Despair
- Location: Madison WI US
- Main keyboard: Majestouch Convertible 2 or Beam Spring 5251
- Main mouse: Logitech G900
- Favorite switch: MX Blue in terms of MX
- DT Pro Member: 0008
Awesome is the only word that comes to mind.
- Game Theory
- Mr. Despair
- Location: Madison WI US
- Main keyboard: Majestouch Convertible 2 or Beam Spring 5251
- Main mouse: Logitech G900
- Favorite switch: MX Blue in terms of MX
- DT Pro Member: 0008
Cleaned my 5251 today. The decontamination shield was soooooo rotted. Removed it. Hope the PCB is clean of debris!
-
- Location: NZ
- Main keyboard: IBM 3727 beamspring (converted to USB)
- Main mouse: What's a mouse for?
- Favorite switch: Beamspring
- DT Pro Member: -
Has the controller arrived yet? Hope it all goes smoothlyGame Theory wrote:Cleaned my 5251 today. The decontamination shield was soooooo rotted. Removed it. Hope the PCB is clean of debris!
- Game Theory
- Mr. Despair
- Location: Madison WI US
- Main keyboard: Majestouch Convertible 2 or Beam Spring 5251
- Main mouse: Logitech G900
- Favorite switch: MX Blue in terms of MX
- DT Pro Member: 0008
Hasn't arrived yet. That would have been super fast if it did:) You were right the keyboards seem nearly indestructible. I wish I would have cleaned it much sooner (still in progress).
- bhtooefr
- Location: Newark, OH, USA
- Main keyboard: TEX Shinobi
- Main mouse: TrackPoint IV
- Favorite switch: IBM Selectric (not a switch, I know)
- DT Pro Member: 0056
- Contact:
Why hope, when you can know?Game Theory wrote:Cleaned my 5251 today. The decontamination shield was soooooo rotted. Removed it. Hope the PCB is clean of debris!
Support the keyboard internals on either side (not depressing any keys), and get that back cover off, then the PCB just lifts off. Then you can clean it out.
DO NOT DEPRESS ANY KEYS WHEN THE PCB IS NOT INSTALLED AND SECURED.
-
- DT Pro Member: -
My contamination shield was a filthy mess. I think there was even some bird shit on it. I removed it, disassembled the keyboard and the PCB was nearly spotless. (I say "nearly" because there was one tiny dark smudge - the composition of which I prefer not to guess. I wiped it off with isopropyl alcohol.)Game Theory wrote:Cleaned my 5251 today. The decontamination shield was soooooo rotted. Removed it. Hope the PCB is clean of debris!
- Game Theory
- Mr. Despair
- Location: Madison WI US
- Main keyboard: Majestouch Convertible 2 or Beam Spring 5251
- Main mouse: Logitech G900
- Favorite switch: MX Blue in terms of MX
- DT Pro Member: 0008
Thanks for the guidance, especially about not depressing the keys when the PCB is not installed. Guessing the fly plate gets pushed out of the bottom of the switch. I'll take a shot at examining and cleaning the PCB tonight.
Update: Checked the PCB and it was very clean. The foam above the switches seems in reasonable shape too. Though I noticed the spacebar has two switches of which only 1 appears to have a fly plate. Is that normal or am I missing one?
Update: Checked the PCB and it was very clean. The foam above the switches seems in reasonable shape too. Though I noticed the spacebar has two switches of which only 1 appears to have a fly plate. Is that normal or am I missing one?
- Compgeke
- Location: Fairfield, California, USA
- Main keyboard: IBM Model M 1391401
- Main mouse: Coolermaster Recon
- Favorite switch: IBM Buckling Spring
- DT Pro Member: 0040
My Beamsprings (3178 or 3278, can't remember at the moment) all have a non-clicky switch as one of the two spacebar switches, so I assume it's just designed to stabilize the spacebar.
- bhtooefr
- Location: Newark, OH, USA
- Main keyboard: TEX Shinobi
- Main mouse: TrackPoint IV
- Favorite switch: IBM Selectric (not a switch, I know)
- DT Pro Member: 0056
- Contact:
Yep, just a stabilizer.
Both spacebar switches have a lighter return spring than a normal switch, too, to partially counteract the fact that it has two of them.
Both spacebar switches have a lighter return spring than a normal switch, too, to partially counteract the fact that it has two of them.
-
- DT Pro Member: -
When I first got my 3278, the spacebar was crushed down and wouldn't move. The metal stabilizer bar was jammed and the holder on the left was broken. I originally thought the non-clicky switch on the left was broken (until I realized it was just there to stabilize). I thought I was screwed.
I had to remove the stabilizer bar, but luckily the space bar is still useable. It works from around the V key to the right end. I use my right thumb for space most of the time so it's not really a problem - but it would be perfect if I could add a fly plate to that non-clicky switch and make it click. The PCB has a pad under that switch that could be used.
Pressing in the middle of the space bar would click both switches, but maybe in controller software, that could be programmed to register as one press. (all theoretical because I have no chance of finding a spare fly plate to use - just as difficult as finding a spare space bar)
I had to remove the stabilizer bar, but luckily the space bar is still useable. It works from around the V key to the right end. I use my right thumb for space most of the time so it's not really a problem - but it would be perfect if I could add a fly plate to that non-clicky switch and make it click. The PCB has a pad under that switch that could be used.
Pressing in the middle of the space bar would click both switches, but maybe in controller software, that could be programmed to register as one press. (all theoretical because I have no chance of finding a spare fly plate to use - just as difficult as finding a spare space bar)
-
- Location: NZ
- Main keyboard: IBM 3727 beamspring (converted to USB)
- Main mouse: What's a mouse for?
- Favorite switch: Beamspring
- DT Pro Member: -
Not at all. PM me with what sort of keyboard you have and I should be able to put one together reasonably quickly, I have all the bits on hand.daedalus wrote:How did I manage to miss this.... Is it too late for me to get one of these PCBs?
-
- Location: NZ
- Main keyboard: IBM 3727 beamspring (converted to USB)
- Main mouse: What's a mouse for?
- Favorite switch: Beamspring
- DT Pro Member: -
You could always pinch one from some strange key you don't use. I treat my 3727 (which has a similar layout to a 3278) as close to an ISO layout, but with a wide backslash/pipe (marked as Backtab). So there is a vertical Return. That means I have a `spare' key to the left of the vertical Return, above the RShift. I just have it set up as an `extra' Return, but I don't think I've ever had much cause to use it. If your layout is the same you could swap the flyplate into your spacebar.mr_a500 wrote:When I first got my 3278, the spacebar was crushed down and wouldn't move. The metal stabilizer bar was jammed and the holder on the left was broken. I originally thought the non-clicky switch on the left was broken (until I realized it was just there to stabilize). I thought I was screwed.
I had to remove the stabilizer bar, but luckily the space bar is still useable. It works from around the V key to the right end. I use my right thumb for space most of the time so it's not really a problem - but it would be perfect if I could add a fly plate to that non-clicky switch and make it click. The PCB has a pad under that switch that could be used.
Pressing in the middle of the space bar would click both switches, but maybe in controller software, that could be programmed to register as one press. (all theoretical because I have no chance of finding a spare fly plate to use - just as difficult as finding a spare space bar)
In theory the controller will pick up that previously unused sense pad just fine. Presumably IBM has it balanced just as well as the other pads. As you'd be remapping your board anyway it'd be easy enough to put the spacebar in a different place, or add an extra. I don't think the controller would have to do anything special to ignore the extra press either; experimenting with my double-key Return, the OS just deals with it; I press one key, roll over to the other, release the first, then release the second and it sees it all as one `press' and one `release'.
- daedalus
- Buckler Of Springs
- Location: Ireland
- Main keyboard: Model M SSK (home) HHKB Pro 2 (work)
- Main mouse: CST Lasertrack, Logitech MX Master
- Favorite switch: Buckling Spring, Beam Spring
- DT Pro Member: 0087
I don't suppose the controller supports the solenoid? (I seem to recall it needs some odd voltage, but one can dream...)
-
- Location: NZ
- Main keyboard: IBM 3727 beamspring (converted to USB)
- Main mouse: What's a mouse for?
- Favorite switch: Beamspring
- DT Pro Member: -
Ahaha no. What's it supposed to do anyway? It's a pretty damned clicky board to begin with!daedalus wrote:I don't suppose the controller supports the solenoid? (I seem to recall it needs some odd voltage, but one can dream...)
Next time I have one of my boards apart I'll have to test it. I'd be a little nervous driving it from the USB bus voltage directly, I wonder what coil resistance it has... and the electrical noise it would generate when the inductor collapsed wouldn't be nice inside the case with all the tiny voltages from the capacitive switches flying around at millions times a second