geekhack

geekhack Projects => Making Stuff Together! => Topic started by: Kageni on Thu, 04 March 2021, 16:25:35

Title: nRF52820 Keyboard
Post by: Kageni on Thu, 04 March 2021, 16:25:35
Is there a reason that you wouldn't be able to use a single nRF52820 module as the sole MCU for a 65% keyboard? There are enough I/O ports if you design a square matrix and it has native usb support. I haven't really seen many keyboards using it and I'm curious why. I'm designing a BT keyboard and it seems better to use this as solo mcu then use a atmega and then use a secondary bluetooth module.
Title: Re: nRF52820 Keyboard
Post by: Findecanor on Thu, 04 March 2021, 16:47:52
There should be support for nrf52 in ZMK (https://zmkfirmware.dev/).

The chips haven't been officially supported by TMK or QMK because Nordic Semicondutor's "Soft devices" have a license that isn't compatible with GPL v2 that TMK/QMK use. There have been inofficial forks of QMK though.
Title: Re: nRF52820 Keyboard
Post by: nevin on Fri, 05 March 2021, 08:07:52
applet has been working on one
https://geekhack.org/index.php?topic=109628.0
and check his github for code and notes
Title: Re: nRF52820 Keyboard
Post by: Applet on Fri, 05 March 2021, 08:52:10
I believe the nRF52820 has too little flash/ram to run ZMK. The most common MCU used for ZMK is the nRF52840 afaik.

Feel free to check out my project that nevin linked, schematic is in the releases. Revision B is still untested due to modules stuck in customs :D

Ebastler has started on a guide I'd recommend to check out: https://github.com/ebastler/zmk-designguide
Joric also has a very good Wiki for nRF stuff: https://github.com/joric/nrfmicro/wiki
Title: Re: nRF52820 Keyboard
Post by: nevin on Fri, 05 March 2021, 09:02:39
oops, my bad... didn't catch the number difference.
but glad you dropped in to clarify, thanks @Applet
Title: Re: nRF52820 Keyboard
Post by: Applet on Fri, 05 March 2021, 09:09:32
No worries  :D

It would be nice to be able to use the nRF52820 due to the package. The AQFN that the nRF52840 uses is a bit of a pain, but it does not matter much when using a module.

A popular module is the holyiot 18010 (it's the same I use and described in ebastlers guide), it has enough GPIOs for a 65% on the outer pins, so it will be easy to solder. One issue with it is that it does not support HV-mode, so you'll need a external voltage regulator.
Title: Re: nRF52820 Keyboard
Post by: Kageni on Fri, 05 March 2021, 15:14:33
Thanks for the responses! I wish I had read this before spending all day working on the routing for the nRF52820  :-[. Yeah I really liked the package of the nRF52840 but couldn't get it to work without a module without it being prohibitively expensive. I had passed on modules before because the ones I found on digikey all had green boards, which would ruin the blacked out aesthetic that I was going for. Looks like I will be starting back with a module.
Title: Re: nRF52820 Keyboard
Post by: nevin on Fri, 05 March 2021, 15:20:10
solder it all together then hit it with some spray paint! done.
Title: Re: nRF52820 Keyboard
Post by: Kageni on Fri, 05 March 2021, 15:57:37
My man XD Genius
Title: Re: nRF52820 Keyboard
Post by: nevin on Fri, 05 March 2021, 15:58:26
lol
Title: Re: nRF52820 Keyboard
Post by: hanya on Fri, 05 March 2021, 19:48:29
I believe the nRF52820 has too little flash/ram to run ZMK. The most common MCU used for ZMK is the nRF52840 afaik.
I analyzed hex file built for zmk_bfo9000 with nRF52840 and it contains 205KB data. So it should work with nRF52820 having 256KB flash.
But I have never tried.
Title: Re: nRF52820 Keyboard
Post by: Applet on Mon, 08 March 2021, 03:48:43
I believe the nRF52820 has too little flash/ram to run ZMK. The most common MCU used for ZMK is the nRF52840 afaik.
I analyzed hex file built for zmk_bfo9000 with nRF52840 and it contains 205KB data. So it should work with nRF52820 having 256KB flash.
But I have never tried.
Oh, that's interesting. I'd argue to keep a good margin of space for future proofing ofc, but it would be interesting to test out.