BLF driver programming key v3.2 launched on Oshpark

I think he used three orientation pins is to prevent reverse connection.

making all programming pins viases blocks a bunch of area on small drivers likely make routing very hard if its packed with componets, with pads you are way more flexible, as they block that area only on one side
It is possible to remove one centering via where now 2 are, you can design the driver with just 2 centering viases
also tolerances play a big hole making it 6 viases, 6 pads are far more tolerant if pogo pins not aligned perfectly

0.91 is the solder Mask I cleared around the viases, fabs often fill the viases with solder mask if you have no clearance around them
also the fab has to produce from your gerbers there is no converting pitch 1.3mm to 50mil
also the 1.3mm was choosen so you can route a 6mil trace between the pads and pads and viases, if its 1.27mm you can not route it with the nessesary clerarance withoput making the pad and viases smaller

here an example

Agreed, no orientation pins required. This is not a tool for the un-initiated, placing it the right way is hardly rocket science.

The point of this is to facilitate ISP with the latest MCUs where external clips are not an option (no leads). Which was always a rickety arrangement, involving USBasps, headers, cables, clips etc.

Best if all pads are also vias, so self-locate.

Six pads/vias. No more. No extra “orientation” stuff, just obvious silk screen.

Frankly, this was all sorted out long ago, it’s not new, e.g. just google “pogo pin isp programming adapter” and follow the (unofficial) standard.

Then do it.

OK so pogo pins with a bit larger head, pitch 1.3mm
but the inofficial standard bases on 2.54mm pitch, then we make it larger again

Problem with this is often below the MCU is something that blocks it like spring pad or so
here a driver example

OK, I agree 0.1 inch spacing is quite large by modern standards.

But what is available at smaller pitch ? The smaller you go, the more esoteric the components become, and the method of assembling them. An FR-4 key is as basic as it comes, maybe a bunch of pins glued together with e.g. Sugru even worse. When I started this idea I suggested a 3D printed matrix to assemble things, I still think that’s the way to go for something reliable. But lets see where this goes.

Bottom line is that a standardised ISP connection on the accessible face of the driver is very desirable. If it can be connected with a click or a twist, even better. But a simple pressure contact with half a dozen pins on a standard pattern would be fine, even if only a couple are vias, for location.

this is why someone wrote me to use 2 traces so the pins self center themselfes while reflowing
with this method no worrying about it, just put solder paste and pins on the board and reflow it, perfectly aligned

on most of my smaller driver designs going with a 6 viases programming footprint wont work, because its literally packed by tons of traces on top, and also the spring pad and other stuff will limit it a lot where you can place the programming port

Problem with this is often below the MCU is something that blocks it like spring pad or so
here a driver example with 24mm size, not as small as a 17mm for example, I had no idea if its even possible to get the 6 viases on my 17mm or not

I thought about it why not make a 7 pin pattern which works for pads and viases, and modified it a bit

I have no experience with this so I can’t comment on the design, but being able to program the driver without having to remove anything is just awesome Lexel. :+1: :+1: :+1: :beer:

I second this comment.

OP updated with some modifications taking feedback into account

removed 1 orientation pin
and moved GND pad to one orientation via

pitch is 1.3mm I stick with it to get 6mil traces between the pads

Both options now possible
2 viases for alignment and 5 pads
or 6 viases

This is looking pretty good.

It might be possible to make the connector even smaller though, by moving that ground via into the old ground pad’s location. Or maybe it could be useful to re-add the ground pad, so the driver layout can use either the via or the pad (or both) depending on what fits easiest. Sometimes a really small board could end up using only one orientation pin, but that’s not necessarily a problem. Small boards would even have the option of omitting both guide vias if space or layout restraints are tight.

I found aligning it on 0.8mm pads with only one via would be hard, but yes generally you could say make at least 2 of the pads as viases so the key aligns to the other pads
I think some people are underestimating how small this thing is with only 1.3mm pitch

