Author Topic: xwhatsit's Grand Unified IBM Capsense USB controller Order (Batch 3)  (Read 68607 times)

0 Members and 1 Guest are viewing this topic.

Offline CPTBadAss

  • Woke up like this
  • Posts: 14365
    • Tactile Zine
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #150 on: Thu, 18 September 2014, 19:39:16 »
Only issue I'm having is that I'm having trouble getting my "1" being picked up. It seems to be picked up by the utility intermittently and I'm not sure how to fix it.

So I finally had the chance to open the board up and look at the flippy. Turns out the flippy on 1 was chipped so when I opened the case, a little metal bit fell out. I swapped in a new flippy and it works like a charm now!

Offline Touch_It

  • Posts: 715
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #151 on: Sun, 21 September 2014, 20:41:42 »
Can anyone confirm this works on the 107 key 4704?  Thanks.


Visit the Typing Test and try!

Offline HoffmanMyster

  • HOFF, smol MAN OF MYSTERY
  • * Senior Moderator
  • Posts: 11463
  • Location: WI
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #152 on: Sun, 21 September 2014, 21:04:09 »
Can anyone confirm this works on the 107 key 4704?  Thanks.

I'm also wondering this.  I'm also interested in buying another if it does.  xwhatsit, you should just open a storefront.  :))

Offline vivalarevolución

  • Posts: 2146
  • Location: Naptown, Indiana, USA
  • Keep it real b/c any other way is too stressful
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #153 on: Mon, 22 September 2014, 09:41:13 »
Anybody take these for a spin on the 50-key matrix boards?  Has this topic been covered before?
Wish I had some gif or quote for this space, but I got nothing

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #154 on: Mon, 22 September 2014, 10:19:45 »
Anybody take these for a spin on the 50-key matrix boards?  Has this topic been covered before?

I'll test that once it comes in the mail
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline HoffmanMyster

  • HOFF, smol MAN OF MYSTERY
  • * Senior Moderator
  • Posts: 11463
  • Location: WI
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #155 on: Mon, 22 September 2014, 10:25:19 »
Anybody take these for a spin on the 50-key matrix boards?  Has this topic been covered before?

I'll test that once it comes in the mail

