So, work’s been getting interesting and I’m settling in much better. Working with new vendors parts has been an interesting experience; from growing up with Atmel products to eventually working from Atmel, all my embedded experience has come courtesy of the big company with the least interesting logo. That rings true even as I moved from AVR8 to AVR32 (sorry, UC3) to ARM during my two years abroad over in the land of Vikings. Now in just two months I’ve touched two other unspecified vendors’ chips, and I suppose the old “ARM is an ARM” mantra rings true. Partially, at least.
Two important differentiators I’ve noticed; the peripheral set, and the datasheets. Here’s where vendors can win and lose out against each other, as having poor/overcomplicated hardware modules, or a poorly written datasheet can cause severe hair loss to us lowly engineers. So far I’ve found some great peripheral features I really like (a watchdog that stops during single-step debugging and breakpoints, so you can debug properly? Ingenious!) but mostly I’ve discovered why Atmel remains ever-popular. Why other manufacturers think that device characteristics should be hidden and datasheets should be written as obtusely as possible, I’ll never know. Even technically poorer silicon is a better choice if the datasheet is the written the best, as at least the silicon issues would then be well-documented. That said, branching out a bit and becoming a bit more well-rounded is really exciting for me.
In the last two weeks I’ve received two new toys, one from my former boss/co-worker (who has, incidentally, just started his own blog) in the form of a pretty purple PCB:
The board is an adapter for Atmel’s new(er) “Xplained Pro” series of kits, breaking out the extension headers into an Arduino “shield” form-factor. Neat, now I can use Arduino stuff with my SAM D20 board I acquired before I left. Well, I will be able to as soon as it arrives along with all my other stuff that’s being shipped back from Norway later this month. Shipping internationally: it’s not a speedy process by any means.
The second arrived tonight, so I’ve only had time to open the box and plug it in. Introducing the new Atmel ICE:
It’s basically “just” a souped up JTAG-ICE3, i.e a high-speed programmer and debugger for all AVR8, AVR32UC3 parts, but also does Atmel ARM now via a second dedicated debug connector.
Inside the box:
Initial reaction: they forgot to paint it. Cool, a prototype!
Then I read the serial number, unit 1565. Hrmph. Seems they actually all come like this — it’s certainly a change from the previous glossy silver. Here’s the two headers side-by-side, the left for ARM and the right for AVR:
Hey, whatever works. High speed switching on a single connector would mean expensive parts, and I suppose people won’t need to switch them over too often.
Up until this point other than the color nothing was a surprise – I saw prototypes before I left back in December. But then I opened the box on the right with the cables. Inside was the same squid cable as the JTAG-ICE3 (boy how I miss the rainbow squid of the obsolete JTAG-ICE MK-II) but also a weird connector cable and, well, this thing:
Instant reaction (LIFX background lighting for emphasis):
Speechless. This is the first time I’ve had absolutely no idea which end is up on a debugger, and/or how to plug it all in without consulting the manual. I’m sure it works fine, but I think I’ll stick with the adapters from my old JTAG-ICE3 on the new debugger (for AVRs, anyway), as they are compatible. The new omni-adapter PCB looks like the result of shoving a handful of connectors into a particle accelerator, setting the dial to “medium-well done” and shipping the result. It’s probably workable, but certainly not what I would have expected to be lurking in the box.
That’s all for now, more on the usability of the thing once I’ve got some hardware around to debug…