TopSense - better capsense, now for Topre.

User avatar
DMA

02 Aug 2018, 08:21

I'm typing this on a "dharma tactical keyboard", converted to commonsense.
NOT using TP1684 chip. Just the CY8CKIT-059 connected directly to the Topre PCB.
The keyboard was donated to me after being soaked in a plumbing incident several years ago, and looked this way:
36813436_227906644720089_1385577456374644736_n.jpg
36813436_227906644720089_1385577456374644736_n.jpg (144.51 KiB) Viewed 6669 times
After some dishwashering and an isopropanol bath, it looks thusly:
IMG_20180801_223054.jpg
IMG_20180801_223054.jpg (3.72 MiB) Viewed 6669 times
But the interesting things are inside.
IMG_20180801_184614.jpg
IMG_20180801_184614.jpg (1.22 MiB) Viewed 6669 times
The last virgin controller I have. No more experiments until I buy another batch.

Top case removed:
IMG_20180801_220949.jpg
IMG_20180801_220949.jpg (3.97 MiB) Viewed 6669 times
PCB bottom, controller taped to prevent running away:
IMG_20180801_220816.jpg
IMG_20180801_220816.jpg (1.71 MiB) Viewed 6669 times
Of course it's not a prototype if you don't fuck up. After all, "prototype" is coming from Greek where it meant "to fuck up" :)
Cut wires to length just to solder everything, turn it on and discover that I swapped rows with the left half of the columns.
IMG_20180801_204857.jpg
IMG_20180801_204857.jpg (745.26 KiB) Viewed 6669 times
Actually I want to say a word about topre PCB. It looks like it's at least 4 layers, and all 4 layers are ground. LOTS of ground everywhere. The prototype was run without connecting ground to controller - pure mutual capacitance - and I was able to get decent readings anyway!

So.. custom topre, anyone? Everything is proven, one just needs a donor (which is insanely big $$$, I admit). PCB requirements are practically nonexistent - look at the length of those wires going across all the board to where the right 4051 was. Unshielded. And yet it all works without a hitch.

This is a video of me pressing the button to different depth.
https://www.instagram.com/p/Bl9lOsfDUNZ/
As you can see, one can easily distinguish at least 8 distinct levels of actuation. This means VARIABLE ACTUATION DEPTH. You'll need A LOT of time tuning those thresholds for that to happen - but it is possible to get VERY short-throw actuation. You'll probably get double presses though. Because this thing will be darn sensitive, and with 3kHz scanrate it will read the key bouncing up and down. Scanrate can be downregulated though.

Also the ability to read keypress depth paves the way to interesting stuff like MIDI (I didn't experiment with that - but I think I'll be able to detect 8-16 key velocities for MIDI) and analog mouse keys (press deeper for mouse to go faster)

For just $50 + shipping I'll convert your topre to CommonSense :D Hurry to get this exclusive offer!

PS: Also 3kHz scanrate(can do 7kHz, but why..)! GAMING TOPRE! (normal topre is scanning at measly 65Hz if one is to believe Hasu's research (15.4ms per matrix scan). I didn't scope mine before disassembly.. too late now I guess.)
PPS: Just kidding about "TopSense". It's still CommonSense, of course.

User avatar
Muirium
µ

02 Aug 2018, 09:18

The Dharma board indeed. Fantastic work!

Image
I’m looking at my Realforce and beginning to wonder. Gotta chop the current chips clean off though, don’t you? See, it’s Bluetooth that I really want. I’ve been thinking about making my own USB >> Bluetooth converter for the Realforce, now I’m so used to my Hasu HHKB.

Turning a Topre into a Midi keyboard should be a lot of fun—the key feel at least will be better than many synth keyboards!—and I’m sure the radically increased scan rate will bring gamers great oneness with cup rubber. But wireless operation is downright transformative in my everyday use. The fact so many of us are using wireless internet and battery powered computers, then tethering a USB keyboard of all things is quaint and in a bad way. Not to downplay your sterling work at all, but the other side of the controller—its connection up to host—is where I’d look next.

User avatar
002
Topre Enthusiast

02 Aug 2018, 15:14

Nice work!
That is a very obscure keyboard to just be finding Stateside -- sad that it was in such shitty condition too. The point about the double presses is likely the explanation for reports on the Realforce RGB having issues at the lowest actuation point setting.

User avatar
DMA

02 Aug 2018, 16:37

BLE is actually in the works. I have a working prototype which needs power system.

Jampu

26 Aug 2018, 15:37

Made a RF87U PCB for CS, and it is now working perfectly (with extra help from DMA!)

I'll be redoing the board this week to put the PSoC on the PCB and maybe add a few other features.
Attachments
20180826_091011 - Copy.jpg
20180826_091011 - Copy.jpg (3.02 MiB) Viewed 6461 times
20180826_091421 - Copy.jpg
20180826_091421 - Copy.jpg (4.14 MiB) Viewed 6461 times

User avatar
DMA

26 Aug 2018, 15:59

Jampu wrote: I'll be redoing the board this week to put the PSoC on the PCB and maybe add a few other features.
Use TQFP, Luke! Those QFNs are the easier-to-solder QFNs, but still pretty damn hard to solder. I have a good stereo microscope and STTC-045 for inevitable touch-ups, but your mileage may vary considerably.

