Dunno, I'm constantly scanning

Hehehe
Point 1) Oops. I can already see I made a mistake. Does this rule apply to sensing lines on rows only, or in general just to be sure? I have to avoid P15_4 and P15_3 for the rows, and P15_2 for the columns.
Thanks DMA, all this is very helpful advice. I deeply appreciate your time and patience.DMA wrote: Once this is taken care of -
open the assembly, get access to the PCB. Leave the PCB on the back plate. run matrix monitor. Grasp the row wire you see responses from, press your other hands' finger against contact plates on the PCB, observe. You should see pretty strong signal.
If that doesn't work - touch column wires with the same fingers you used in previous step. Don't short row to column - you won't fry anything but the results may surprise you as I only read lower 8 bits from the ADC and god only knows what you'll see.
Or you may swap last 2 steps - or even desolder the controller from the board and just touch the pin pads to make sure the controller is OK.
I don't know about DSO, but 4 channels are _very_ useful. 1 for trigger, 3 for signals. Although I probably used mine for like 40 hours now. Don't know if that's $400 well-spent. Allows to see things much better though.
Actually, current github version has XT 8x12 matrix and pretty sensible pinout, guaranteed working (I'm using it on my daily driver). You can just reuse it.
Look at "Pins" in the PSoC window with sources, near the top. the only trick there is that columns must be aligned to the bottom - "cols[23] is the last column in the matrix", not "cols[0] is the first column"
Better than not seeing at all, that's invaluable!
Big thanks! That's now Plan A. After continuity and shorts tests...
Just desolder the controller and grab one row and columns one by one.
Looks like this was an overvoltage situation
What __red__ says. Solder it on.hansichen wrote: Hi guys. I'd like to test this controller as a replacement of the xwhatsit controller. Getting the CY8CKIT-059 controller is an easy thing but do you guys know which edge connector the xwhatsit uses to slip onto the pcb? I'd like to get such a part and then solder from this connector with wires onto the CY8CKIT-059 controller so that I don't damage/modify the pcb.
Oh, that's nice wcass - bravo!wcass wrote: Another idea that doesn't require soldering ... add a shim.
The original PCB is 0.8 mm and the connector wants 1.6 mm, so just add another 0.8 mm shim and stack it.
something like this: You can get 3 of these from OshPark for $7.25 delivered. Select the option for "2 oz copper, 0.8mm thickness"
Gerber file is attached below.
If you are using the CY8CKIT controller then that has nothing to do with xwhatsit at all. Completely different hardware, completely different software.hansichen wrote: Thanks for your effort, after looking for all the parts I decided that I'll try the solder way. As long as I don't fuck it up it shouldn't matter that I soldered onto the pcb so I should be fine and I have a way easier time to source all the parts for it.
Is there a recommended pinout on which pin of the xwhatsit configuration to solder on which pin of the CY8CKIT-059 controller? From what I've seen there were only beamspring convertions with a custom pcb in this thread which didn't give any clue in that regard.
Code: Select all
Recommended pinout
D0: P0[3]
D1: P3[2]
Rows: P0[0, 1, 5, 6, 7], P15[3, 4, 5]. Alternatively, P12 can be used to free more analog-capable pins, but watch for ExpHdr pins.
Cols: P1[0-7], P2[0, 2-7], P3[0, 1, 3-7], P15[0, 1, 2].
P0[2], P0[4] to +5V, P0[3], P3[2] to the ground.
Whew. Hopefully you're done with soldering now.
How do you change it to beamspring?hansichen wrote: Thanks for your help, I feel like such a noob. I wired the whole thing now and build the bootloader. Now I try to do the firmware. I opened the file and changed it to beamspring and then went into the pinout. There I find all the columns and rows and D0, BootPin, \USB:Dp\, \USB:Dm\, \ADC0:ExtVref\ and skveral ExpHdr things to configure. D0 is clear, D1 is not existent here and for the others I kept the standard config for now. When compiling it I get two errors now, first #include "globals.h" in line 10 of cyaplcallbacks.h is not found, even if that file should exist normally.
At the moment I can't find a thing that I overlooked so I'm wondering what went wrong.
Please do a git pull (or just download the zip again). I found a bug which will lock up the firmware if there's no configuration and fixed it.hansichen wrote: I went to /dma_core/globals.h in the PSoC Creator and changed #define SWITCH_TYPE BUCKLING SPRING to BEAMSPRING. If I see it correctly the board has 17 Columns and 4 Rows (This is the pcb printing: https://i.imgur.com/za0nt6X.png) and that's what I changed. After putting in the Rows and then building it with Ctrl + F5 I get this errors:
"prj-M0120: Build error: globals:h: No such file or directory" in file cyapicallbacks.h, line 10, col 21 and
"prj-M0120: Build error: The command 'arm-none-eabi-gcc.exe' failed with exit code '1'.
Mind if we do a teamviewer session? Just don't send sessionid and password here, use the private message