I should have ordered more than 1 F controller...    :-[

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #156 on: Mon, 22 September 2014, 10:40:25 »
Anybody take these for a spin on the 50-key matrix boards?  Has this topic been covered before?

I'll test that once it comes in the mail

I should have ordered more than 1 F controller...    :-[

I ordered 3, but I still need more


Unsaver, tinsaver, 50 key and now that 107 key.....
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline Touch_It

  • Posts: 715
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #157 on: Mon, 22 September 2014, 15:18:34 »
So for sure the 107 key works with this, if so, looks like ill need to order one soon :).

Edit, totally didn't realize that I had already posted this question :( my bad.


Visit the Typing Test and try!

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #158 on: Mon, 22 September 2014, 19:20:36 »
Sorry late reply, not such a good day yesterday (house broken into and laptop stolen amongst other things).

The 50-key and the 107-key should both work. I'm down to buy a 107-key (not here on GH, but somebody on DT has also discovered a big stash, including piles of 50-keys and beamsprings as well).

I've ordered PILES of controller PCBs through a somewhat lower-quality (but very cheap) Chinese fab. Once I've finished off the Amkey-USB capsense controller (hopefully just a matter of assembling it) and I've put together a couple of these Model-F-USB and Beamspring-USB controllers from this new fab to test they're up to scratch, I'll open up Batch 3. I might do these a bit more ad-hoc... maybe buy a big stock of components and just build them as they arrive. I'm going to be flat out with “other stuff” towards the end of the year so I may have to do these in smaller groups just to retain some sanity.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline CPTBadAss

  • Woke up like this
  • Posts: 14365
    • Tactile Zine
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #159 on: Tue, 23 September 2014, 07:47:48 »
house broken into and laptop stolen amongst other things

Sorry to hear that :(. I'm sure people won't mind if you get your personal stuff in order before continuing building and making your controllers.

Offline Halvar

  • Posts: 403
  • Location: Germany
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #160 on: Tue, 23 September 2014, 08:13:55 »
house broken into and laptop stolen amongst other things

That sucks. Hope the insurance covers the material damage at least.


Offline Touch_It

  • Posts: 715
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #161 on: Tue, 23 September 2014, 10:44:09 »
Can't imagine how much that must suck.  Hope everything turns out OK for you.


Visit the Typing Test and try!

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #162 on: Tue, 23 September 2014, 10:45:00 »
Sorry late reply, not such a good day yesterday (house broken into and laptop stolen amongst other things).

The 50-key and the 107-key should both work. I'm down to buy a 107-key (not here on GH, but somebody on DT has also discovered a big stash, including piles of 50-keys and beamsprings as well).

I've ordered PILES of controller PCBs through a somewhat lower-quality (but very cheap) Chinese fab. Once I've finished off the Amkey-USB capsense controller (hopefully just a matter of assembling it) and I've put together a couple of these Model-F-USB and Beamspring-USB controllers from this new fab to test they're up to scratch, I'll open up Batch 3. I might do these a bit more ad-hoc... maybe buy a big stock of components and just build them as they arrive. I'm going to be flat out with “other stuff” towards the end of the year so I may have to do these in smaller groups just to retain some sanity.

That REALLY sucks. I hope the police recover your items or insurance pays out to buy new.
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #163 on: Sun, 28 September 2014, 05:26:50 »
Cheers guys. Yes have insurance, so hopefully things won't be too difficult. Unlikely to get anything back... TV and point-and-shoot camera are no big deal but my wife's laptop is really hard to bear, having a bunch of un-backed-up photos we took at our wedding and honeymoon etc. on it from the beginning of  the year (they were "backed up" on the camera's SD card! D'oh!). Definitely working on a proper backup solution now :)

I feel like I should write a little update w.r.t. the work I'm doing on the firmware.

I've started a fairly major reorganisation, spurred on by the discovery Windows chokes on the media keys and that there might be some easy performance gains on the road to macros.

I've now split out the capsense scanning stuff so it runs on a very regular interrupt (hard coded at 100us for each column for now; this works out to 435Hz, 625Hz and 833Hz for the Beamspring, Model-F and 12-column Displaywriter respectively; I may make the scanrate tweakable if necessary, but I don't think it really is...). This is nice, because: a) the capsense stuff has a big sleep in the middle of it, which sucks up valuable time we could be assembling HID reports or fiddling with macros etc., and b) it keeps things very regular with no jitter, which the capsense stuff really likes (if the capacitors never drain fully sometimes normally—possible if the scan rate is a bit fast—then it's bad if you have a big delay. Possibly the cause of first-column trickiness I saw with the early beamspring stuff).

Splitting it out into a dedicated interrupt—kind of like old-school multitasking/threading—means I have the liberty to assemble a big unified scancode image (saving a previous copy of it for later macro goodies) and then generate the appropriate HID reports as I please. This makes adding the new "Extrakey" report (name pinched from Hasu :) ) for the media keys much easier. This is the new report that I now learn is required to make Windows use the media keys (no other OS has a problem with them the way they were). There will now be four USB reports; boot-mode keyboard, NKRO keyboard, diagnostic/util interface and extrakey/media keys report.