User avatar
Myoth

26 Aug 2018, 16:03

how did I not see this ?? you're a god, DMA.

custom Topre when ? I'm down to make one, count me in. the only problem would be the pcb, right ?

User avatar
DMA

26 Aug 2018, 16:05

Myoth wrote: how did I not see this ?? you're a god, DMA.

custom Topre when ? I'm down to make one, count me in. the only problem would be the pcb, right ?
PCB is no longer a problem - if you'll look closely, Jampu's PCB is custom. Look at those long contact pads. You won't see those in topre land.

User avatar
Muirium
µ

26 Aug 2018, 16:22

This, oh this!, could be so awesome. Bluetooth NovaTouch? Bluetooth Realforce? Yes I’m this predictable!

Jampu

26 Aug 2018, 16:49

DMA wrote:
Jampu wrote: I'll be redoing the board this week to put the PSoC on the PCB and maybe add a few other features.
Use TQFP, Luke! Those QFNs are the easier-to-solder QFNs, but still pretty damn hard to solder. I have a good stereo microscope and STTC-045 for inevitable touch-ups, but your mileage may vary considerably.
If I had a hot air station it would be QFN all the way. Maybe it's time to get one anyhow... That said, on this board there is plenty of space around the arrow keys, so TQFP it is. Once the (admittedly minimal) circuitry is well-defined - and assuming there is enough continued demand - I will probably switch to QFN.

User avatar
DMA

26 Aug 2018, 17:30

Well.. I _have_ a hot air station. And yet I need to touch up A LOT afterwards. IOW, if going QFN route - PCBA is strongly advised. Let the professionals do the work.

It took me about 3 hours to produce 2 working controllers for CSSK. And the funny part that it mostly just refuses to be programmed if soldered badly. So you don't know if you fried the chip or just need to touch things up.

Jampu

26 Aug 2018, 21:35

That's always the fun part - did I lay out the circuit wrong, screw up the solder, melt the bond wires from the die or simply blow up the chip? AAAAAAAAAAA

Probably I'm a little naive after watching some Louis Rossmann videos, but I think I can get it figured out without destroying more than a couple chips :D Might need to buy a micro blade tip, but I think a standard small curved tip will probably do the cleanup job just fine. In any case, I only intend to use QFN if I will not be doing assembly AND if space constraints disallow TQFP as the flux cleanup is almost worse than the soldering, and I'm not about to buy an ultrasonic machine...

User avatar
DMA

26 Aug 2018, 21:37

Jampu wrote: as the flux cleanup is almost worse than the soldering, and I'm not about to buy an ultrasonic machine...
It's called no-clean for a reason! You're using RMA flux, right? If so - cleaning is optional.

Jampu

27 Aug 2018, 23:32

Optional electronically, but sticky == icky imo. I'm definitely over having to wash my hands every time I pick up some of the prototypes at work

60% will definitely use QFN as 16x16 is way too big without sacrificing split space options. It looks like the QFN has the type of pads that extend around the side so it shouldn't be too hard to solder. Maybe I'll get a cheap stencil made and bring home a digital microscope to help learn with

User avatar
DMA

28 Aug 2018, 17:04

Jampu wrote: 60% will definitely use QFN as 16x16 is way too big without sacrificing split space options.
14x14. Small, but crucial difference.
Jampu wrote: It looks like the QFN has the type of pads that extend around the side so it shouldn't be too hard to solder. Maybe I'll get a cheap stencil made and bring home a digital microscope to help learn with
It has those. But pin pitch is zero fucking point four millimeters. Even 0.6mm tip I have is huge compared to those pins.
TQFP is not much better numerically - it's 0.6mm IIRC. But it's WAY easier to solder.

Also don't forget to bring XRES pin out - you'll need it for initial programming. USB pins can be used - but access to the reset pin is needed (unless you're using the miniPROG which is like $80)

Jampu

28 Aug 2018, 23:36

With pins the TQFP is 16mm on a side, and including minimum reasonable pad dimensions 17-18mm for the total footprint. Maybe it will still fit on a 60%, but it will take some finagling - will cross that bridge when I come to it. I use an STTC-126 cartridge for 99% of soldering which has a tip diameter of 0.4mm. If I need to solder a QFN myself, I will use hot air with tinned pads or solder paste for the initial attachment (mainly for the thermal pad) and will cleanup using the iron and a liberal application of flux. Reset is currently on a switch that is exposed through the option switch hole in the case, but I will probably put an SPST on/off switch there instead if I decide to throw BLE in the next rev.

User avatar
DMA

29 Aug 2018, 06:27

Jampu wrote: (mainly for the thermal pad)
About that one.. you probably don't want to do that. I mean just use that space for routing. Whole circuit consumes 10mA, you don't need termal pad.
Jampu wrote: Reset is currently on a switch that is exposed through the option switch hole in the case
You don't need that. Reset is only needed for initial programming - and then you need KitProg to drive it, not human. Now USBIO pins are doubling as SWDIO, but you'll need reset too. So don't forget the programming header with power, USBIO and XRES.

Post Reply

Return to “Workshop”