[Oshpark] HQ ProgKey - Universal Driver Programming Key

I also got my final revision 3.2 also launched now,

too bad I got made 120 boards here where the 10 pin header wont work and solder connection markings do not fit if want flash driver from bottom side
the pins are mirrored because I made an mistake looking in my program on drivers bottom which auto mirrors

Order in 2OZ for 0.8mm board thickness from Oshpark!

https://oshpark.com/shared_projects/o1pUPNqt

I got some that cant use the header as they were produced mirrored

applying solder paste one side
soldering pins to it and applying thermal glue for 2. side reflow

Both sides soldered, fine alignment of the pind with soldering iron carefully after that picture

USB and Firewire all over again. Can we agree on HQ or Lexel or find someway to make them work together?

as far as people stick to my driver pin layout they can use his universal key,
but need to arrange the jumper wires differently to his driver
,same with his driver and my key they would need for the 10 pin connector an adapter or solder the wires on the key differently

both those scenarios are not really good, best is to stick to one solution

We will have soon a BLF lantern going into production with my driver pinout and i already started to put it on my new designs, so best is to stick to it

5x3 is the full size and 3x2 the minimum size

I also got my final revision 3.2 also launched now on Oshpark

Order in 2OZ for 0.8mm board thickness from Oshpark!
OSH Park ~

the v3.1 boards i have here can be used but with some advise
I got made 120 boards where the 10 pin header wont work when used with 1:1 wire, 4 traces need to be swapped out
and solder connection markings do not fit

  • and R are swapped and Mosi and Sck

the pins are mirrored because I made an mistake looking in my program on drivers bottom which auto mirrors

https://oshpark.com/shared_projects/o1pUPNqt

I got some that cant use the header as they were produced mirrored

Production

applying solder paste one side
soldering pins to it and applying thermal glue for 2. side reflow

Both sides soldered, fine alignment of the pind with soldering iron carefully after that picture

final key with soldered wires not connector

I’d say we use both. Lexel’s approach is narrower and more foolproof, mine is more universal and allows for more freedom in the board design. And it’s not USB and Firewire, we’re plug-compatible, so we’re really not far apart.

Lexel had asked more or less the same in the BLF SRK thread, see my more detailled answer there.

Just to summon it up:

I can’t commit to a common standard because I will not use a single standard even on all of my own boards.

I tried different approaches and I saw that I want to keep the freedom to use the best programming pattern for each driver. That’s why I chose a flexible approach, and shared the progkey to use it. I simply share what I use myself. Anyone who wants to use it, can freely do so.

This 4+4 progkey allows for much creativity, it’s universal, small, dirt cheap and easy to build.

Those who use Lexel’s drivers can use his key. That’s perfect. And I really suggest they do, because that way it’s foolproof!

And the small handful of hardcore DIYers that really build my boards: for 4 bucks and change you get 3 progkey PCBs and 100 pogo pins and you’re good to go.

This is just a big mistake
If you want you can easily fit it, just need a bit more routing work

On 17mm it may be a problem, but if you can route its possible, even with a qfn with big ground pad

the aproach to place the Key always on top of 4 MCU pads is not good, get you too many restrictions on design you got to work around

you can always place the key in the middle of the MCU or even away from it

No, it’s not a big mistake. $4 and change, please, who cares. I wouldn’t commit to a standard for my boards either, I do as I please just as HarleyQuin.

I am not sure how this helps.

How about this, we agree on one design for commercial products. Having a bunch of different designs out in the wild is annoying.

I can understand that flashing drivers is not for the newbie, having limitless designs defeats the purpose of a programming key making flashing more accessible.

I don’t mind having multiple keys as long as I can do in-situ flashing. :+1:

It doesn’t help. Never intended to help. Lexel calls it a big mistake. It isn’t. That’s all I’m saying.

excactly this, who wants on different drivers of one designer like Harlekin, Mike C, DEL others and me to have 4 or 5 different keys in the box and even to have to arrange the key every time with different pinout connections on Harlekins “universal key”, because he wants to avoid using a bit time to route around a standard pattern when he does his drivers

