Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : CMM2 Keyboard woes
Page 1 of 2 | |||||
Author | Message | ||||
clarkema Newbie Joined: 12/09/2020 Location: United KingdomPosts: 3 |
I recently received my long-awaited and highly-anticipated CMM2 and have been enjoying playing around and exploring what it can do. One issue that struck me as soon as I turned it on was how slowly I had to type. If I just plug a keyboard in and type at a normal speed, half the characters are dropped. In order to enter text at the shell or in the editor I have to hunt and peck very slowly and deliberately, entering each character carefully one at a time. Some further experimentation suggests this is due to lack of key rollover; if you hold (for example) 'k' and then hit 'j' the 'j is not recognised because the 'k' has not yet been released and is still repeating. Compare this to what happens on Linux or MacOS (I assume Windows as well, but don't have an installation handy to test right now) if you hold 'k' and then hit 'j' the second key interrupts the repeating first and is recognised. This behaviour is not particularly about repeating; it allows faster and more fluid typing by not requiring that the first keypress is completed before the second can be recognised. This does not appear to be a hardware limitation, since multiple keys are recognised simultaneously in the Wolfenstein port; I can spin backwards and left and still fire while spinning. Has anyone else encountered this? If so I'd be grateful for any tips that might help; swapping in a keyboard with Cherry MX blue switches has helped by encouraging more deliberate typing, but it's still easy for me to out-type the interface and have to go back and edit, which becomes really annoying. |
||||
JoOngle Regular Member Joined: 25/07/2020 Location: SwedenPosts: 82 |
Mine works fast enough, but it keeps missing a "beat", which means that often it will "skip" a keypress. I guess it's only compatible with a certain breed of keyboards. Which makes me think... ...We should make a keyboard list over known good and compatible keyboards. Maybe with a "star rating" on it to rate how efficient the keyboard is with CMM2. |
||||
RetroJoe Senior Member Joined: 06/08/2020 Location: CanadaPosts: 290 |
FWIW, I’m using a circa 1990s IBM keyboard with a PS/2 -> USB adapter, and it works flawlessly, even after upping my key repeat rate. It’s the only one I’ve tried, so sorry I can’t be more specific than the caveat “your mileage may vary”, and that the CMM2’s USB interface seems to be a bit picky about a keyboard’s USB implementation. I don’t know if there is a way to figure that out in advance, as I imagine there are dozens or even hundreds of proprietary matrix scanner / keyboard encoders out there (e.g. I have no idea what’s inside my PS/2 USB adapter) and many encoders I’ve seen are “potted” I.e. they have a blob of black goo on them to prevent reverse-engineering. Simplest suggestion is try a few different keyboards - you are sure to find one that works well unless there is a defect on your CMM2. Edited 2020-09-20 04:59 by RetroJoe Enjoy Every Sandwich / Joe P. |
||||
Sasquatch Senior Member Joined: 08/05/2020 Location: United StatesPosts: 296 |
I have a few keyboards that work flawlessly and a couple that work ok. One cheap keyboard I have is pure crap on the CMM2 but seems to work ok with windows and Mac OS. I'm not sure what the difference is? It may be USB timing, I suspect that the cheap ones probably don't have a crystal clock for the encoder chip and rely on a R-C oscillator but I haven't dissected any to check. I was tempted to toss the "bad" keyboard in the trash but now it's useful for testing other problems. -Carl |
||||
Womble Senior Member Joined: 09/07/2020 Location: United KingdomPosts: 267 |
The ones I have tried so far ... Logitech K120 (UK p/n:820-003131) works flawlessley, and these are cheap Cherry G84-4100 (UK) works but see my gotcha post here. The CapsLock, NumLock and ScrollLock cause it to stop sending keypresses until you disconnect and reconnect the usb-A plug from the CMM2, the indicator LEDs do not work. Took me a while to find this out as I always have NumLock turned off and never use the CapsLock key. |
||||
CircuitGizmos Guru Joined: 08/09/2011 Location: United StatesPosts: 1421 |
Already in a different thread. Micromites and Maximites! - Beginning Maximite |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 3840 |
My cheap, cheerful and most importantly small Periboard-426 (UK) shows the same behaviour with regards CapsLock, NumLock, ScrollLock and non-working indicator LEDs. It hadn't occurred to me that removing and reinserting the USB would recover from the hang (now tested it does.) In case Peter does investigate, and I know he has said he won't, and I accept that, but for the record running 5.05.06b7: 1. Press [CapsLock] on USB keyboard 2. Keyboard becomes non-functional 3. Remove USB 4. Reinsert USB 5. CMM2 reports "Error: System fault - check code" 6. Keyboard is functional again Regards, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
clarkema Newbie Joined: 12/09/2020 Location: United KingdomPosts: 3 |
The CMM2 exhibits the same behaviour with my decidedly non-cheap Filco keyboards. I had also not tried removing and replugging the keyboard and have been resetting the CMM2 if I happened to accidentally tap caps lock. Following your post I tried a few more tests (all with 5.05.05) 1. Cold start the CMM2 2. Type away happily (albeit slowly) 3. [CapsLock] 4. No further input is accepted 5. Unplug / replug keyboard 6. Can now type again, but caps lock is on; all input is uppercase 7. [CapsLock] 8. No further input is accepted 9. Unplug / replug keyboard 10. Can now type again, caps lock off; all input is lowercase I also have a Coolermaster Masterkeys Pro S, which does not trigger this behaviour; caps lock works just fine. Odd it is may seem, I suspect this is actually the same issue as the lack of rollover that caused me to start this thread in the first place; key presses are not accepted until the previous keypress has been fulled 'completed'. Co-incidentally Adrian's Digital Basement on YouTube put out a video yesterday that touches on some details of the PS2 keyboard protocol that might shed some light on this: https://youtu.be/djhhRbN0l7k This is a guess informed by his video, but perhaps some USB keyboards do the equivalent of just sending key down when caps lock is engaged, then down-up when it is disengaged. This would produce the observed behaviour if the CMM2 handler was waiting for a key release event before considering any input (which it appears to do -- hence dropped keypresses if the user is typing quickly) It's unlikely to be that straightforward because USB HID != PS2, and I haven't seen any difference in events reported by both keyboards using `evtest` on Linux -- the Filco _does_ seem to send a key-up event -- but I don't know enough about the details of the USB HID spec and things like the 'boot keyboard profile' to say for sure. |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8579 |
If anyone UK based wants to send me a keyboard with caps lock issue I can investigate but without one it is impossible as none of mine display the issue |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 3840 |
If you are serious and think that there is a reasonable chance of resolving it then message me your address and I will get Amazon to send you one directly. Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Womble Senior Member Joined: 09/07/2020 Location: United KingdomPosts: 267 |
It hadn't occurred to me that removing and reinserting the USB would recover from the hang (now tested it does.) In case Peter does investigate, and I know he has said he won't, and I accept that, but for the record running 5.05.06b7: 1. Press [CapsLock] on USB keyboard 2. Keyboard becomes non-functional 3. Remove USB 4. Reinsert USB 5. CMM2 reports "Error: System fault - check code" 6. Keyboard is functional again Tom ... Yes, thats exactly the problem with the Cherry G84-4100 too Does your Periboard-426 also support connection to PS2 with an adapter. That might be why this happens, some incompatibility between PS2/USB support and the H7 usb support. Unplug/Replug of the USB Keyboard might have some unwanted side effects, apart from the obvious wear on the pcb socket. I seem to remember reading a post from Peter last night that the usb support has to restart on the CPU causig lag or timeout in some of the sytem variable ... something like that anyway. The fix works, but is far from ideal. I will see if I can find a spare keyboard with this problem to send to Peter. Regards Womble |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8579 |
Just out of interest please could you try the attached with the CAPS lock issue CMM2V1.5.zip |
||||
Womble Senior Member Joined: 09/07/2020 Location: United KingdomPosts: 267 |
CMM2V1.5.zip Peter ... Thank You for your rapid response on this. I have carried out some tests, with both good and bad results, using the supplied firmware. The Good The Ghost is back ... YaY The program performs eaxactly as expected. Good audio, no screen tearing, random transparent Ghost. Perfect. Also Good We have a CapsLock LED. None of the LED's lit up before. The Not So Good You get two presses of the CapsLock key on the Cherry G84-4100. Then it crashes like before. The LED lights on and off when you press the key as expected. But once it has crashed it stays lit, at least until you hotplug. See below: The NumLock and Scroll Lock keys crash the keyboard instantly. The LED's never light up. Hotplugging renables the keyboard: BUT ... When you Hotplug, for any of the keys (CapsLock, NumLock, Scroll Lock) the system resets and then you get the "Error: System fault - check code" message. You are obviously are on the right track with this, but not there yet, at least so far as this keyboard issue is concerned. It will be interesting to find out how Tom gets on with the test firmware and his Periboard-426 keyboard. It also looks like ClarkEma is also experiencing this with Filco keyboards (his symptoms look exactly like my experiences). Whilst I was testing I also found this, Testing with TassyJim's NewColourBars.BAS: Iiyama ... MODE 12.8 and Mode 12.16 (960 x 540 @ 60 Hz) is "Out of Range" on V5.05.06b9 or the test firmware you provided. Despite being within spec according to the speciications from Iiyama. This is what I get: Every other Mode tests out perfectly. Aspect ratios are off on this 4:3 monitor, but then I expected that. Your efforts are very much appreciated. I am attempting to source another Cherry G84-4100 in case I need to submit one for testing. Regards Womble |
||||
Womble Senior Member Joined: 09/07/2020 Location: United KingdomPosts: 267 |
When you Hotplug, for any of the keys (CapsLock, NumLock, Scroll Lock) the system resets and then you get the "Error: System fault - check code" message. I assume that the "watchdog timer error message". I believe Peter mentioned that the watchdog routine can be triggered when plugging in a USB keyboard. Note that for every keyboard hotplug, you get TWO presses of the CapLock key before it locks up again. This seems to be consistent behaviour. Two presses, thats your lot. |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8579 |
Another try for the keyboard CMM2V1.5.zip Your monitor is simply incapable of displaying 1920x1080 which is what it needs to do to use the 960x540 mode. This mode will only work on true 1080p monitors. Bit rate seen by the monitor is 148.5MHz Edited 2020-09-21 17:33 by matherp |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 3840 |
Results of tests with Periboard-426 and CMM2V1.5.zip: 1. Switch on CMM2 2. USB keyboard shows no LEDs (don't think it is supposed to) 3. Keyboard functional (lower-case) 4. Press [CapsLock] 5. CapsLock LED illuminates 6. Keyboard produces upper-case characters 7. Press [CapsLock] 8. CapsLock LED goes off 9. Keyboard is non-functional 10. Remove USB keyboard 11. Reinsert USB keyboard 12. (No watchdog message) 13. Keyboard functional (lower-case) 14. GOTO 4 [ScrollLock] has the same behaviour, obviously without generating upper-case. This keyboard has no [NumLock] [CapsLock] followed by [NumLock] illuminates both LEDs, but makes the keyboard non-functional. I am reasonably certain this is not a power problem, I have the same issues with the CMM2 connected to a high quality powerbrick by multiple different (ostensibly ) good quality cables. The offer to Amazon you a keyboard still stands. Thanks for looking into this, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8579 |
Try this - LEDs won't work but keys should function. Could make this an optional "feature" CMM2V1.5.zip |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 3840 |
CMM2V1.5.zip Excellent, the keys now work, couldn't care less about the LEDs How do you mean an "optional feature" ? Assuming it "makes any sense" could you provide a brief explanation of the problem and solution? Best wishes, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Womble Senior Member Joined: 09/07/2020 Location: United KingdomPosts: 267 |
CMM2V1.5.zip Your monitor is simply incapable of displaying 1920x1080 which is what it needs to do to use the 960x540 mode. This mode will only work on true 1080p monitors. Bit rate seen by the monitor is 148.5MHz Thanks Peter ... I wondered if that might be the issue with mode 12. I misunderstood what 960x540 really meant. I will test the new firmware shortly and report back on the keyboard. Many Thanks for your excellet work. Womble |
||||
Womble Senior Member Joined: 09/07/2020 Location: United KingdomPosts: 267 |
CMM2V1.5.zip Peter ... Just finished testing this latest "No LED version" Results, thwill style: 1. Switch on CMM2 2. USB keyboard shows no LEDs (as expected) 3. Keyboard functional (lower-case) 4. Press [CapsLock] 5. USB keyboard shows no LEDs (as expected) 6. Keyboard produces upper-case characters 7. Press [CapsLock] 8. USB keyboard shows no LEDs (as expected) 9. Keyboard produces lower-case characters 10. Press [Scroll-Lock] 11. No change to LEDs, keyboard still functional (as expected) 12. Press [Num-Lock] 13. No change to LEDs, keyboard still functional (as expected) 14. Embedded number pad (accesed using [Fn] key) works correctly 15. Press [CapsLock] [Fn] key and embedded numberpad produce arrow keys (although not marked) 16. Randomly mash [CapsLock] {Num-Lock] and [Scroll-Lock] keys 17. No idicator LED's ever light up, not even a flash when CMM2 is switched on 18. GOTO 4, and repeat a number of times 19. Run Ghost_Demo.BAS which works perfectly (as expected), ESC back to prompt 19. Do something stupid ... Remove USB Keyboard 20. Reinsert USB keyboard 21. CMM2 resets and displays (watchdog message) "Error: System fault - check code" 22. Make note to self that Hotplugging from a running CMM2 is a very bad idea !!! Many Thanks Peter, this one works fine You have fixed it I agree A Very Happy Womble |
||||
Page 1 of 2 |
Print this page |