Status update ...
Last week was kind of interesting ... i absolutely, thoroughly convinced myself that i had to swap the MOSFET and the push buttons -- move the MOSFET to the bottom and the buttons to the top. Theoretically, that would let me switch back to the 90 angle buttons, so they would peek out the back face of the cube.
Last week was busy with real-world work, so all i could do was think. and think. and think. So after a week of tossing and turning ideas every which way, i finally realized the buttons can't be in that position due to a physical layout of the cube -- just won't work.
But i did work out how to connect the plug to the pcb, so i'm now working on the next pcb iteration. i also found some bugs in the code and the algorithm is much tighter and "better" -- still fucks up randomly very occasionally.
Then, last night, i broke this unit -- the green LED was OFF!!! and i was starting to panic ... but i calmed down and worked through the possibilities. Power was getting from the battery to the vReg and the vReg was pumping out 4.5vdc to the circuit.
Then i noticed the trace to the LED was fractured. Fixed that, reassembled, plugging it in several times during reassembly to be sure it was working. Then loaded and plugged in for a celebratory toke, and the heater turned on by itself and i had to yank the plug.
Totally stumped why this would happen, i opened it up again, and finally saw a broken ground trace. The lack of ground convinced the MOSFET to output full power. Patched the trace.
Reassembled, testing several times until the last screw turn -- plug it in and no blue LED. WTF!?
Opened it up and found the blue LED had been scraped off the pcb during assembly. Fixed it.
Reassembled, testing several times until the last screw turn -- plug it in and MOSFET goes to full power. WTF?!
Opened it up and found the patch to the broken ground trace had tore up. Fixed it "better" this time.
Reassembled, testing several times until the last screw turn -- plug it in and everything was back to normal operation.
And, it's been working okay today (except for one software error during one run. wtf???)
BUT, i did learn a very valuable lesson as a result of all the extending testing of this unit -- the traces are too fine. So this new iteration will have much wider traces -- at least as wide as the geometery allows.
This actually feels like progress.