the key is to use one uniform layout and pinout, change pinout on different drivers just to do less routing or component shifting if you do mostly use for youtrself is OK
but if you put those designs online and others make more or you also make them for sale makes no sense for pther people only you gained some time and feel comfortable re arranging pinout on your key

If i have any of my or BLF lights with the “standard” programming port I want to grab the key out of the box without thinking if the pinout fits or have to be changed, just plug and flash as simple as that

having more poeople make their universal key and on different drivers different pinout just kills the thing of one uniform programming port

I’m with you, Lexel. While I wouldn’t mind having a couple of ‘standards’ to cover the likelihood of some truly unique driver designs, I wouldn’t want to get into the confusing world of just not having any standards at all, and having to get a new programming key every time somebody makes a new driver board. I haven’t started flashing drivers yet myself, and when I do decide to start, I’d like to be able to buy one limited set of equipment and then get right to it. That’s how it was with the ATtiny13A chips, using the SOIC clip. Once it was figured out how to do it, lots of people were able to get on board. Since drivers are becoming more complex, and using different chips, the ‘Universal’ key could be a great help in keeping it simple for people.

And what about when somebody gets a driver board second hand (maybe already installed in a flashlight they bought), and has to try to figure out which ‘key’ was needed to re-program it? I know we’re in the early days of programming keys. Just like with any ‘new technology’ there will be competing ideas about the best way to make it work for the most people. Eventually, people will either end up standardizing themselves, or decide it isn’t worth the hassle. But, some of us would like it better if we could start the journey with trying to standardize, instead of just saying it doesn’t really matter, and letting it become a big mess.

Has anyone seen Del lately? Does anyone wonder why he left?

HQ has done nothing wrong here. He doesn’t have to share his stuff. He does everyone a nicety and gets crap for it in his own thread.

If you want to use one of his designs and don’t want to use his key you are free to use the standard programming clip. Pogo pins come in bags of 100 and boards are cheap, I don’t see the problem here. If it says HQ on the driver you use the key with HQ on it. How many people plan on building one of his boards anyway?

Texas Ace designed the drivers most popular here. If he updates them to use a programming key that key will become the standard. And that standard likely won’t last long. The ATtiny 85 is hindering firmware and driver development, its running out of memory and I/O pins. The next mcu will probably be a QFN package and the programming key will likely change again to make routing traces easier.

HQ’s universal design is great and will fit any driver with enough space for this feature. I don’t give a crap that it only cost’s $4 per alternative, let’s be open minded about a single standard. If you can’t fit HQ’s universal pads on your driver, try harder or leave the feature out. This goes for HQ too.

The great thing about through hole vias is that you don’t need any key at all, and they can be in any position on the driver.


I get it though, keys are probably fantastic if you have a large batch to flash or are in a real hurry. But I don’t, and I’m in no hurry.

I’m surprised others haven’t switched yet. I’ve been using the ATtiny 1634 QFN for a long time now, it did not take long to convert. It has better power options for low parasitic drain for E-switch lights and off time capabilities for clicky switch lights. And it’s cheaper than the 85 too, at least where I get them (Mouser, Europe). People where chatting about using the 1616 and 1617 quite some time ago, what happened?

I guess with prog key I also will slowly migrate to qfn20 MCUs


the customer for the 10.25mm driver wants to use a flexible PCB key that gets glued to a sort of 3D printed part following the shape of the prog pads(in this case a circle),
so he can arrange the viases on the driver as he likes and make custom keys in any form and pin orientation

Are there any eagle parts of pad/pin layouts available for any key design?

not using Eagle
I use Diptrace

but generally just activate snap to grid, then 1.3mm and other axis 1.5mm and place the vises/pads onto it

Clever :+1:

Thanks, I’ll make an eagle part next time I get some hobby computer time

I think, if I remember correctly, when I introduced parts of this idea a while ago, that I suggested putting the pins into a 3-D printed housing.

Based on the original suggestion by TK, that was implemented in the D4S

I was thinking square format, 1.27mm spacing. But anything else is possible with this approach.

Mike C seems to be pretty nifty with 3D printing …