Oddly enough Windows always requests all the reports, even when it doesn't really need them. It doesn't ever do anything with the boot-mode report (as it's all nulled out, Soarer style), but it still wants it sent. This isn't really ideal as it wastes time within the controller, although much less than it used to with the new scanning style. One option is to do what the TMK firmware does, which leaves only the NKRO interface enabled, unless the BIOS sends SetProtocol to turn on the boot-mode interface. This has the drawback of if you have the keyboard plugged in when it boots, it will stay in boot-mode (non-NKRO), as OSes don't send SetProtocol. TMK has a magic key combination (LeftShift + RightShift + N) which enables NKRO but this seems a bit manual... Maybe I'll just let Windows waste trillions of cycles by needlessly asking for the boot-mode report (and diagnostic report even when the util isn't running).

This version is already going to be incompatible with 0.7 as it no longer keeps all scancodes in memory, instead loading the current layer from EEPROM when required. This obviates the need for "Store scancodes in EEPROM", because as soon as you change the scancode it writes it. This will be v0.8; I'll release it before the macro stuff (which will now be 0.9); macros isare partially completed but still need a fair amount of polishing (and a GUI written).
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline vivalarevolución

  • Posts: 2146
  • Location: Naptown, Indiana, USA
  • Keep it real b/c any other way is too stressful
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #164 on: Mon, 29 September 2014, 21:27:01 »
Ok, I resoldered my controller with individual wires.  Everything works fine, except column four seems to be dead.  I am guessing that this is a problem with my solder connection.  Any tips?
Wish I had some gif or quote for this space, but I got nothing

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #165 on: Mon, 29 September 2014, 23:15:03 »
Was that column working before? This was the controller/keyboard that you had the ribbon cable fail on? The controller should be OK... if it was working before it still should be. Most likely a bad solder connection on the keyboard-side of the wiring; I'd just check that the solder has wetted the joint nicely and you didn't lift a trace when you desoldered the ribbon cable. With those old 1980s PCBs they will be a bit tarnished and the copper foil isn't as tightly stuck to the fibreglass compared to newer PCBs. If you've got a multimeter use the continuity function to check between the controller and the pad on the board (try not to touch the wire itself if you can help it).
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline vivalarevolución

  • Posts: 2146
  • Location: Naptown, Indiana, USA
  • Keep it real b/c any other way is too stressful
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #166 on: Tue, 30 September 2014, 05:48:38 »
Was that column working before? This was the controller/keyboard that you had the ribbon cable fail on? The controller should be OK... if it was working before it still should be. Most likely a bad solder connection on the keyboard-side of the wiring; I'd just check that the solder has wetted the joint nicely and you didn't lift a trace when you desoldered the ribbon cable. With those old 1980s PCBs they will be a bit tarnished and the copper foil isn't as tightly stuck to the fibreglass compared to newer PCBs. If you've got a multimeter use the continuity function to check between the controller and the pad on the board (try not to touch the wire itself if you can help it).

It's the Kishsaver.  The column was working before I replaced the ribbon cable with individual wires. The copper foil on the capacitive pad card seems to be alright, but I will add solder to connection on both ends and see what that does.

I've got a multimeter, but I don't exactly understand how to use it.
Wish I had some gif or quote for this space, but I got nothing

Offline vivalarevolución

  • Posts: 2146
  • Location: Naptown, Indiana, USA
  • Keep it real b/c any other way is too stressful
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #167 on: Tue, 30 September 2014, 07:07:08 »
I resoldered what I thought was the trace to column 4, and still nothing.  Do you think reloading the firmware might do anything?  Or is this purely a hardware issue?  Perhaps employ some copper paste or whatever that stuff is?
Wish I had some gif or quote for this space, but I got nothing

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #168 on: Tue, 30 September 2014, 16:36:52 »
Hmmm... I don't think reloading the firmware will help. Silly question but you don't have a column skip set on that column by mistake?

It's possible there is a controller issue now with one of the shift registers' outputs, if there was a dry joint before that was working during my testing and while you initially set it up, but with all of the desoldering etc. may have flexed loose.

Maybe check if the controller is actually still firing on that column. If you have a multimeter, setting it to voltage mode and measuing between 0V (any of the gold mounting points) and the column—on the controller itself—you should see an averaged voltage. It will likely be very low as each column is pulsed only very briefly (I just tried it with a beamspring controller and got 56mV) but it will be more than 0V. Try the columns that are working and see if you see a difference. My multimeter is cheap and crappy but it also has a frequency mode (Hz); it also responds to columns by outputting the scan rate (~430 Hz in this case).

If you have a hard time trying to measure that I'll see if I can do some new firmware which will raise each column high and low for seconds at a time so you get a chance to measure it better.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline vivalarevolución

  • Posts: 2146
  • Location: Naptown, Indiana, USA
  • Keep it real b/c any other way is too stressful
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #169 on: Tue, 30 September 2014, 17:55:53 »
Hmmm... I don't think reloading the firmware will help. Silly question but you don't have a column skip set on that column by mistake?

It's possible there is a controller issue now with one of the shift registers' outputs, if there was a dry joint before that was working during my testing and while you initially set it up, but with all of the desoldering etc. may have flexed loose.

Maybe check if the controller is actually still firing on that column. If you have a multimeter, setting it to voltage mode and measuing between 0V (any of the gold mounting points) and the column—on the controller itself—you should see an averaged voltage. It will likely be very low as each column is pulsed only very briefly (I just tried it with a beamspring controller and got 56mV) but it will be more than 0V. Try the columns that are working and see if you see a difference. My multimeter is cheap and crappy but it also has a frequency mode (Hz); it also responds to columns by outputting the scan rate (~430 Hz in this case).

If you have a hard time trying to measure that I'll see if I can do some new firmware which will raise each column high and low for seconds at a time so you get a chance to measure it better.

Thanks for the help.  No, the column skip is not on.  I thought about that bonehead move as well.

I can't seem to get the multimeter to read anything, but then again, I have no clue how to use a multimeter.  Like I'm plugging it into electrical sockets and stuff trying to get a reading.  I think I will get back to you once I figure out how to use a multimeter.
« Last Edit: Tue, 30 September 2014, 18:42:32 by prdlm2009 »
Wish I had some gif or quote for this space, but I got nothing

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #170 on: Tue, 30 September 2014, 19:25:27 »
Bugger!

I don't mind sending you a new controller and you can send the one you've got back; I don't have any bits to put one together right now, but will be receiving new PCBs in the next couple of days hopefully. If I'm not flying overseas for work over the next couple of days or this weekend that may be a possibility. At least that will rule one thing out of the equation.

BTW: do you have the pinout for the rows/columns? If you check the installation manual it's there in the first section I think.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline vivalarevolución

  • Posts: 2146
  • Location: Naptown, Indiana, USA
  • Keep it real b/c any other way is too stressful
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #171 on: Tue, 30 September 2014, 20:09:08 »
Bugger!

I don't mind sending you a new controller and you can send the one you've got back; I don't have any bits to put one together right now, but will be receiving new PCBs in the next couple of days hopefully. If I'm not flying overseas for work over the next couple of days or this weekend that may be a possibility. At least that will rule one thing out of the equation.

BTW: do you have the pinout for the rows/columns? If you check the installation manual it's there in the first section I think.

We should discuss this more over PM.  I'll get to you when I have the chance.
Wish I had some gif or quote for this space, but I got nothing

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #172 on: Wed, 01 October 2014, 03:49:30 »
I had a little bit more time to work on the v0.8 firmware tonight; it's almost done bar re-implementing the expansion-header stuff (i.e. solenoid/LEDs/lock switches etc.). Media keys and system keys now working nicely in Windows; can make the volume go up and down and suspend a laptop from my PC-AT alone (and even wake it up again—nice to see that hasn't stopped working). I might have figured out how to make Windows less USB-report spammy; it will still demand all the reports, but I've just got a bit more choosy about when I choose to send them.

The tricky one remains (as always!) the boot-mode vs NKRO mode reports. Windows still demands the boot-mode, but I'm not so keen on sending it needlessly. Kuato also mentioned that his BIOS was getting doubled key-presses, which may imply his BIOS is smart enough to understand the NKRO report too, but it's stlil getting both. Long and short of it is now I've got the firmware listening to SetProtocol, which the BIOS will use to set boot-mode, and I'll then refuse to send the NKRO report. Of course the firmware has to switch over to the NKRO report after the OS has booted. It seems (at least from my testing on Linux and Win 7 x64) that the OS should do a USB interface reset; I listen out for this and set the keyboard back to NKRO. I may need to implement a magic keycode to force this à la TMK controller, but I'll see if we can get away with it first. This may need some volunteers for testing :))
« Last Edit: Wed, 01 October 2014, 03:53:17 by xwhatsit »
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #173 on: Wed, 01 October 2014, 19:23:54 »
I installed my controller on my Tinsaver tonight. It was working with the keyboard/controller in the bottom part of the case but when I moved it around/put the top on, row 2 just wouldn't respond. I tried playing with the voltage, but nothing seemed to work.

Also, is it not supposed to follow what you think a column/row keyboard would look like? I have 1# in row 2, and #2 in row 1.... stuff like that


Also forgot where I put all my tinsaver hardware (screws to put the case together as well as those black plastic spacers)...
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #174 on: Wed, 01 October 2014, 19:35:54 »
We've seen this with a couple of Kishsavers so far, where they work out of the case but when are installed stop working. The reason (in all situations so far at least) is that the Kishsaver case is metal and quite cramped. It's possible to have shorts etc. to the case, which will screw with the sensing obviously. People have fixed it either by putting some insulation tape across it to stop the shorts, or trimming stuff a bit closer.

The position of the keys within the matrix are basically what IBM decided to do when they designed the keyboard decades ago... there are a lot of variations, especially with the beamsprings but even in the Model Fs. They don't always put the keys on the row/column where you'd think they'd be. It seems quite common with the Model Fs to follow the strange pattern you see, where keys on the same row will be side-by-side, then up-and-down, then side-by-side again etc. Even two very similar 3278 beamsprings—one with numpad and one without—might have an almost unrecognisable matrix layout compared to each other. I'm assuming IBM didn't do things on a whim but it certainly looks like it sometimes :D
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline HPE1000

  • Keycap Paparazzo
  • Posts: 2943
  • Location: Carolina Beach, NC
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #175 on: Wed, 01 October 2014, 19:37:58 »
It is a bit tricky to work with, when I wrapped my USB cable around the little pin/nub inside the aluminum case a bunch of keys stopped responding. After I uncoiled it all the keys worked again.

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #176 on: Wed, 01 October 2014, 19:41:18 »
Do you think that could have been because it flexed the controller closer to the case and caused a short? The USB cable being wrapped around something shouldn't affect anything really unless it was a really crap unshielded cable emitting tonnes of EMI but I wouldn't have thought that was likely.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline HPE1000

  • Keycap Paparazzo
  • Posts: 2943
  • Location: Carolina Beach, NC
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #177 on: Wed, 01 October 2014, 19:49:52 »
Do you think that could have been because it flexed the controller closer to the case and caused a short? The USB cable being wrapped around something shouldn't affect anything really unless it was a really crap unshielded cable emitting tonnes of EMI but I wouldn't have thought that was likely.
I guess it's possible, I am really not sure what happened but it did. There was no tension on the controller or the usb plug on the controller so it shouldn't have moved it at all.

This thing is awesome though, I got it all setup and programmed and it works like a charm.

Here is a video I posted on OCN around a week ago of this controller in action (With the buzzer)

I have a new keycap set on order from unicomp, only thing left is new powdercoat :P

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #178 on: Wed, 01 October 2014, 20:01:44 »
Hahah that's pretty awesome. I didn't know the buzzer was so high-pitched. Very cool!
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline HPE1000

  • Keycap Paparazzo
  • Posts: 2943
  • Location: Carolina Beach, NC
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #179 on: Wed, 01 October 2014, 20:05:35 »
Hahah that's pretty awesome. I didn't know the buzzer was so high-pitched. Very cool!
It is REALLY loud, although I have it turned all the way up lol

This keyboard was meant to be used every now and then as something fun and once I figured out how to setup the buzzer it just made it 10 times more fun :D

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #180 on: Wed, 01 October 2014, 20:23:29 »
We've seen this with a couple of Kishsavers so far, where they work out of the case but when are installed stop working. The reason (in all situations so far at least) is that the Kishsaver case is metal and quite cramped. It's possible to have shorts etc. to the case, which will screw with the sensing obviously. People have fixed it either by putting some insulation tape across it to stop the shorts, or trimming stuff a bit closer.

The position of the keys within the matrix are basically what IBM decided to do when they designed the keyboard decades ago... there are a lot of variations, especially with the beamsprings but even in the Model Fs. They don't always put the keys on the row/column where you'd think they'd be. It seems quite common with the Model Fs to follow the strange pattern you see, where keys on the same row will be side-by-side, then up-and-down, then side-by-side again etc. Even two very similar 3278 beamsprings—one with numpad and one without—might have an almost unrecognisable matrix layout compared to each other. I'm assuming IBM didn't do things on a whim but it certainly looks like it sometimes :D

Alright, I'll have to play around with some kapton tape once I get the case done.

The layout thing makes reprogramming a bit harder since the matrix isn't what you would expect it to be. But whatever, I don't plan on doing that too many times :D
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #181 on: Wed, 01 October 2014, 20:29:09 »
You needn't be flash and use kapton tape; I think in a couple of the photos I posted I've used it, but only because I didn't have any electrical tape at hand and I was impatient :D

Yeah... a couple of people have asked about putting in a fancy picture of the keyboard itself and just have click on the keys to change the scancode. The only problem with that is the sheer number and variety of keyboards that use the controllers; even I don't know half of what some of the matrices look like. I don't think I've seen a Kishsaver layout yet (I'd appreciate it if once you've got it mapped nice you could export the layout and send it to me :D ). It's possible though... but I think further down the wishlist than some of the other important things I need to do with the firmware/software.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #182 on: Wed, 01 October 2014, 20:35:42 »
You needn't be flash and use kapton tape; I think in a couple of the photos I posted I've used it, but only because I didn't have any electrical tape at hand and I was impatient :D

Yeah... a couple of people have asked about putting in a fancy picture of the keyboard itself and just have click on the keys to change the scancode. The only problem with that is the sheer number and variety of keyboards that use the controllers; even I don't know half of what some of the matrices look like. I don't think I've seen a Kishsaver layout yet (I'd appreciate it if once you've got it mapped nice you could export the layout and send it to me :D ). It's possible though... but I think further down the wishlist than some of the other important things I need to do with the firmware/software.

I have a ton of it on hand from another project, so I might as well use it

At this point, I'm more worried about shorts than a custom GUI for the different martixs ;D
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #183 on: Wed, 01 October 2014, 22:29:01 »
It's for sure a grounding issue. I'm typing on the tinsaver right now just sitting on my glass desk without the case at all. Everything seems to be working right!


Thanks for the amazing work! Now I just need to decide on what model F to convert next. The unsaver, the 50 key to match this tinsaver or my 107 battle ship.


Edit: Is there anyway to do a locking FN key? I'd really like to be able to lock in the arrow keys or just have a normal non-locking FN key
« Last Edit: Wed, 01 October 2014, 22:43:32 by The_Beast »
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #184 on: Fri, 03 October 2014, 04:55:30 »
Yay, v0.8.0.

I'm working on compiling binaries for the utilities in Windows and Mac OS X now. As we have now ticked over from 0.7.x to 0.8.x, you will want to use a v0.8.x GUI util.

v0.8.0 has some reasonably major changes that could trip you up, so read the following and take care before flashing the new firmware:
  • Move to interrupt-based scanning, leaving more time for keyboard logic during the sleep periods in the capsense stuff—this has the effect of lowering the threshold somewhat, so if you have a threshold override be careful to raise/lower it to the minimum/maximum first or load a blank layout (!!!) or you may have spammy keys all over the place
  • Separate USB HID reports for media keys (volume etc.) and system keys (power off/suspend etc.); this is required for them to work in Windows
  • All scancodes no longer held in RAM; only the current layer is loaded from EEPROM when needed. This means when you change a scancode with the GUI, it is updated immediately and there are no longer Store/Load Layout from EEPROM buttons
  • Much better autocalibration; the code certainly makes much more sense, and now produces much more reliable results, especially when column skips are in use
  • Rationalisation of USB HID reports; tries to send them only when required (even on Windows, which is very insistent)
  • Related to previous item, NKRO report is now exclusive of boot-mode report; only one will be used, even if the OS demands both. SetProtocol in BIOS will select boot-mode report, and when OS does a USB protocol reset the NKRO report will be selected. The current mode is displayed in the GUI for debugging.
  • Changed logic in expansion-header Caps/Num lock physical switch stuff, hopefully will now be reliable on Windows
  • Key debouncing is now done with proper hysteresis instead of my what-was-I-smoking previous implementation
  • Scanning is now disabled during solenoid click, so you will want to minimise your solenoid click times to retain decent keypress latency. This was a tough decision that I hope to revisit. Now that scanning takes place on an interrupt and more or less constantly, it was getting inteference from the solenoid click, so it was a choice between massively increasing the debounce cycles while the solenoid mode was used, or temporarily disabling scanning. The latter seems more snappy and leads to cleaner and faster code when the solenoid isn't used.
  • Emergency Halt button in GUI to stop crazy-spammy keys in a hurry
  • GUI keyboard lock/unlock button to allow keyboard usage in GUI if you like living on the edge
  • GUI now handles USB comms delays and errors much more reliably and won't just crash. I hope.
Downloads here: http://downloads.cornall.co/ibm-capsense-usb/0.8.0/
« Last Edit: Fri, 03 October 2014, 05:14:27 by xwhatsit »
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #185 on: Fri, 03 October 2014, 04:56:26 »
Oh sorry The_Beast I didn't see your edit. By locking Fn you may mean the Select keys? For example, you press Select 1 and Layer 1 is now the new default layer, until you press Select Base.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #186 on: Fri, 03 October 2014, 05:40:11 »
Alrighty, Windows and Mac OS X binaries uploaded to http://downloads.cornall.co/ibm-capsense-usb/0.8.0/ .

Now we wait for the “my keyboard died in a fire" posts to roll in.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #187 on: Fri, 03 October 2014, 05:53:09 »
Also got a box of these shiny white things in preparation for the beamspring/107-key kishunsaver deluge that is being unleashed over at DT  :confused:
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline CPTBadAss

  • Woke up like this
  • Posts: 14365
    • Tactile Zine
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #188 on: Fri, 03 October 2014, 06:32:35 »
I miss the purple boards... And I wish I got in on the beamspring lovin from Cindy.

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #189 on: Fri, 03 October 2014, 11:57:31 »
Oh sorry The_Beast I didn't see your edit. By locking Fn you may mean the Select keys? For example, you press Select 1 and Layer 1 is now the new default layer, until you press Select Base.

Cool! I'll give that a try
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline Touch_It

  • Posts: 715
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #190 on: Fri, 03 October 2014, 12:04:49 »
Ahhhhh yeah.  Excited to get my kishunsaver working


Visit the Typing Test and try!

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #191 on: Fri, 03 October 2014, 18:30:30 »
There was a pretty big showstopping issue with the Windows GUI util (immediate "error reading from keyboard"); seems the compiler is not quite up-to-scratch with the C++11 standard yet and some stuff in std::chrono wasn't really working. Have changed it to use built-in Qt timing functionality and seems to be much happier.

I've uploaded new Windows and Mac OS X binaries now, along with the modified source. It's still called v0.8.0 though.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #192 on: Fri, 03 October 2014, 19:21:52 »
I'm having some problems with the consistency of the layers

Here's my base layer:


Layer 1


Layer 2


So, it's to my understanding that hitting Fn1 = layer one (which it's set to in layer condition) but it's quite hit or miss when entering F keys. I should be holding the FN1 key and then the 5 key to get F5, right?

