 Welcome to the show. It's time for another episode of JP's product pick of the week. I'm John Park here for Adafruit Industries and I'm excited about today's pick and I hope you will be too. So the first thing I want to do is actually send you to the website where you will find our product pick and if you head over there not only will you find the product of the week but you'll also find this here very video displayed down at the bottom of it. The reason I'm sending you there to that QR code or to that URL is so that you can take advantage of a big snorting 50% off discount on this week's product pick. So head on over there if you like but before I say anymore what I want to do is ask our own Lady Aida to tell us about this week's product pick so take it away Lady Aida. The KB2040. Yay it's a new RP2040 based board. It looks a lot like the itsy bitsy but it has a totally different pinout. This pinout is Pro Micro compatible and this is specifically because ever since we made the keyboard library support in Circuit Python and HID support for the RP2040 folks have been like I really want to use this for a keyboard build and like pretty much every keyboard kit we know of uses the Pro Micro as like the standard footprint and you would solder in a Pro Micro board but in this case you can solder in this board instead of a Pro Micro and you get a much much more powerful chip compared to like the at mega 32U4 which has 32K of flash and I think 2K of RAM, 2.5K of RAM. This has 256K of RAM so like 128 times as much and it has massive 8 megabytes of flash. You can use it as a file system or for storing code. It's still got a ton of pins available. It's got four analog pins and it's three volt logic as so it's compatible with you know almost every keyboard. There's also an onboard Neopixel. There's two buttons one for boot and reset because you'll use that to load code onto it. It's got a 500 milliamp 3.3 volt regulator. It's got the raw output and on the bottom of the board there's a jumper so if you want to drive a lot of Neopixels and there's an onboard fuse just like the Pro Micro for 500 milliamps or so. If you need a lot more current just shorten the jumper on the bottom of the board and that will connect the USB 5 volt directly to raw so you can get up to two amps from your USB power supply or USB port although one amp is kind of as much as I recommend. You can get two but you know one is usually recommended. There's a Type-C USB connection and then for the two little spots at the top of the board that are not used on the Pro Micro I brought out the D plus and D minus pins. This is a little non-standard but I figured there's people who want to maybe use a different USB cable or connector and it's usually hard to get to the data pins for USB so this is like an easy way to to get to them if you want to add a different you know panel mount USB connection and then let's see there's a little Neopixel on board. USB-C Stevin connector. Oh so the Stevin connector is interesting so you know if you go back there's a standard pin out which has you know starting with TX and RX which are digital IO so there's you know 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 so it's 10 on one side 11, 12, 13, 14, 15, 16, 17, 18 so there's 18 GPIO pins. The analog pins can be GPIO that your RX and TX pins are GPIO the SPI pins are GPIO but for some 65% keyboard kits or you know if you just need those sometimes are 5 by 15 layouts and then you know maybe you need more than 18 pins maybe you want 100 keyboard kit and so you need two more GPIOs so that Stemacutee port actually gives you two more GPIO pins without changing the footprint of the board so you get 20 total so if you need 5 by 15 you can get it and you don't have to desolder or rework anything just grab a Stemacutee cable plug it in and then use the yellow and blue wires as two more GPIO pins. As of this video there is not QMK support however there is a poor quest where people are working on QMK support and I'm almost positive that it'll it'll eventually get ported over until then you can use KMK or you can use circuit python we have really good key matrix scanning support like natively built in it does all your key scanning for you in the background and just give you key events presses and releases so you can just like skip all that part of your code and just go straight to the keyboard design that you want to do. Alright well I'm sold let's check it out I'm gonna pop this camera down here to my little mystery box where we will open up the product pick of the week and there it is ladies and gentlemen the KB2040 also known affectionately as the keyboard uh it comes with a couple of header pins there put the box away and let's talk about this yeah that's right that's the product pick of the week it's the KB2040 keyboard so this is like Lady Ada said a pro micro compatible board so here's a typical uh sort of clone pro micro that I have here so you'll see the same size same basic pin out like Lady Ada said we do have a couple of extra pins here for the data USB so that you can hook up a little wired panel mount for your USB depending on the keyboard build sometimes that's really helpful but otherwise this is the board you've been looking for if you've been wanting to do custom keyboard kits and for example here's one that I haven't built yet that I just got from key hive this is a key sort of a numpad or macro pad kit has this great dog stencil art there and there's the slot for what's usually slot for the pro micro but the KB2040 fits right on there and uh this is a typical sort of diode matrix based board a lot of these kits are so you solder in a bunch of diodes for the columns and rows and then you solder in the the keys of your choice this one you snap apart and use some some hardware in order to make a little sort of sandwiched case so uh let's we'll get to that I'll get to some demos in a second but first let's uh let's take a look at um well we've got our lovely keyboard's animation there with that cute little key cap nose clicking up and down which I love and if we head over to the webpage here you can see it's 50 off so today it's four dollars 48 cents which is terrific terrific price and if you scroll down in here you'll see that there's some info about the board there are some links here which will take you to here it says same sizes form factor as the pro micro which if you take a look at that that's this spark fun board right here pro micro which uses the atmel 32 u4 and that was really the chip that broke usb stuff wide open on on a small form factor microcontroller that ran arduino uh so this is sort of a next generation of that idea uh and if you click through to the main guide and some projects here you'll see here's the main guide including pinout information downloads if we take a look in uh the learn guides for projects this is one that avid did on again another kit this one's called the navi 10 which is like your little friend from zelda navi navi 10 macro pad and it's using the kb 2040 and k m k so k m k is a keyboard uh i don't know what to call it framework that sits on top of circuit python and it's quite straightforward to deal with the uh k m k side of things for stuff like mapping your keys as well as using some added functions like layers so as you build smaller and smaller keyboards you need more keys to do more things so this this notion of keys having multiple layers of meaning uh shows up and i'll i'll dive into an example of that in a second uh and here is some info on k m k on the github for k m k is the k m k firmware that i'm using and that ava put into that guide so from here you can find out what are your key uh key shortcuts or key key names that you can use uh as well as some of the little shortcuts for things like layers and mod tap and stuff like that so uh let's let's dive into some demos let me go to the overhead how about we'll use this one so i will pull into view here this is one kit that i've built oh we don't need that background there here we go uh so this is the navi 10 you can see here it's got the little diametrics uh on the back here i've got my kb 20 40 a lot of the time you will mount things in this orientation with with the guts uh pointed up towards the board that just happens to be how a lot of them are designed so the trickiest thing about this is having access still to your reset and boot buttons some some boards will bring that out i have one example i'll show you others you just need to use a set of tweezers or something to click those uh so this one here if you take a look at uh first of all let's take a look at functionality i've got it changing my key layers or my rather my cameras between a few presets in my broadcast software so that's dancing around uh and then these are acting as navigation so up down left right if you take a look in my uh code view here this is uh this is a simple example but the way this one works let me make sure you can see that there yeah there you go is this is the code.py file and uh this is the the main thing you'll care about here is this key mapping and that k and k link i showed will tell you what the keys are named for example to use numbers it's kc dot and then n and the number so i have four five six and one two and three here the uh missing because this is sort of a matrix with a missing piece is this xxx so nothing happens there uh there's no key there and then i have up down left and right listed on there uh if we take a look at a more interesting example i think this is one that i am excited about this is the gherkin uh so this is just the smallest of the smallest uh usable keyboards some people actually like to torture themselves and use tiny tiny tiny keyboards um if you take a look at that layout it's basically only alphabet keys and then in the center here we have a backspace and enter or rather a backspace a space enter and escape and the way that these layers work is we can actually i'm going to show you an example of this um hold down a key these four keys here i think i have set up so that when they're held they actually act as a layer function and now all of these other keys have new meaning it's kind of bonkers uh but the practical demo that i that i realized last night and then lady ate a texted me the the exact same idea which is this is now the world's ultimate wordle uh keyboard if you know the game wordle uh all we need is alphabetical so i won't type any answers in here because i don't want to ruin this is today's game uh but i'll show you that this is just uh working keyboard i can even try to press enter and it'll say that's not in the word list because that's not a not a word and i'll delete here and i won't spoil it by showing much else um if i take a look at the code for this one let me plug this one into my uh hub here and i'll unplug that other one real quick because the code dot pi is sitting on here close this and reopen uh so for this keyboard we have some sort of special functions in there you can name on whatever you want this one is called function one space function two backspace function three c function four v so in this layered uh extension kc l t means that keys can have two meanings or more i think in this case uh it's a letter one if it's being modified or it's the space if it's unmodified and so that's how i'm able to then access all these different layers so this is the sort of normal alphanumeric but if i'm holding down the layer one which is this space one i'm holding that down then we're going to access the second layer so just as an example you can see it in here on a type uh so i'm typing in regular qwerty stuff uh now if i hold that shift these become numbers which is wild and my brain doesn't work that way so not too practical for me but uh i thought it was fascinating to dive into how the layers work it's actually a couple instances where i found it to be kind of neat uh i think this this uh c layer and a is your tab so you you get keys very very close without looking down uh it brings everything really really close 30 percent or 30 keys a little tiny for me but there you have it um and if we want to take a look again at how this is wired up uh this is this gherkin keyboard i'll show you where that comes from if you're interested this was a i believe an open source project and let me just pull this little bottom plate this one's made all of pcb if our four materials so we have a key plate on top to hold the keys steady you have the pcb itself other side of the pcb which you can't see now has all of the diodes on it as well as the keys are then soldered through uh and then we have our i'm hitting buttons here then we have our kb2040 and there are actually ways on this one to mount it in either direction i believe um and then this is where i added a little surface mount reset button right there to this board because it had it had it in the design so just to give give a little look into where these things come from i'm gonna move this out of the way a little bit there we go let me jump over to this is the 40 club 40 percent dot club is where this gherkin design first showed up in 2016 30 key keyboards so you can go there and have a look and there are versions that have leds and led support and so on uh the shop where i got these pcb's is not sponsored or anything but they did a great job getting them to me quickly so thank you very much as key hive key hive dot xyz and from there i got that navi kit or navi 10 kit the gherkin kit there so not bad $25 and then the cost of your kb2040 to drive it and some keys key switches keycaps and this is the the one with the dogs on it that i haven't built yet the maypad and i'm a big fan of real number pads so i may build that i've got one one that i've built before and so really nice that we can use either the circuit python on its own with our keypad library you can use kmk which gives you a lot of this added functionality of things like layers and you can run arduino on it right now there's not as far as i know still qmk support but that that when it gets finished for the rp2040 chip which surely it will because it's one of the only readily available and very powerful modern chips then you should be able to use qmk on the kb2040 as well so let's see i think maybe that covers it let me have a look in the chat see if there's any questions hey anthony becaro trying to decide if she'd get it and davo desis brings up its half price during the stream so a good time to good time to do it for sure and let's see good everything hey this is our discord by the way if you didn't if you didn't know who i'm often talking to it's the discord over here gary z mike p c grover hello paul cutler uh you have enough projects going on but i love my macro pattern would love to build a keyboard someday yeah for sure uh 65 percent or 60 percent is is sort of something i'm i'm looking forward to so if anyone has good recommendations for a project a keyboard project that uses a pro micro sized board that i could use the kb2040 on and gets the 65 percent i'd love to know that would be really cool so i think that's going to do it once again i'll remind you head on over to our page for the rp2040 to get it for half off you can get up to 10 of them that's the limit and i think they're still in stock so head on over there pick up one or a few and get to building and like i said you don't have to do any particular kmk type of stuff with this you can use this also as just a pro micro sized rp2040 board and particularly with circuit python on and it's a it's a pretty sweet board with with a lot of gpio on 20 gpio if you include that stem of qt port and also by the way i believe with some keyboard builds with support for oleds you may be able to do uh support over i squared c using that stem of qt port so having a little screen or other uh gizmo on your keyboard build uh that's that's a way you could add sliders rotary encoders things like that very easily to it without doing any soldering all right i think that's going to do it then for us today uh so that's the product pick of the week this week there it is it's the kb2040 keyboard board let's watch this cool animation again all right so i've got to put this thing up on the board and i had a little capacitor and some wire i was going to use as a hanger i'm improvising hangers these days there we go capacitor not necessary thanks everyone so much for stopping by i'm john park for adafruit industries this has been jp's product pick of the week and i will see you soon bye bye