[Cryptech Tech] USB interface

Peter Stuge peter at stuge.se
Wed Apr 15 17:15:19 UTC 2020


Peter Stuge wrote:
> I suggest:
> 
> 1. Move forward with SAMD11 replacing FTDI
> 2. Add CTS+RTS to the UART interface

I discovered that CTS+RTS are actually already connected to the USER FTDI
in the rev03 schematic, but not to the MGMT FTDI. So at least some of the
routing already exists!

Paul, do you know if the STM32 USER UART init code enables nCTS+nRTS use?

In a couple of days I'll check if wiring them to my SAMD11 daughterboard2
does anything.


> 3. If time and space on the board allows it, also connect SPI
> 
> Who does the hardware design changes? To support that effort I can
> contribute the required connections on the SAMD11 side.

SO14 has too few pins for both UART and SPI so it's either SO20 or QFN24.
Since the SO20 package is fairly large I guess it will be QFN24.

I/O  SO20 QFN24 Signal
PA04 20   3     SAMD11 UART TXD, to STM32 RX
PA05 1    4     SAMD11 UART RXD, to STM32 TX
PA08 4    7     SAMD11 UART RTS, to STM32 nCTS
PA09 5    8     SAMD11 UART CTS, to STM32 nRTS
PA15 7    12    SAMD11 SPI nCS, to STM32 NSS
PA16 8    13    SAMD11 SPI DO/MOSI, to STM32 MOSI
PA22 9    15    SAMD11 SPI SCK, to STM32 SCK
PA23 10   16    SAMD11 SPI DI/MISO, to STM32 MISO
PA28 11   18    SAMD11 nRESET * add 10k pull-up to 3V3 and 100nF to GND
PA30 12   19    SAMD11 SWCLK * add 1k pull-up to 3V3
PA31 13   20    SAMD11 SWDIO
PA24 14   21    SAMD11 USB D-
PA25 15   22    SAMD11 USB D+
GND  16   23
3V3  17   24    * add 100nF

Only nRESET, SWCLK and 3V3 need passives, all other signals can and should
be directly connected.

For SAMD11 programming and debugging the nRESET, SWCLK, SWDIO, GND and 3V3
signals need to be made available on a header.

Please reuse the pinout from the SWD header for the STM32, ie. J1 in the
rev03 schematic. The same programmer/debugger hardware can be used for
both STM32 and SAMD11.


//Peter


More information about the Tech mailing list