Also, I have the vertical bar set to select layer two, which is basically the base layer, but with arrow keys for the right shift, alt, Fn1 and control. However, switching between the layer is also quite inconsistent. I have it set that hitting the vertical bar key in the base layer switches to layer two, and hitting the same key in layer two switches back to the base layout. Is this right?


Thanks for all the help!
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #193 on: Fri, 03 October 2014, 20:22:55 »
Ah yup I think I know what's happening here. Quite a few people have been stung by this and fair enough too; it was a modification I made to increase flexibility at the expense of clarity :)

Basically, you need to have Fn1 on both Base Layer and Layer 1, in the same place. I kind of (poorly) explain it Section 11.2.2 of the installation manual. The long and short of it is that Fn keys are looked at every scan on the current layer. So what it means currently is you press Fn1, it goes to Layer 1, then the next scan the same key you're holding down now is assigned (Ignored), so it will then drop back to Base Layer, where of course on the next scan you'll be back on Layer 1 again :)) The effect is it will alternate between Base Layer and Layer 1 every scan. The answer is just to put Fn1 in the same place on Layer 1 as it is on Base Layer.

I did it like this because if you think inventively you can get some cool recursive layer stuff working with limited Fn keys, getting to a fourth layer by pressing Fn keys in a certain order. But it does lead to a bit of confusion unfortunately in the simple cases when you're first setting stuff up.


