Last time I checked, the DFU bootloader and GUI-based FLIP loader program were both closed source!
Sure, the website says "Open Hardware and Open Software Development Platform", but what does that really mean? Can you find the bootloader source?
Well, damn; hadn't noticed that. Guess I don't have any options for the AT90USB then, and I'm stuck with my crappy bit-banging shield. That's really a pity.
They do have Gerber/CAD files available, so that's a start:
If you need larger quantities you can always manufacture your own. AVRopendous
is an Open Hardware design so all files are available for Open Source KiCAD
(schematic/layout/gerbers/BOM/solder paste stencil). For the adventurous,
there is a simplified Quasi-Single-Layer version which can be built without
needing to drill any holes and etching only one copper layer.
So that's one step up. And hmm, okay, the magic AVROpendous bootloader source isn't available for... oh, wait, again from the LUFA guy's blog:
By contrast, the AVROpendous uses either the stock Atmel bootloader, or the LUFA (formerly MyUSB) DFU/CDC class bootloaders. The LUFA bootloaders are much bigger - 4KB a piece - however may be jumped to from the user application (with the processor in any state) and use the LUFA library as a backend, rather than a smaller set of custom USB code.
So there isn't a magic AVROpendous bootloader source to be had at all, and evidently it's possible to use the LUFA bootloaders, which are (I believe) open-source, which does indeed leave the problem of the FLIP programmer, which I'm not happy about. That's a good point, because I do want my (five or so) end users to be able to reprogram it with a minimum of fuss, which is why I chose the Arduino instead of the AT90USBKey (which at the time was the only AT90USB board I knew of). So now I not only have a spare AT90USBKey, but an incoming AVROpendous that I probably won't do much with.
Although in the end I would still rate AVROpendous as more open, because if a bus came by tomorrow and wiped out the entire AVROpendous team, we could recreate everything they have available based on the source from their website; I'd still be reliant on the FLIP tool from Atmel, but then I'm already reliant on the AT90USB chip from Atmel. I suppose a magic bus could come along tomorrow and wipe out all Atmel employees, but that's unlikely.
If you get hit by a bus tomorrow, Teensy dies, because HalfKay is gone forever. Sure, it's probably FLIPable without HalfKay, but we're right back to where we started.
Crappy USB-bitbanging shield it is then. Pity, because a Teensy would reduce the hardware to three parts: the teensy, a MAX233, and a DB9 male plug. That'd be nice.
Paul, I know this probably seems like frustrating and bizarre behaviour to you, and I appreciate that. You have made the decision that the assembler source for about 512 bytes of bootloader--which incidentally is a heck of an achievement that you should be congratulated for; I sure couldn't do it--is more important than a few lost sales from crazy hobbyists.
And I respect that, I really do; I probably come across as a bit off my rocker here, but I really do think the Teensy is a feat of engineering and design, which, regrettably, I don't feel I can use. But you also chose to name your device close to something which
is 100% open, from everything I can see, and you have to expect some backlash from that. In fact, that's the only part I can imagine anyone being upset about, because a new hobbyist tool of any sort is to be praised.
But why is there an Arduino name to leverage? Sure, there's ease of use, but the free-as-in-beer tools from Atmel aren't that bad. Why has this one particular design exploded in popularity? The openness really does mean something. To rather a few people. Yes, obviously the core Arduino folks are "losing sales" to all the Arduino clones--but the size of the market is so much larger because of the openness that I imagine it's done them more favors than not.
Offer still stands: if it becomes completely open, I'll order one immediately and post the order number here as proof. You can even provide a less-efficient-but-open bootloader than HalfKay if you'd rather. And no hard feelings if you don't--my bit-banging shield does the USB job just fine (nothing fancy; it's just the rancidbacon shield from above). Either way, the world will keep turning, and eventually an open solution will appear from somewhere, like the earlier-mentioned one on this thread. Or not. But it'd be nice if it did.
I don't want this to be a flamewar in any way. And I don't even want to try and convince you to open up HalfKay because it'll give you a warm feeling inside (although it might) or because it sounds like a good piece of engineering that should be shared with the coding world because it will inspire future programmers (although it probably would). I personally think it's in slightly poor taste to name a closed product in the style of an open one, but that's personal preference on my part.
But I do want to get across the idea to you as a businessman (and other businessmen who read this thread) that at least in the world of hobbyist electronics, there really are people (probably a fair amount) who make purchasing decisions based on licensing, and that the decision to keep part of your product proprietary, while a perfectly legitimate decision (and you may have plenty of reasons for it), is costing you some customers.