tinygo-org / drivers

TinyGo drivers for sensors, displays, wireless adaptors, and other devices that use I2C, SPI, GPIO, ADC, and UART interfaces.
https://tinygo.org
BSD 3-Clause "New" or "Revised" License
587 stars 182 forks source link

ateccx08: support for ATECCx08 family of cryptographic processors #511

Closed deadprogram closed 1 year ago

deadprogram commented 1 year ago

This PR is to provide at least minimal support for the ATECCx08 family of cryptographic processors to create random numbers.

See https://datasheet.octopart.com/ATSAMA5D27-WLSOM1-Microchip-datasheet-149595509.pdf

deadprogram commented 1 year ago

Now working to be able to generate random numbers. I have added an example that connects the standard Go crypto/rand package to use the ATECCx08 processor, works great on boards like the Arduino RP2040 Nano Connect, or Arduino Nano 33 IoT that have an onboard ATECC608.

deadprogram commented 1 year ago

After @waj334 made me aware of https://github.com/waj334/tinygo-cryptoauthlib I will close this PR in favor of putting the work into that repo instead.

ysoldak commented 1 year ago

Shall probably add that repo to Awesome TinyGo then, for better visibility https://github.com/tinygo-org/awesome-tinygo