EDIT: I see you also have the same problem with the Select keys. Basically the same thing is going on; you press Select 1, it immediately shifts to the next layer, the next scan, the same key is still pressed and is now Select Base, so it drops back to base layer. The easiest solution unfortunately is to put the Select key on a different key. I understand how this isn't really ideal. I will have a think about how to fix this nicely; perhaps it should work where upon releasing the Select key will move to the next layer instead of just as soon as it's pressed?
« Last Edit: Fri, 03 October 2014, 20:30:28 by xwhatsit »
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #194 on: Fri, 03 October 2014, 20:30:51 »
Ah yup I think I know what's happening here. Quite a few people have been stung by this and fair enough too; it was a modification I made to increase flexibility at the expense of clarity :)

Basically, you need to have Fn1 on both Base Layer and Layer 1, in the same place. I kind of (poorly) explain it Section 11.2.2 of the installation manual. The long and short of it is that Fn keys are looked at every scan on the current layer. So what it means currently is you press Fn1, it goes to Layer 1, then the next scan the same key you're holding down now is assigned (Ignored), so it will then drop back to Base Layer, where of course on the next scan you'll be back on Layer 1 again :)) The effect is it will alternate between Base Layer and Layer 1 every scan. The answer is just to put Fn1 in the same place on Layer 1 as it is on Base Layer.

