When I wrote about my Nine keyboard, I mentioned that I would write about the process of designing a case for it in a second part. I have had some time over the holidays to clean up the KiCad files and write a build guide, and I have now published both the repository for the keyboard and case and the firmware, as well as building up the case. I’m really happy with the way it all turned out!
When I last wrote, I was waiting for the 3D printed resin case I had designed to be delivered. That turned up sooner than I had expected (just before Christmas, amazingly), so I was able to put it all together as an early Christmas present to myself. As I mentioned, I also ordered the case from PCBWay, but paid for it myself. I also mentioned that the engineers had warned me about thin walls in my design in a couple of spots, and that it might cause cracks or other damage, so I was fully expecting there to be problems with the case and unwrapped it holding my breath. I needn’t have worried: they did an amazing job. Everything looked perfect, and much more solid than I had feared. The transparent resin in particular is stunning, and looks like high quality, thick perspex.
I took the switches out of the keyboard, fitted them into the switch plate that is part of the top half of the case, and reassembled everything. I had deliberately made the void inside the base larger than strictly needed to accommodate the height of the battery and the hotswap sockets, because I wanted to insert a sheet of cork to dampen the sound of the switches a bit and make it feel more solid. This worked well, and I was able to cut pieces to fit exactly by using one of my spare PCBs as a template. Once everything was re-assembled, I couldn’t believe how well it all fitted together. I had do a bit of imprecise measuring and guesswork to work out where to put the cut-outs for the reset switch, power switch and USB, but they line up well. Everything fits nice and flush, and while I was careful not to over tighten any of the screws for fear of cracking the resin, it all feels solid and — well — like a real keyboard! It is solid and stable, and much better protected against forces of nature like an enthusiastic cat.
There are a few things I might tweak in future, which I’ll come to in a moment, but as my first non-trivial 3D printed design, I couldn’t be more delighted with it. It was by far the hardest part of the whole process, though. I really wanted to use FreeCAD to design it, as it is Open Source like KiCad and would enable others to build on my work more easily if they wanted to. I must have spent the equivalent of days over evenings and weekends trying to build a case with it. I would get so far, but then come up against ‘computer says no’ moments and get errors. It is clearly a very powerful and capable bit of software, but I found it too difficult to build the case around my existing basic 3D model of the PCB, using that as a reference. I think if I had had a simpler shape like a rectangle, I might have made better progress, but in the end I just gave up.
I have a license for Shapr3D, and turned to that instead. It isn’t a parametric modeller, and it doesn’t have the full history recording like FreeCAD, but in only a couple of hours I had produced a base fitted to the model of the PCB. It is very intuitive to use, which is definitely what I needed! The top part of the case was a bit more complex as I had to model the cut-outs for each switch and make sure that there was enough clearance between the keycaps and so on and the surrounding walls. When zoomed in, I kept forgetting how small the keyboard is and thinking that there was lots of space, only to measure it and realise it was 0.25 mm!
My original plan had been to create a box over the displays and controllers to protect them, so that they would be almost fully enclosed. However, I realised that there was a very tight gap between the side of the controller and the keycaps of the neighbouring switches, and also the corner of the outer thumb key and the corner of the display on the right. Since getting this wrong would mean that the top would not fit at all and be unusable, I decided to play it safe and leave the displays uncovered. They (and the controllers) are still protected on all sides by the walls of the case and the keys, so I am happy with the compromise. Now that I have the physical thing in my hands, I am more confident that I could make some small changes to the top case so that the displays could be covered, although changing the placement of components on the PCB would make this a much easier task. I’m going to think about it for a while before I make a decision.
There are one or two other things I would tweak if making a second version of this design.
- The walls around the sides and back come up slightly higher than the top of the keycaps. It doesn’t cause any practical problems, but aesthetically it would look sharper if they were a millimetre or two lower.
- I might chamfer the cutout around the power switch a bit more. I can access the switch with my nail without any issues, but it could be more ergonomic. This was another scale problem: the chamfer looked huge in the software!
- I cut grooves into the perimeter of the base with the idea of pressing Sugru (silicon rubber glue) into them as grippy strips instead of using rubber bumpon feet. I did this, but they don’t really provide enough grip as they are too thin, and getting the Sugru at just the right level is hard. It would make more sense to create circular cutouts instead for common sizes of bumpons, recessing them so that they do not add too much extra height. It doesn’t cause any problems for my use of the keyboard as I use a keyboard mat and the keyboard doesn’t move around at all on that. If I was using it on a bare desk, about 6 small rubber feet per half would be a good idea.
As I am sure is clear by now, this has been a really fun project, and I am already thinking about my next one and how I can improve it further. Since this is a very niche keyboard, I doubt that many people will try building it, but I’m happy that I have made the designs public anyway in case anyone finds it useful. Needless to say, if you do have a go, I would love to see photos of your completed keyboard and/or case!