To get the true Pi zero experience in your pocket, we are gonna need some buttons!!
so yeah i think i can see the light at the end of the tunnel!! I have learned a lot, developed a hatred for key matrices and tiny chips, but im sure i will get over it. I now need to spend a few hours following all the lines to see if i have any crossovers or such
so i was thinking of having a conventional keyboard layout, giving 70 keys to play with.
After much scouring the internet over the years, i found 40% keyboards and have become interested in the efficiency of being able to do pretty much everything with just 48 keys. This both reduces the complication on the PCB, and the size of the board too. The keyboard chip does keys in rows of 10, so i thought i would round things off to 50, and have 2 spare buttons to play with.
im thinking the default "planck" layout is pretty much where im going, but making it customisable will be good
So i finally got round to putting the click domes onto the board. The are a little wider than the tactile buttons i was using before, but then they are slightly shorter. I have been playing about with the layout on the board, and thought i might add in some GPIO pins each side of the screen just to make use of the extra space.
here is the latest progress, i did try cutting out the screen sides but i dont think i like it. as always DO NOT ORDER!! this is just for info
I had left this on the backburner for a while, mainly because of the cost of the buttons would mean that creating a prototype would be a bit on the expensive side, and errors might end up bankrupting me.
Another conversation on a totally unrelated project reminded me of 'snap dome' buttons, which i had all but forgotten about. Much research later, and im ordering thousands of tiny metal domes for just a relatively small handful of cash. This means that the cost has dropped from $0.70 per button, to $0.03, making it much less of a problem if things dont go to plan.
After looking back to the pocket C.H.I.P that inspired the project to begin with, you can of course see that they have used snap dome switches for the keyboard!! not an intentional copy, but it does look like im heading the same way as they were. I am thinking that the domes will need a better covering though. Maybe having a layer of silicone cubes over the domes will make them easier to press, whilst also taking some of the sting out of them.
As an extra bonus, the 5mm domes i have chosen should allow some better placement, and routing, and maybe even a smaller (cheaper) PCB too!!
to be continued.....
so i have been playing with the buttons, and the placement of them, and im sure i will come to regret this!!!
my biggest hurdle was trying to turn the 10x7 array that the TCA8418 can provide, and convert that into the 14x5 'standard' keyboard layout that most people use every day (one row of numbers, 3 rows of letters, and a row for crtl/alt/super etc)
I finally sussed it, chop to 10 in half and rotate each side 90 degrees in the opposite directions. Then placing the TCA8418 in the middle of it all and were getting there!!!!
A quick run of the autorouter shows me it will work better this way, i need to spread the buttons more ans other fun. get the feeling i am going to be sick of these buttons by the time i am done with this
So i have been pondering the screen. The 2.8 inches wont reallly cut it for photo editing or word processing, but its ok for quick bits of hacking, or basic coding.
if any of you have used the cheap resistive touch overlays that these small screens come with, you will know that they are not the greatest. inaccurate, unresponsive, pretty naff really.
so im going to make a decision, and negate the touch, removing the need for another conroller chip, and another driver.
maybe some mouse emulation on the cursor keys (nav switch) might be a good way round it...
After a bit of a chat with Wai Lun I am now aware of a few projects which use the TI chip TCA8418. For those of you who are unaware of this chip (as i was 24 hours ago!) it basically handles the 'keyboard' duties of a project, including scanning the rows/columns for keypresses, debouncing, and all the other things that can make keyboards hard to implement. As an extra bonus, the pi communicates with the device via i2c, meaning that up to 80 buttons can be added to the pi, using just 2 pins!! that is a mega plus!
I have added a little bit more to the board, namely the TCA8418 chip, battery socket, and the charge/protect module i have used in the past. nothing is linked, so again DO NOT ORDER THIS!!
So i want to try and keep the 2.8" screen (currently without touch) and try and keep the best keyboard experience.
The Keyboard i am currently using (model M of course) has 14 keys across most of its 5 rows, so a 14x5 matrix would only use 19 of my 22 free gpio pins (result)
the next problem is to see if 14 buttons will fit across the space beneath the screen. I fired up the eagles, and lo and behold, i could just about squeeze them in, JUST!!
clearly nothing is actually connected yet, there isnt even any board bounds on there, just a pi, tft, and 14 buttons. Looks like this could work....