I did it like this because if you think inventively you can get some cool recursive layer stuff working with limited Fn keys, getting to a fourth layer by pressing Fn keys in a certain order. But it does lead to a bit of confusion unfortunately in the simple cases when you're first setting stuff up.

That seemed to fix it. Anything for the layer lock for layer 2? It's more of an annoyance compared to the layer 1 issue since sometimes, I really need F keys (ie games)

Thanks again!
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #195 on: Fri, 03 October 2014, 20:32:56 »
Sorry I was editing my post to reply to that bit, missed it the first time around.

I'll have a play with making the release of a Select key trigger the layer shift...
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #196 on: Fri, 03 October 2014, 22:04:42 »
Alright The_Beast, give this new firmware a go when you're ready (you'll need the new v0.8 util if you haven't updated to v0.8 yet; bear in mind the cautions listed above when updating):

http://downloads.cornall.co/ibm_capsense_usb_model-f_rev1-2_0.8.a.hex

It only pays attention to the Select keys on key-up. I tested it out on my PC-AT and I can quite happily use the same physical key for Select 1 and Select Base.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Round 2)
« Reply #197 on: Sat, 18 October 2014, 06:07:41 »
Well, who's game to try macros? v0.9.0 is now released: http://downloads.cornall.co/ibm-capsense-usb/0.9.0 , along with hex files and Windows/Mac binaries.

