solokeys / solo-hw

Hardware sources for Solo 1
Creative Commons Attribution Share Alike 4.0 International
182 stars 34 forks source link

solo nfc hardware design files #3

Open NeoFromMatrix opened 5 years ago

NeoFromMatrix commented 5 years ago

I guess the design is not yet finalized and no one wants to release an unfinished buggy product. So I assume it will be available when production readiness and or certification is reached.

conorpp commented 5 years ago

the files are in master currently if you want to peak :) I'm planning to release once the first production is finished.

NeoFromMatrix commented 5 years ago

Nice :) I took a quick look at it and have following thoughts:

conorpp commented 5 years ago

Good advice! Certainly would be good to have second sources for the ESD protection and 3v3 LDO, and can potentially reduce the BOM cost some. STM32L4 and NFC IC don't have good replacements currently.

Yes, definitely planning to use touch with the STM on a future HW revision. The choice for using a button was initially just preference but it's clear now that touch would be superior.

I assume you disable bootloader mode in software after device is flashed over USB? (hopefully also with setting read out protection level 2, just curious seeing BOOT0 being hardwired to 3v3 -> automatically in boot loader mode)

Yup. I think it's best to force it in bootloader mode at first, then control how to boot it later via software.

Do you think you could implement the NFC antenna on the PCB? This would lower BOM cost, BOM part count and also another step in the assembly.

NFC antenna is currently implemented on bottom layer of PCB. It should be in the latest .brd files for A and C. It was tricky getting it all to fit in USB-C. I agree also it'd be better for NFC chip to be much closer to ST chip. I've measured the coupling on the SPI lines and VP_IO though and it's very minor as it is now.

Good idea with EEVblog. I've never posted there, but will make a note to share! Maybe I should send some Taps to Dave's mailbag :)

NeoFromMatrix commented 5 years ago

For microcontroller the only option is probably to take some from the same family (e.g. a mcu with more memory which will be expensive) For the nfc controller there seems to be no alternative (not even different temperature grades). Both are still risky because if the manufacturer cannot provide this chip it's also unlikely that they can provide a slightly different one (I assume different temp grades are coming from the manufacturing line and are just binned). Just as a general thought, should probably be fine to do it with only a single part and multiple distributors (check out octopart e.g. https://octopart.com/search?q=AS3956)

For the voltage regulator or ESD protection it should be possible to find pin compatible parts from a different manufacturer.

I've also seen someone on a conference talk using ~4-7cm long traces between a mcu and secure element IC to side-channel extract the information between both ICs as this can act as antenna. But I can't find the video (CCC, shmoocon? don't know any more). Also I don't know if this is a valid threat for the threat model. (if you can sniff this data you can also sniff nfc directly)

Just thinking openly, quite nice what you have achieved! :)

ccinelli commented 5 years ago

For microcontroller the only option is probably to take some from the same family (e.g. a mcu with more memory which will be expensive)

I was poking on https://www.st.com/en/microcontrollers-microprocessors/stm32l4x2.html The https://www.st.com/en/microcontrollers-microprocessors/stm32l432kb.html that the solo is using costs $2.18 .

There are other 6 devices in that family that are slightly more expensive but have twice the amount of RAM and FLASH.

I am not sure why the the solo key does not use one of these. I am pretty sure that people would pay $1-2 extra for one of those for having twice as much memory.