likely best would wotk get 2 of the outer connections as viases, which ones they are is less important, but I designed 2 pogo pins to be sticking out further on the key (- and 2. centering via)
the further their disteance is the less gets twisting an issue just notice if used only 6 connection pins the max distance is 2.6mm

also thinking about a key with a header for USBasp

Subscribed!

WOW!

:+1: :arrow_right:

It still looks clunky to me.

I say again, no need for extra alignment pins, just the six required for functionality. Make two of the pads (preferably spaced as far apart as possible) also vias, and it will self-align under pressure, all pins the same length.

Your key is far too wide at the bottom, no reason for this.

Yes it should have a header to accept the standard USBasp.

Take a look at e.g. https://www.tindie.com/products/madworm/tiny-avr-isp-pogo-pin-programming-adapter/

and

to see how a half size (1.27mm spacing) 1/4 the area thing looks. And buy one for $6.50

By the way, this is very very small, not something for the inexperienced to meddle with, or try to assemble without good skills.

As I’ve said before, this seems to be re-inventing the wheel, it’s all been done before, but maybe there is a better wheel to be made ?

Frankly for our purposes only four pins are needed, Vcc and Gnd can be supplied otherwise, e.g. with croc. clips.

clunky?
if we use the standard idiot proof USBASP header with 10 pin and the plastic casing there is no means how small the front of the adapter is
really noone wants to make a 10 to 6 adapter cable just to make the programming key 8mm thinner
lower end is 12mm and upper end 22mm right now, this is a lot smaller than my house door security key, no need to make it smaller than this

to give you an idea how small we already are look at the v1.1 size compared to my house key

as you self said the micro Key you can buy is too small for really safe flashing if you dont want to check if it sits right with maginification glass
there is really no need to make it smaller than an average Attiny MCU is just because it is possible with 0.33mm pogo pins heads on 0.5mm tube going to 0.7mm pin distance

we are not going to challenge how small it can be done, who cares if the pin distance is 1.27 or 1,3mm in real life on just 2x3 pin you wont see any difference with pogo pins anyways,
if you really want to buy the “standard 1.27mm” key you can fit it on my programming port with no problems

the additional Pogo pins are totally optional making placement and aligning of the key easier for people who can not solder 0402 or 0603 anymore because of age (Eyes or hands not allowing it anymore)

but you got to have some error margin in placing it on a driver
you ever destroyed a MCU because the SOIC clip or in this case a pogo pin key went off during flashing? No I dont want it as small as possible exactly to avoid this

and on complicated driver designs you are really happy if you can route a trace between things

so if you want to pay 10$ with shipping for a 1$ parts and 2$ labor costs adapter go for it noone is going to stop you bringing your drivers with this port on market

any chance you have a 0.8mm through hole model for Eagle? I would like to add this programming feature to the BLF ultimate lantern. The smallest through hole available is 1.6mm. Guessing the through holes are 0.4mm? I might be able to figure out how to mod the existing symbol but my CAD skills are weak at best.

Well if you find the key to wide you can always grind it down.
Or you buy at tindy. 50mil ist 1.27mm vs. Lexcels 1.3mm pin pitch.
Difference is 0.06mm with a row of 3 pins.

@lexcel
I would flip the silcscreen upside down on the right side in the picture.
To read the pin names when you use the key.

Also on the driver, you cant read the pins when the text is between the two pad rows

For the “manual” for the key I would advise people to clean the driver with isopropanol.
Maybe use a good contact spray?

I like the idea, but which drivers can we flash with it?

Lexel has said that as he moves forward with new driver designs, they will be made to work with this programming key. Also, anyone who wants to may create compatible drivers.

Mostly, I just want this to be a thing… like, yesterday. And I hope we can get someone to manufacture keys and sell a flashing kit. It looks like a huge upgrade to how we’ve been doing things, and it could enable the use of smaller and fancier MCUs.