Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Supporting ps2avrgb / Winkeyless.kr boards #959
It would be nice if I could run QMK on all my boards, and after asking on Reddit it seems like someone here might be able to make this possible.
Winkeyless.kr (B.face, B.mini etc) and by extension the 'clones' (often referred to as ps2avrgb after the firmware) PCBs use an ATmega32A from what I can see on my own board.
Can anyone here help out either adding support for these or maybe helping me to figure out how to do it myself? I haven't touched any microcontroller programming in a few years and even then it wasn't more than a dabble, but hey, who knows what's possible.
If there's any other information that's needed I'll do what I can to provide it.
I did this for TMK. Here's my code. I currently use my B.mini X2 with this firmware.
I tried getting it to work with QMK but I wasn't able to. I haven't had enough time to debug it though. I can probably put up my code so others can help out.
Maybe there's something on the V-USB protocol implementation that we need to patch so that it works again with QMK (I'm not aware of anyone who currently uses QMK with V-USB).
Edit: to be clear, my Mac was able to recognize the keyboard with QMK. It's just that pressing any key would make the keyboard output a lot of garbage, so it may be something simple wrong with how I setup the matrix or how we're reading the keyboard report from the V-USB protocol.
Hey, I was able to get my B.mini X2 to run the QMK firmware today :)
The trick in the end was to use a custom matrix. The code is in my fork of the qmk_firmware repo. I'll get a pull request up soon, but first I want to polish the code a little bit and add some primitive backlight support.
I also had to make a few changes to
referenced this issue
Jan 21, 2017
Once I receive my board from my builder, I’ll start fiddling around with what you’ve provided. I’m glad someone has been able to do this! The option for Bootmapper or TMK/QMK is great.…
On Jan 21, 2017, at 2:04 PM, Luiz Ribeiro ***@***.***> wrote: Hey, I was able to get my B.mini X2 to run the QMK firmware today :) The trick in the end was to use a custom matrix. The code is in my fork of the qmk_firmware repo <https://github.com/luizribeiro/qmk_firmware/tree/ps2avrGB/keyboards/ps2avrGB>. I'll get a pull request up soon, but first I want to polish the code a little bit and add some primitive backlight support. I also had to make a few changes to tmk_core, so I'd be happy to hear feedback on those while I prepare a pull request. Most of the changes are so that the AVR core and the V-USB protocol support the ATMega32A, which is used by ps2avrGB boards. I also added a feature to the AVR core that allows us to reboot the board into the bootloader from software on the USB host, to make it more convenient to reprogram the board with a single command from the computer. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#959 (comment)>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AYGA9B5yw5ViGqAPGCNj9EPEcbbwjmRZks5rUkiigaJpZM4LPWR7>.
@jasonm23, I did! But I haven't made a patch that cleanly applies on master yet, it's currently only on my own branch of QMK which has my own keymap, etc. You can check out my current code for backlight here on this commit: luizribeiro/qmk_firmware@9dd1a3f
I haven't put up a pull request to the main QMK repo yet mostly because I don't know what would be useful for people. On my personal branch I have the backlight change depending on the top-most active layer (I have a color setting per layer). Do you think that would be useful? I could either make a pull request for that or just enable backlight with a hard-coded color, and then people could customize the behavior on their own keyboards. What do you think?
I just read the source code of the original ps2avrGB firmware here: https://github.com/showjean/ps2avrU
While most of it is in Korean it wasn't too hard to figure out how the pins of the microcontroller are being used. That said, I believe all these boards use exactly the same pins, so I don't think you need to change anything on the matrix scan code to get it running.
All you have to do, AFAIK, is to create a custom
Let me know how it goes! :)
I've previously ported over the underglow code from Luiz Ribeiro's personal fork of PS2AVRGB a few months ago, and recently just got backlighting working on the board (I'll still need to implement the "breathing" effect, but it should be really simple as the brightness control code is working).
It's in my fork of the repo in the