I had somewhat of a PETSCII induced fever over the past few weeks, one that needed Sating before I could practically start anything anew, or even continue anything existing……..
So, when I (eventually) re-make the C64Mini keyboard kit to be less soldery, more easierer and betterer, It may well have PETSCII on those keycaps, for all your milliputty smudgery into-ey goodness!
A500 Mini Prototype 2 is in the post, Every C64Mini keyboard kit and parts have been posted – I’m finally fully up to date!
There are only a couple of extremely tricky issues remaining now! they may need macros, and may not even be possible
Note with this firmware – It works perfectly with ENGLISH Language and UK Keyboard layout set in the firmware…
I hope to eventually be able to create more localised keymaps to change behaviour on boot so every language in the mini works well. IF there’s any pressing issues, please contact me, I should now be able to quickly and easily tweak a couple of keys for you.
Also, the Firmware will be part of the QMK Github soon, so you can download and tweak away yourselves!
To Upgrade your Keyboard, I’m finding QMK ToolBox to work brilliantly
Most older fimrwares out there will need to have B held down whilst shorting the reset jumper at the top of the keyboard inside , for whatever reason though t
I’ve found this a little flaky for whatever reason, sometimes mashing down every key whilst hitting reset does the trick
To make that more professional…….I now have configured the Bootmagic Lite.
To Update the firmware after this update, simply fire up QMK TOOLBOX, connect your keyboard to a Laptop. Hit ‘auto flash’, select the MCU (see picture above)…then Hold 1 and short the reset jumper inside the keyboard.
I’m still learning how configure all this, so bear with me, it’ll be slick just like those professional Mechanical Keyboards in no time*
*by ‘no tiime’ I mean potentially months and months as i’m tinkering in my limited spare time to add this extra functionality
Arduino leonardo’s can be a little tricky to flash hex files to – be persistant – there’s two Tools that help
QMK TOOLBOX – that shows the keyboard enumerating when you plug in
Set it to ‘auto flash’ and you can try pressing / holding b and space (it’s configured as a magickey in QMK) to get the bootoader to kick in and flash the chip
No PCB gerbers are public yet – play away! any suggestions, happy to look at incorporating them
I’ll follow in the future with more insight in how this lot works, and also modifications needed to get it going better… There’s a LOT to it as the Keycodes – https://sta.c64.org/cbm64pet.html
Don’t map to the HID codes used by USB…so, without some super customisation, certain combinations may never be possible
and a few other C64 USB firmware’s i’ve found – these may have the bits needed to be able to get mine working much better – But, merging things is currently beyond my skillset – I’ll figure it out eventually
And, this awesome public project! – If you want a ready made USB interface – This looks great. Has some quite complex QMK mapping that i’ve not been able to understand – maybe it can be modded for my PCB!.
My previous QMK on my small dev laptop worked great. However, moving the directories over to my new laptop (after the kids smashed the old one) – Not working so great
I was now stuck with a handful of ‘blank’ arduinos and no way to update the firmware code, nor any easy way to flash the .hex files to them
Long story short – a friend familiar with programming Arduinos found me this
C:\1leo\arduino-leonardo-uploader-master\windows>testu Upgrade procedure starting. Missing parameter or file, you should provide the full filename of an existing .hex file you want to use.
C:\1leo\arduino-leonardo-uploader-master\windows>testu C64_default.hex Upgrade procedure starting. Com Port for Arduino device is detected as COM7. Reset Arduino into bootloader Com Port for Arduino bootloader device is detected as COM6.
Starting AVR Downloader/UploaDEr…..
Connecting to programmer: . Found programmer: Id = “CATERIN”; type = S Software Version = 1.0; No Hardware Version given. Programmer supports auto addr increment. Programmer supports buffered memory access with buffersize=128 bytes.
Programmer supports the following devices: Device code: 0x44
avrdude: AVR device initialized and ready to accept instructions
I can actually program up arduinos for Mini keyboard kits!
The printer actually seems to be functioning
I’m back in Business
What’s next though
Figure out QMK, I’ve found a lovely chap who’s helping out a bit to compile my keyboard into the new version of QMK being used….then I can finally start doing some development again!
and, more importantly, get this C64Mini keyboard listed in QMK for you guys to be able to easily play with the firmware….
Having some fun with the printer this past few weeks. many, many fails
Lightly used, honest
Some possible lessons learned….
1 – Don’t mix Resin brands and pigments in untested combinations
I’d ordered a bunch of ‘expired’ Elegoo translucent green resin, going ridiculously cheap, (like 1/3rd the price it should be) it prints FANTASTICALLY…BUT
….I normally use Anycubic Clear, just because it’s what i started with, and it works.
Mixing in an old batch of C64 Brown with the new Elegoo didn’t really work. I had 6 failures in a row – which i’d assumed was the FEP or me doing something silly / bad levelling . The 7th failure punctured the FEP! At that point i’d realised what i’d done (mixing all the stuff together) so, ordered some new Clear resin. I got a perfect print straight away!
The thing you see above is me, changing the supports (finally) after having issues with the old base layer being too thick and seperating from the build plate. I’d gotten around this by using longer base exposures, but still, had more failures than I’d like.
Hopefully now i’ve new FEP, new resin, and spent a couple of hours doing the supports properly, I’ll get a fresh print tomorrow!
anyone good with QMK?
My next issue – as you can see above…QMK. I spent weeks learning how to, and setting up QMK on my old laptop, which the kids smashed.
QMK has moved on a little it seems as now there’s a dedicated QMK MSYS32 installation…BUT, it doesn’t compile my old keyboard layout. if there’s anyone good with QMK out there, give me a shout!. I’ve no doubt I can get things working again to work on the code a little, just pressed for time for the next month or two and, i’m getting the coding itch this past few days 😛
A quick pictorial ! on the process of creating keycaps.
Step 1, Recycle the IPA. Leave it standing for a few days, it settles, becomes clean! This is a month or two of settling. I now have about 4L left from my original 7.5L…not bad for nearly 10L of resin printed Step 2. Print and drain! Leave like this for maybe half an hour or so to drain off excess resin. Step 3. Scrape keyboard off the build plate Step 4. Throw keyboard into a small bag of IPAStep 5, throw bag in ultrasonic cleaner! BONUS step….put bottles of coloured resin in for a while to get them mixed wellStep 5a. Drain IPA off into settling container for recycling. Fill Ziplock bag with water and drain to bucket. Repeat again. One clear GPU can run under the tap!Step 6 – dry and separate the keys! Then leave overnight in a box to dry properly before curingStep 7 – ensure you agitate the vat well, scraping gently all the pigment off the bottom.Step 8 – sorting! – visual inspection of each set to grade them A or B. Also, within the same colour mix batch I’m able to potentially make one good set out of two bad ones!
I’ve missed out a few pictures, but this covers the basics. Using a timer, it’s around half hour all-up per keyboard. Sometimes a little more if a print fails!
A failure!
Tried to make a ‘GOLD’ keyboard but need to research a little on how to keep the particles suspended. This one failed due to too much gold. It all sunk to the bottom causing layers to become underexposed and ultimately sticking to the FEP
This was supposed to be clear!
Also tried to make a crystal clear keyboard…unfortunately I topped up the vat with a tiny bit of the gold mix from a poorly labelled bottle I use f or mixing (I didn’t write any label!) I’ll give these away with a kit to the first person that asks 🙂
F Keys!
Quite late into development, I’d realised that the F keys were supposed to be a different colour. So, I add two sets of F keys to kits. Some early ones went out without the extras. Happy to send some out if you shout.
Thankyou everyone for your support! Sold quite a few more kits with keycaps than expected so frantically printing away more!
If you’ve paid for a kit or just keycaps, they’re all packed and ready to go! Should take between 3 days and 3 weeks depending on where you are on the planet!
Doesn’t look much but that’s A good couple of days of Labour and a two solid working week’s worth of printing time!!
I’ll hopefully be getting more time to update on other things soon 🙂
Was just about to order another 4000 switches and take the hit…Decided to check the tracking number and FINALLY, after a month in Limbo, the switches have been released from Liege, the infamously slow sorting centre in Brussels.
SO, should be here next week and i can Finally get sending kits out!
Sorry again about the delays, I’ve now bought excessive stock so, should be able to turn around things quite quickly.
also built up a little stock of the keycaps which can be included in the kits at no additional postage cost
The letters are recessed into the keycaps and are very legible.
I’m working out postage costs as right now they’re still large letter in size here in the UK.
I probably won’t ship all of them them ‘on the supports’ as that doubles the weight
To fit them you just clip them onto your key switches
Example of a B Grade Set – note the blemishes on the F KeysAn example of an A Grade set – no obvious blemishes
Painting. I haven’t been able to find an effective way to do that my end. A few suggestions have come in, maybe White clay would work well finished with laquer.
Happy chappy this morning. They finished printing last night, my draining widget worked a treat – I’ll put a quick GIF up soon.
But, forgot about them until a mad panic at close to 1AM remembering I’d left them on the printer. With these, you can’t as the resin in the concave surfaces will part set in the morning and cause an uneven surface.
So, quickly washed them in IPA, regretted it immediately as it was dirty. Did another wash in IPA to clean the resin and straight to the hot water tap and larger bowl with a brush to clean off the bits. I’ll strain out the bowl later.
Final tweak needed now is the amount of grip to the switches themselves, shrinkage is variable at the moment, can’t go too small or keycaps may break when putting on, can’t go too big or they’ll be too wobbly and fall off.
May need to go middle ground and require a tiny blob of something sticky in each keycap, I’ll know soon enough!
Has some successes with varying mixes of pigments! Wifey demanded I do a bronze one.
Fine adjustments needed only now and it’ll be a wrap.
….problem is, fine adjustments’ll probably take another 80% of the total :-p
Now, gotta figure out how to get Arduinos quickly as 50 wrong ones just turned up and due to Chinese New Year my expedited (expensive) DHL delivery won’t leave for a couple of weeks, D’oh! Best laid plans….
Well, final furlong for the 3D printing part anyway! Next step, investigating colouring in
Oops! One of these is near, the other is far away!
Couple of successful prints! Rev 6 – just binging in stuff and hoping it works.
Rev 7 – more scientific and better CAD – all letters are now 0.2mm wider and deeper. This tiny tweak shows spectacularly well just how big a difference small changes can make.
Still some more CAD to do but soo close to final now!
Bottom row and space bar is Rev 7. Top 3 rows are Rev 6Closeup of the better definition.
And, finally, the print itself. I’ve learned that supports are critical here. Lots of them!
There’s actually as much material here in the supports as there is in the keycaps, but if you scrimp a little and try to reduce the amount, check out the top left of the picture below. I lost the return key and a few smaller keys were taken with it.
This was a calculated ‘risk’ by leaving this section to just have the standard auto generated supports, every other area had super dense supports.
There will be a middle ground, which I’m working on as I’d like to offer these cheaply…less resin used = cheaper to make!
Also, note the rest of the supports. THey are SO EASY to remove. When I offer these keycaps for sale, again to reduce cost, I’ll probably leave them as you see here. Makes for more robust packing and if you decide to paint them, you already have them held down on a convenient stand!
Added a blob – maybe 1-2ml worth off the end of a lollipop stick
Stirred that in with 150ml (well, about 150g by weight as that’s far easier, and it’s close enough) of Anycubic grey resin
And….
Very happy! Considering this is literally bunging stuff in and seeing what happened.
Still some way to go now to try the other clear resin and white resins, also tweaking the colours
Also have I some distortion issues on these keys but those are under control as there’s a very clear relationship between support structures and distortion/warping and underside finish!
If that prints, I can try adding black pigment to make it darker brown.
If it doesn’t, I can try using a CMYK mix of colours to make the correct Brown
Once I get that shade, I can try different resin bases to see what gives the best finish! Maybe clear + brown or white +CMYK will do the job!
I’ll be iterating the CAD model and the colouring at the same time!
Hopefully this new CAD model will fix the minor offset issues with the keyboard, shifting all the keys slightly to the right also allowing me to finally reveal a working test fit!
One small thing I picked up when test fitting my first attempt, I’d not perfectly centred the left shift key button and Return buttons on the PCB. It doesn’t matter in the grand scheme of things as hacking your own keycaps doesn’t need perfect alignment on the wider keys, only the 1 wide keys
Where it is annoying though is I can’t correct this error or any keycaps I make now won’t perfectly align on old keyboards! Heh, what’s 1/2mm between friends eh!
Most people would say this was caused by an over excited person, whom, upon waking early and discovering the complete print decided to not follow the correct drying / washing procedures in order to get it finished quickly!
I, err, disagree…
Either way, I now have a firm grasp of changes needed to the CAD model and also the supports needed in the slicer.
Those changes are fairly substantial, so I expect it’ll be a little while for my next update, happy to document them also if anyone’s interested.
Freshly dried and washedPerfect sizeA quick comparison
After quite some nervous trepidation, I finally shoved some resin into the printer and achieved my first ever resin print.
And, amazingly, some stuff worked! Significantly more than I’d expected to work actually.
I’ve been quite ‘scared’ of actually starting a print, I‘ve read too much about toxicity and fumes, which aren’t things you want with two young kids.
Well, I spent a couple of hours doing some final reading, and setting up on the dining room table. Levelled the bed, levelled it again. Shoved in the resin and…a Spectacular success for me!
I know the print failed mainly due to poor supports, some text is also too fine. Both were concerns with the cad and the slicer and easily fixed 🙂 there’s probably a dozen other issues I’ve not found yet also (it’s been 30 minutes since I wash and cured them fresh off the printer)
Next step, iterating, optimising . It could be done in a few weeks at print 3, it could be print 10 and take a few months , but now I’m over the first hurdle, onwards and upwards!!
It’s going to be a while yet, but I’ve finally fixed some long standing issues with the keyboard model i’ve been building in Fusion360
Doesn’t look like much!?
The main issue was a badly created model!. I’ve junked quite a lot and started back prior to when some odd dependencies crept in and really put some roadblocks on scaling things correctly and adding finishing touches.
But, it’s been worth it
That previous picture is the underside of the Keyboard – Those holes in the keys are 2.2 x 2.8 holes. it’s a first run at fitting the key switches into the keycaps. a lot more iteration needed to hollow it out a little and create some form of inbuilt snap-fit with stress relief, but…it’s a start!
The silver / grey keys over on the left are the ‘parent’ keys
If I make an update to the curves or size of a parent key – it rolls out to all the same sized keys in its row
if I need to iterate the hole size for the key switches, I simply change a few parameters for the hole size and it rolls out to all the keys in one go.
I’ve taken so long to develop it parametrically as it’ll now be so much quicker to iterate
Lots of parameters to change!
and, here’s a new render!……..going to spend the next few weeks iterating, and hopefully over Christmas , fire up the resin 3D printer for the first time!
A very talented Hans Liss from the Facebook group – TheC64 Mini has make a perfect assembled kit.
Drool over the photos below
Note the extras like the hacked up USB hub to make it slimline
The Extra UART connector that he’s added, and the nigh on perfect Keybaord keycap butchery!
Hans also helped by pointing out a few errors i’ve made with the original firmware sent out with the kits. I spent a couple of weeks figuring out how to fix it and have a new HEX file for those that want it.
There’s still some ‘not quite exactly commodore’ quirkery happening – which i’m working on, but i’ll bet that 99% of you won’t be able to figure it out. I’ve only found out due to Hans’s extensive knowledge of the C64 inner workings and also me, downloading the original user manual for the Commodore 64.
It’s been an intense and frustrating few months trying to figure out QMK in spare time here and there – today, something ‘clicked’ and…..I’ve made a new keymap.
Please email me – KEYBOARD AT BLEUGH DOT BIZ for a new HEX file. also happy to help you flashing the thing with the Arduino IDE (it’s quite easy!)
Why I developed a new keymap
A couple of users have reported that the key mapping is a little wrong when plugged into the mini.
By ‘key mapping’ it means, when you press a key, or combination of keys, you don’t get the character that’s shown on the keycap.
Most people will know this if they’ve ever used a US keyboard on a UK computer or vice versa, that Shift and 2 gets annoying after a while when you’re trying for the @ sign!
So, I’ve dun fixed those minor niggles that people observed….AND, i’ve gone and added quite a bit more!
Have been promising a long time to do this, so finally took a few hours to butcher another mini!
Some views are excellentAnother great view And the worst view
As you can see, for the most part, it’s pretty good, but NOT perfect
what I’ve discovered…..
2 part epoxy works best
Each keycap row is a different depth – the top one needs the least glue, row 3 the most
My errors here. I used a hard plastic glue from Bostick. it doesn’t grip well enough on the top of the keyswitches. I glued everything, waited a few hours, half the keycaps didn’t stick
glued the rest, waited, half again didnt’ stick…rinse and repeat about 6 times, adding more glue till finally they all stuck.
The 2 part epoxy stuck fast and hard! – but I used too much.
The repeated adding of more glue caused the multiple key levels you can see in the picture
Postage on most was actually slightly cheaper than last time! But the two heaviest ones were more, the largest one was quite a bit more than anticipated…so it all averaged out ok…
One repeat customer has a couple of freebies, only one assembled this time!
Also my first ever customer finally will have a spare kit and some stuff to practice with 🙂
Next small batch is coming as soon as the 20cm USB cables arrive.
If you want a kit without the short, tidy looking USB cables then shout and I’ll do a small discount 🙂
Correct orientation of the switchesCorrect orientation from the top. (Except the shift lock…oops! That’s why I put extra switches in :-p)
A funny story about multi sourcing components and the importance of testing before shipping!
I used a supplier on Aliexpress to purchase a few thousand switches in a few orders over a few months but their prices went up quite drastically after the last order (doubled!!) they weren’t the cheapest to start with but were reliable and friendly, worth the extra ££
I found another supplier who did a good deal for a full bag of 4000! Ordered them and waited, very quick delivery and friendly also (will buy again!)
I built my first test new keyboard with the new PCB and switches
It didn’t work. Well, actually, it did! Work perfectly…but in reverse :-p …..
If you mashed every key simultaneously then only released the key you want to press….it worked!! Yeah, the supplier sent me 4000 ‘inverted’ switches! My fault for not checking prior to ordering, they ‘look the same’ so ‘must be the same’ was a wrong assumption on my part! (At least they all weren’t the shift lock type!!)
It’s a VERY easy fix though (found after several panicked hours of testing and building Keyboards)…rotate the switch 180 degrees and it’s perfect!
In each kit I’ve included a small errata note and list of basic instructions to help. It’s an annoyance but for you guys it really just means the silk screen doesn’t quite match the switch orientation so just ask first. Look at the pictures and of any doubt, email/messenger/twitter/Reddit me 🙂