The GUI should be reasonably straightforward to figure out. v0.9.0 is incompatible with previous versions of the firmware (it'll probably just hang I expect). The import/export of macros is a bit rubbish at the moment; it's just dumping the raw bytes as hex, no pretty-printed syntax. I think most people will want to use the GUI though, so it's not such a priority I think.

In most cases you won't need to use the push/pop mods stuff; a simple Clear or Assign at the beginning should be enough.
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless

Offline 0100010

  • Posts: 1127
  • Location: DFW, TX, US
  • Not Sure
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Batch 3)
« Reply #198 on: Sat, 18 October 2014, 19:20:06 »
Round 3, PM sent.
  Quoting me causes a posting error that you need to ignore.

Offline xwhatsit

  • Thread Starter
  • Posts: 297
  • Location: NZ
Re: xwhatsit's Grand Unified IBM Capsense USB controller Order (Batch 3)
« Reply #199 on: Sat, 18 October 2014, 23:00:53 »
Ah so it's a 107-key 4704 by the looks of your sig :D

Yes Batch 3 has been kicked off. I've actually preordered a bunch of PCBs and components and will put these together in a more relaxed manner as orders come, rather than trying to do everything in one big hit. The components are a touch more expensive this way, but I saved cost by using a different PCB supplier. As well at the moment I'm flat out at work and home and simply can't dedicated a couple of full weekends to these suckers. Hopefully that means yours will be in the post some time next week 0100010!
Beam spring IBM 5251 (7361073/7362149) & IBM 3727 (5641316) | Model F IBM 122-key terminal & IBM PC-AT 84-key | Model M Unicomp 122-key terminal | Cherry MX Blue Leopold Tenkeyless