Close

Chip choice for next gen

A project log for Orthrus

SD card secure RAID USB storage

nick-sayerNick Sayer 05/21/2017 at 01:131 Comment

I had a very nice chat just now with a very nice guy from Microchip (he used to work for Atmel before the acquisition). I didn't ask permission to use his name, so I won't mention it, but he was quite helpful. I went over my requirements for the next-gen Orthrus and he recommended the ATSAM4E16E. I haven't looked myself yet at the datasheet, but he said it has high speed USB, hardware AES (with 256 bit keys) and 4 bit SD support, which is exactly the feature set I need.

Since it requires me to get a whole new toolchain for 32 bit micros, I'm not really beholden to AVR over ARM or PIC (I believe this one is an ARM cortex M4), and (again, I haven't verified it - I'm typing this from Maker Faire) these come in QFN packages as opposed to BGA (I'm familiar with the former as opposed to the latter).

So I think that's definitely a direction to go in.

Discussions

zakqwy wrote 05/21/2017 at 03:46 point

That's awesome you got to chat with folks in an Atmel booth at Maker Faire. I remember speaking with a few of them at the NY event and they provided a wealth of experience and knowledge.

In my limited experience recently changing focus from ATtiny chips to STM32s (in my case, the cheapest of L0s), I've found the libopencm3 project to be a fantastic (and fully open-source) gateway into the ARM world. I believe the library supports at least some of the SAM series from Atmel, but I haven't ever used those chips so I can't comment on how much libopencm3 really makes getting started a possibility. I don't know what the equivalent to stlink (the STM32 flashing tool I use) would be -- maybe OpenOCD? 

A quick look at the crypto section of the STM32F4 reference manual suggests you'd need an STM32F415xx/417xx or 43xxx to use the CRYP peripheral, but those ones do seem to support AES-256 (ch 23 intro). The whole line appears to do SDIO 4-bit mode (ch 31 intro) and HS USB (ch 35 intro). The libopencm3-examples repository includes crypto sample code for the STM32F417, but it's hard to say how useful that would be. You'll probably need to dive pretty deep into the reference manual to use all of those peripherals effectively. I tend to stick to the simple stuff, like timers and GPIO flipping.

The STM32F417VET6 might do the trick. 100LQFP, $10ish/qty 1 on Digi-Key.

If you go the STM32F4 route, I suggest picking up an STM32F4Discovery board (either the early F407 or the later F429 designs) and getting it up and running with libopencm3. They are cheap and quite powerful dev boards, and you can play around with everything but the crypto bits without spinning your own PCB.

  Are you sure? yes | no