Apolgies for any delays and people waiting on keycaps….
I believe I may have reached the end of life of my original Photon Mono printer. for the past couple of months, i’ve been having more and more print failures, and have had no idea why. I’ve approached the problem analytically to figure out what’s wrong
Where it started –
I had a proper working file that ‘just worked’ – exposure about 35s for the first layers and about 1.8s per other layer
That started failing a bit. some keys were printing incomplete. I increased the exposure slightly and success again.
More fails, this time the first layers were coming off the build plate. I increased the exposure for the first 4 layers and success again.
had many minor creeps of fails, up to now where i’m at around 50s for the first layers exposure and 2.2s per layer.
I figured maybe the temperature in the conservatory is too low – Nope, iterating a bunch of exposures with the printer near the radiator in the living room also had nothing but failures.
So, after a good 15 fails in a row, many caused my me experimenting with extremes, i’ve given up with the photon mono. There’s many things it could be, but I’m thinking it’s feasible that the LCD has finally ‘failed’. I’ve easily gotten 1500 hours of actual print time on the thing – well over 1000 will be just the production keycaps at 6.5 hours each!
And a few other things….all of which are quite finickitey and throw a wobbly at the slightest provocation! – Linux is fun eh!..
I’ll eventually get around to step-by step documenting and linking each step to ensure a good build environment so that others can duplicate what I’m doing
Once it’s all compiled, I drag the .uf2 file over to the pico (after holding bootsel whilst plugging it in) the thing reboots and becomes a keyboard
Ensure the Keymap is correct
Finish the basic keyboard layout, testing all basic keys
Introduce shifted keys
introduce ‘layers’ to ensure special keys are correct
introduce fancy stuff
Where this is going……………..The RP2040 Chip is fairly priced against the 32u4. I’m hoping that I can eventually switch the C64mini keyboard over to a fully SMT ready assembled kit – just add keycaps. And, i’m hoping I can do that for the Amiga Mini!, as much as I love soldering 600+ points, I appreciate some of you out there don’t!
And, I’ve another TOP SECRET project on the go also…It’ll blow yer mind! but, in 2022 that one, it’s a long burn that ‘looks’ finished (i’m holding it in my hands now!, all 2 circuit boards and about 100 3D printed pieces) but, needs quite a bit of work behind the scenes.
Also, Blinkenator, slow going, but I’m really trying, it’s just hard getting over this hurdle where it must be soldered….one last thing to try!
And, final before I go to bed, the C64 mini running the keybaord upgrade kit with pi Pico transplanted brains!
It’s being captured via a HDMI capture dongle and OBS studio so I can use my laptop as a test monitor!
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
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!.
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
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!
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 😛
If you’ve paid for a kit or just keycaps or waiting on spare parts, it’s now posted.
Missed the Saturday run to the post office so sorry about that.
I’ve now a small amount of stock of keycaps and plenty of kits so I can relax a little and have fun printing other stuff for a change! Can you believe that I’ve run at least 6L of resin through the printer …JUST developing and then selling these keycaps, I’ve never printed anything else on it 🙂
A quick pictorial ! on the process of creating keycaps.
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!
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
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 🙂
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.
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
Arduino’s are still stuck in Limbo. I received 50 incorrect ones a long while back, ordered another 50 and they’ve been stuck somewhere in the UK for a couple of weeks now. I did order 10 locally at about 2x the price I normally pay to work through some of the waiting list, but that exhaused my supply of PCB’s
So, I ordered back at the beginning of February some more PCB’s
They arrived yesterday, and, I quickly soldered one up to test, so I can start ‘kitting up’ the keyboard kits.
I may have discovered an issue with the way that i’m Using EASYEDA, which has recently shown up in an EASYEDA update….it could be a bug, or a behaviour change, but, it’s B0rked my PCB!
This will set back the kit availability a couple of weeks whilst I address it and get new boards made. I know what the issue is, I can re-create it and have a work around to order more PCB’s so it’s no major worry
Here’s the C64 Keybaord matrix that i’m using. I’ve always used number prefixes for the number keys. i.e. if it’s A, I’ve used the PREFIX A, 1, Prefix 1, etc , etc.
Something changed in EASYEDA a couple of months ago which now means that Prefixes with a single digit number now all seem to tie their nets together.
Here’s the resulting PCB – Note, the nets for the centre pins are all the same!
I didn’t spot this in the one that I just had made! and despite the thoroughly heroic efforts of the JLCPCB staff to fix a couple of cockups i’d made , I have to now trash this batch .
Ah well, off to learn a little more about EASYEDA, quite an expensive mistake though, but this shows why, when you make changes, testing is important.
You can imagine how amused I was when I discovered that EVERY key worked on my board, except the number keys, which only typed 0 or 9 !
In other news – I purchased one of these
An Ultrasonic Cleaner – Dual Frequency 28KHz and 40KHz. I’ll do another post about it later.
All i can say now is WOW – No need for the wash and cure station now! – this thing superbly and consistently cleans the prints, giving a good surface finish. Prior to this, it was impossible to get a good finish on every key, every time. Now, i’m 4 prints in , and 3 are perfect, 1 is crap due to over-cleaning! I’m dialled in and ready for production
The mechanical, fitty holey type tolerance, not the other type of ‘oh, that’s annoying, but i’ll put up with it’ type….
Here’s the keyswitch fitting into the space bar. zoom in. we’re talking fractions of a millimeter fit, which I can achieve consistently and reliably! there’s about 0.1 mm available on the sides with the latches and about 0.2mm availavle on the longer sides. the extra really being there to allow some grace when placing the keycap on to fit it. less clearance means it’s a royal pain to get the switch located into the hole.
BUT, the keys don’t ‘latch’ into place on the switches. So, to try to address that (if it’s even possible) i’m now adding a small feature
This is the underside of one of the ‘F’ Keys. That small part in blue is a 0.1mm ridge sat about 0.8mm up from the bottom and 1mm from the top. I’m hoping that will be enough to latch the keys on, AND allow ease of fitting without breaking the keycaps. Everything else is done now, this is the only barrier to releasing. I’ll run off a print tomorrow to see how it works out. I’ll run off further prints with this sticking out even more if i need to
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
This’ll be a while away yet, but the REV4 PCB, has some new, experimental features that will possibly allow some extra functionality when used with stuff other than a C64 mini!
For the purposes of this kit though, the board is a little easier to solder due to slightly larger pads, I’ve also added silk screen ‘dots’ to the rear to show the only two pads you actually need to solder (or possibly one of the two if i’ve gone and goofed up the positioning! ).
I’ve removed the USB HELPER pads, these weren’t actually that useful
The other thing being added are pads that say ‘Joy’ – I’ve no idea if this will work, but my plan is to see if there’s any way to map the C64 Joystick onto the keyboard and then into a PC / MiSTer or other device with a USB socket. I’m putting these unpopulated pads on production boards as, now due to Brexit, it costs a fortune in customs fees and shipping for small orders of prototypes. I mayaswell order 50 boards which are tried and tested, with small mods on. If the mods don’t work, no loss – the boards still function just as sold.
If they work, AND i can develop the firmware, AND the software then it may add useful features for some people! But, my focus right now is getting the mini version perfect and not any extra features that require a lot of time for me to learn how to enable! If they’re ever enabled, i’ll probably spin them into a SMT only board so I can sell a ready assembled version for a little cheaper than the £60 i’m currently selling for
Also on this one, i’ve fixed the C64 header pin ordering to save people having to make an adaptor cable due to me swapping two columns and putting the rows in reverse!, D’oh!.
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!
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!
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!
I’ve now run out of some components for the C64 Mini keyboard kit. More have been ordered, I’m just waiting on a last few people to send over payment and i’ll pause things for a few weeks until parts arrive.
I’m hoping that the delay also will help some focus to drive the keycap development and a feature change to the PCB
I have to say Thankyou to Perrifractic for reaching out and increasing the profile of this little kit, and that the response has been unexpected. This is a little hobby that I have in my spare time between juggling the bill-paying day job and the wife and kids, it gives me the pocket money to buy more gizmos to help develop these gizmos.
I ordered most of the ‘long lead time’ parts last week, so i’d expect it to now be mid-late february before I can sell more full kits.