Beta 11 had a minor cock-up in that i’d missed off the 3v3 line. I’ve also taken the oportunity to shift things around a bit, re-align stuff and generally do a lot of really picky small stuff that generally makes me feel a bit better. Except that upside down C22 that i’ve just spotted, D’oh!
Also, I now introduce 2 more members of the Super LED Blinkenator 2000 family
This one, you’ve kind of met before. It’s a small ‘clamp’ PCB, but it now splits into two parts. One ‘spacer / shim’ sits in-between the Clampy larger bit, the other, is the clampy larger bit.
When installed, it’ll look a little something like this…..
Blue is the Next PCB. Red is the tiny thin break-off ‘spacer’. Black is the Blinkenator.
The Red ‘shim’ part stops the yellow clamping PCB from getting too close to the Blinkenator when the screws and nuts are tightened.
That combination of PCB’s, copper balls, nuts & bolts provides a robust electrical contact to J15 – Without needing to solder. Yes, it’s a little fiddly – I’ll make some instructions.
Another Member – The Programminator
Now i’ve switched over to a SMT atmega chip, it needs programming. I’ve bought some of the important signals out to a PCI EXpress connector to make for me, at Bleugh.Biz headquarters to quickly program the on-board arduino and test some basic features.
I thinkn REV 2 of this board could be useful for general tinkering also, so i’ll probably do a limited run to sell if people really want them. I’ll send out a handful of REV1 of this board to the BETA testers, IF BETA12 works.
And, finally – a quick overview of the new layout and routing. I’m now confident enough in the design to use a copper pour for a much more professional finish!
My previous choice of Micro was mainly driven by attempting economies of scale and using the same one for the C64 Mini keyboard kit as this. Also, a desire to allow people to ‘program up’ their own Blinkenator board – The Atmega32u4 is a bit of an overkill for a handful of LED’s though. Importantly also, prices of arduinos have risen quite a bit since Brexit . Changing to a chip saves easily 60% in hardware costs over the soldered on Arduino, it also saves a handful of minutes in soldering!
It does introduce a little more complexity – I now need to figure out how to ICSP – In Circuit Serial Programmin works as i’ll need to burn an Arduino bootloader to each one.
I’ll also need to develop (or modify) a Programmer to allow a more day-day use of the device over UART to USB
Next step, port the Blinkenator to the 328p, test, if it works, Order Beta11
Oh, the Ball clamps are working superbly, just gotta be careful of feature creep on that clampinator board now!
oh, probably will look at swapping the JST connector footprints to SMT – would be nice if I can have just the
Had to admit, the failure of the Beta 9 got to me a little bit. Took me a couple of days to take stock, stand back and think.
After much thinking, about life, being married, kids and generally having to work hard at a day job, remembering about that one time where that bloke ripped you off, Postulating how things can build up and get to you to the point where you just think that getting screwed and having your balls in a vice would be more preferable………..
You can come to yet another epiphany!….Screw it and put the Balls, in a vice.
I present to you……..The precursor to the release candidate for the production version….Err
D’oh!, Blinkenator Beta 9 board arrived. Powers up just fine and works ok too
BUT….I Can’t seem to get quite enough clamping force with the balls between the PCB’s to get a reliable I2c connection.
Surprisingly, as the power is closer to the edge of the connector, it powers up reliably, 100% of the time! the I2c is right at the centre where the most flex is, so makes the least contact……
If I really press hard, it works a treat.
Couple of possible options open now
1 – Something very stiff jammed inside and use the case itself to press against the board (I don’t like this)
2 – Some other, softer conductive metal thing
3 – yet another redesign (TM) – I have some ideas, but i’m concerned at the spring forces required to obtain a contact
4- give up on a ‘solderless’ design. – I’m trying hard to not alienate a bunch of people by requiring soldering, but at some point I may need to call it quits. With the new VAT rules kicking in, more parcels are being charged VAT and handling…prototyping has gone up by 25%!
Just a quick update to say I’m still working on it
Been a busy few weeks here at Bleugh.Biz industries, working ridiculous hours at my day job, keeping kids from murdering each other during the evenings……But, i’ve been getting some good tinkering time in.
Some very good progress has been made! – and this is the board that’ll hopefully, finally, once and forever physically fit perfectly
Some Notable changes
Balls! – A revised J15 connection method that’ll provide a simple and very robust connection method
Spacings – The holes for the LED inserts have been altered a little to allow easier assembly. It’s still mildly fiddly but easy enough.
Fixtures – The J15 are has now two horizontal slices cut into it – this provides a spring mechanism for the balls. it helps to PCB distortion locally without warping all of the board from Next PCB to inserts
Holes – The whole board is now held with press fit type connection. The two screws holding the Next PCB are removed and replaced with two new ones. this holds the Blinkenator board to the next PCB and the Next PCB to the case. The two holes for the screws have been changed to 5mm!
Positions – The JST style connectors have been re-located and changed from Right angle to Vertical. Now the board’s mounted above the next board there’s plenty of space underneath. The path from the Arduino USB connector is now also free so you can tuck a cable into the board permanently
LED’s – Moar Bling! Each insert location now has a LED colour on the main board. No real purpose other than to look great and provide the end users with some assurance that the board is powered up when they do their first tests with a USB cable outside of the Next
ESP-01 – CPU_RST has been changed to a JST style connector to make ease of fitting. This whole feature is still highly experimental and may not make it into final production (if it doesn’t work, there’d be no point!)
Inserts – There’s now a 0.56mm gap between the jumpers – to fit a 0.6mm wide PCB!. makes a nice snug fit. and easy also to work with – simply trial fit once when you receive your board, that’ll loosen them up. remove and re-fit into the Next
Jumpers – Lots of experimental jumpers! GPIO to arduino, TX/RX to arduino, DB+ integration enabling / passthrough…….and some secret sauce also
THICKNESS – The board’s back to a phat 1.6mm thick. this provides significant stability to the jumpers that hold the inserts in place. Much easier to repeatedly get them soldered straight when assembling
Components – The whole board’s been rationalised for component price – and where possible using @JLCPCB’s BASIC library – that saves quite some amount in production prices as non Basic items incurr an engineering fee per component. Previously 3/4 the components were Extended, now 3/4 are Basic!
Silkscreen – Tidied up and made a bit more slick……..
I’m sure there’s a few more changes i’ve missed, but that’s the important stuff.
Where from here……….IF this last board plugs in, fits well, i’ll be sending out to the key Dev team. I can then kick back, relax a little and start again playing with the software side of things, Both Next side and Arduino side!.
I’ll eventually also need to consider switching over the whole board to SMT, or as much as possible. I’m not that daunted by this as there’s quite a number of ways this can be achieved, including just putting the 32U4 straight on-board, or considering changing the micro type entirely. After all, the main reason i’m using a 32u4 is that it’s cheap, Arduino compatible, has USB built in. All those things give a great ‘dev board’ capability that people can use to simply plug in and tweak!
With a successful 2nd Kickstarter – The Spectrum Next will have between 8,000 and 9,000 users.
Lets Dream a little and imagine a Bright world where all the users have a Super LED Blinkenator 2000 installed….
9000 users = nearly 40,000 inserts to be made!.
lets say just 10% want the blinkenator, I still have to make nearly 1000 of the things.
I’ve been researching a little and identifying bottlenecks to SUCCESSFULLY produce and deliver my board in those quantities
There’s some scary numbers!
So, I’m now pressing forward with TWO designs. one design, the one you’re all familiar with, suitable for small time production in small batches here and there on my weekends, only ever endeavouring to sell maybe a 150 units ever
and the second, a ‘mass produced’ item that requires minimal ‘hands on’ time from me to deliver, but will require some significant outlay up front.
The pictures above are a first run result of my Design For Manufacture for the inserts….A different injection mould, possibly 2 parts, maybe 1 and using a flexible PCB!
some key notes……..
Advantage – no connector soldering needed on my part – currently I’m soldering 16 cheap ‘bridges’ to each main board. with this insert, someone will be soldering 8 SMT FPC style connectors
Advantage – it’s likely that this design will be easier to make ‘injection moulding’ manufacturable. the existing design is tricky, but not impossible
Advantage – FPC connectors are a bit more reliable and easier to use than my bridges for the end user
Advantage – FPC / flexible PCB ‘legs’ on the inserts will mean a little bit easier installation by the end user
Advantage – Uniformity of Light – This type of construction allows for a much thicker ‘top layer’ – which will diffuse the light far more. Also, more of the insert will be better lit up ‘from below’ rather than from the side that i’m currently doing.
Disadvantage – FPC connectors are more expensive
Disadvantage – Flexible PCB’s are more fragile
Disadvantage – Flexible PCB’s are more expensive than FR4 for small quantities, so prototyping ability is very limited. at The quantities I need though, there’s not that much difference
There’s more i’m sure, once the final numbers are ready, I can see if a kickstarter makes sense, it may not be financially viable if the whole thing needs to be sold at £80 each……
if I can get closer to that £50 mark, then who knows!
I’ve been updating the Dev group on facebook more regularly than here
Progress has been slow but constant!, the new Jumper method of getting the LED inserts to connect to the controller works well, if a little fiddly. I think there’s some changes I can make to allow for an easier installation experience.
A big milestone also – The BETA hardware is at such a point now that i’m happy to send it to the core Dev team for actual installation inside a Next….err, except they can’t have the bottoms on as the USB cable doesn’t fit, D’oh!, another re-design needed!
AND – software – My Arduino code’s finally quite stable – Also, from the Next side of things – the i2c code is great – it runs well at 14MHZ, allowing for some interesting sequences on 8 segments…..I’ll start uploading BASIC programs in the next month or two.
Also, a kind of fork in the road….
Throughout this project, I’ve had an end goal of maybe 5-10% of Next owners owning a Blinkenator. at 3000 Nexts, that’d be maybe 150-300 devices sold over a year or two, making my beer money fund quite happy
Things recently changed……and have made me realise that I’ll probably need to step up my game a little…..
Means that now, there’s over 8000 Nexts in the wild!.
Assuming the same targets, I’d now need to manufacture between 400 and 800 devices…
May not sound much – but at a top level, for just 800 units…….that means some big numbers…..
sourcing 3,200 Plastic inserts….
Sourcing 26,000 LED’s
and with big numbers comes Big Money….and long lead times.
IF someone landed me with an order for 800 Blinkenators tomorrow, at (say) 45 minutes per board, I’d need 600 hours to complete the order.
I have a day job that demands my attention for 160 hours a month. Wife and kids that demand me for a further 80 hours a month…then there’s the whole sleeping and eating thing..
It’d take me a year to be able to fulfil that order 😛
So, the fork in the road……….I may need to do my own Kickstarter!
I’m investigating larger scale manufacture – Full PCBA including through hole, better DFM and Plastic Injection moulding.
All that costs big up front ££…..hence the Kickstarter………is my 5-10% adoption figure massively optimistic. Is it woefully inadequate?
To have any chance at a successful Kickstarter, I need to turn this hobbyist , good quality (7/10, could do better) project into a slicker experience, a better presented finish and professionally produced, not at my dining room table package that would obtain a Crash Smash award, a solid 9.5/10 experience. I KNOW I’m capable of creating the hardware (i’ll learn the software). I’m genuinely uncertain at this time if I would be able to DELIVER that package.
Saying that, I know my limitations, I have a grasp of the fundamentals and i’m costed to the penny for small batches.
Extrapolating that upwards and figuring out where costs stand for different adoption rates is my focus now the BETA 1 boards are ready.
If 30% of Next owners buy this thing, that’s 1800 hours of ‘work’ to do. That’s a FULL TIME JOB!!
scary isn’t it. I have to create budgets that allow for an employee!!
I Purchased 10 controller boards with the SMT components ready assembled There’s a few small bugs……But, that’s what prototyping is for.
First major annoyance – I’d goofed and left VCC on the arduino as 3.3v in the schematic. so, the board wouldn’t power up inside a next. Quick fix is to short RAW – to the VCC pin on the Arduino
(RAW is a 5V OUTPUT when plugged into USB, or 5 and a bit Volts INPUT to power the Arduino)
This has the potential downside of back-powering the Next via USB via the 5V Line when it’s sitting inside a Next and someone uploads a sketch
Another change needed – The Arduino’s USB port fouls the case when fitted inside. With a USB cable in, the lower part of the keyboard inlay blocks the port. – it’s ‘just’ about bodgeable however if you really wedge it in there. But, not ideal So, i’ve tried with soldering the arduino ‘upside down’ on the wrong side of the board – that seems to work. The board’s mounted just far enough ‘up’ into the case that a USB cable can sit under it.
For the production version i’ll re-arrange the board completely
Another further change –
Removing the RAW pin entirely from the Arduino and shorting the Next 5V directly to the VCC pin on the Arduino
That’s about it for these pictures,
From top to bottom –
Original board – has a resistor bodged in and the RED led installed on the wrong side. Also has my ‘impossible to solder straight’ PCB fingers.
Third board – upside down mounted arduino with missing RAW pin
Second board – my ‘go to’ working one right now – also has the first run of my ‘quick fit’ connectors……i’ve done about 20 cycles of inserting now and they’re still working!
Due to my previous goof-up of having made the old LED insterts ‘backwards’, I designed new ones!
They’ve arrived and are all round much better
Slimmer – just 2.2mm wide
Here’s what they look like – the features are a bit too small for JLCPCB to handle on their mass production – their mill uses a 1mm bit – guidelines are minimum of 3mm between milled out slots
I’ve ordered 50 of these – should be plenty to fill up the 10 prototype control boards i’ve gotten made and leave a few over for experimentation / errors
There’s a small problem however with mousebites this small – each board takes a good five minutes or so of dremmeling to get ready!. I can do about 7 boards to a charge of my battery powered cutting tool….I’ve ordered 50 prototype PCB’s so that’s lots of minutes of work ahead! good thing we’ve a handful of N95 facemasks picked up from back in March just as the world went loopy!
Here they are in all their glory, powered up the RIGHT way round on a controller PCB.
I hand soldered all 4 of them using some new (expensive) solder paste,d 3 worked first time! the last one had two LED’s mis-aligned…Quite a good improvement!
Each insert so far on the prototype is taking easily 20 minutes from receipt of parts to working device. Each new controller PCB is taking over an hour of soldering and wire cutting for the quick contacts. That should come down quite a bit once i’ve figured out a process.
Yeah, spot the mistake 😛 Still, quite chuffed – these are powered up and working INSIDE the next! –
There’s no control YET – this is just a single routine that runs upon powerup in the Arduino….
And, just as a final superb moment – look at these results of a quick i2c Scan (there’s a lot of numbers due to using an HDMI monitor)….That 3rd Device at address 0x45 – That’s the Spectrum Next Super LED Blinkenator 2000 just waiting for a .DOT command to control it 🙂
to use some PCB grounding spring contacts to provide a quick fit connection didn’t really pan out – the contacts simply didn’t solder on easily, too difficult to align correctly and quite weak – I tore a few pads off trying to get them aligned and correctly ‘grippy’ on the insert.
multiply that by 16 each board – the first one took me about 2 hours to get to be in an ‘ok’ state – Not really acceptable for a mass production product – not that this’ll be mass production but I’d rather not spend half a day on each of these getting them ready for sale……..
The second slight issue – See the photo below
The PCB is laid out on top the next board in the position it’ll be installed in.
There’s a prize for someone that spots the goof-up
Have a further look at the PCB powered up………..
Yeah, I got the inserts ‘back to front’ – That’s the result of working on a bottom mount PCB from the bottom…….
There’s two ways I can fix this
Simply rotate each LED by 180 degrees on the PCB and install a bodge wire to swap the input and outputs around………
I can simply re-design the LED insert and improve upon it!
a few reasons to re-design,
The first 6 LED version still has a bit of point brightness – I fear that even with the SLA printed inserts it won’t be diffuse enough..
8 LED’s – This should spread out the light more, reducing the hotspots a bit
0.4mm Slimmer – this lowers the LED’s further into the case, allowing much more plastic to sit above. I’m hoping this will de-focus the light more
Reversed connections to match the reversed controller board!. reversed is the new non-reversed now 🙂
New insert PCB’s are on order and should be here in a couple of weeks, I’ve bitten the bullet and ordered FIFTY….Also a few hundred more LED’s and a large tube of solderpaste.
Doing these first 10 dev boards is going to be fun – 320 1.5mm LED’s to be hand soldered!
The Controller board fits inside the case almost perfectly
I’ve slightly offset the J15 connector on my PCB to the one on the next. This offset gives a lot of friction, but needs some long term testing – the standard header I installed on one of my boards seems to work well as a friction fit. BUT, i’m not convinced that 32 LED’s, each pulling 5-20mA, (depending on which datasheet I refer to) – or between 160-800mA total depending on how I end up setting the brightness…..800mA is a LOT to pull
I’ve purchased a new gadget – A Riden RD6006 Benchtop ‘power supply’ so once i’m set up, i’ll charaterise the LED’s and current draw to set the software limits appropriatley
I doubt i’ll take nearly an amp on this board 😛
One further small mistake on the dev board –
When originally designing this controller board, I was to use a 3.3v Arduino to make it compatible with the Next’s 3v3 i2c.
For a few reasons, I’ve changed to using a 5V arduino and putting on-board a level translator device – this gives a 5V buffered i2c output that anyone can easily plug into
I forgot to change the net names….The board still ‘thinks’ the Arduino is either powered from RAW (it’s ‘unregulated input’) or 3V3 VCC…
The RAW input drops a few volts through a voltage regulator on the arduino to give the arduino a nice regulated 5V.
The next output is 5V….it’s not enough to power the Arduino through the RAW pin…
Took me quite a while – and a bit of soldering hackery to figure that one out as the speccy picked the board up perfectly when patch wired in place..
USB powered, it works perfectly
in the Next it doesnt….
The fix – I think I can just short the RAW pin to the unconnected VCC pin on this first batch –
See that i2c device, found at address 0x45………..That’s the Blinkenlight 2000 PCB :-), alive and inside the Next!!!