Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/helium/ecc508
Library to communicate with the Microchip cryptoauthentication device
https://github.com/helium/ecc508
ecc608 erlang erlang-library i2c
Last synced: about 2 months ago
JSON representation
Library to communicate with the Microchip cryptoauthentication device
- Host: GitHub
- URL: https://github.com/helium/ecc508
- Owner: helium
- License: apache-2.0
- Created: 2019-07-07T20:51:57.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-07-11T14:00:57.000Z (over 1 year ago)
- Last Synced: 2024-04-14T17:00:27.264Z (9 months ago)
- Topics: ecc608, erlang, erlang-library, i2c
- Language: Erlang
- Homepage:
- Size: 697 KB
- Stars: 12
- Watchers: 22
- Forks: 13
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
ecc508
=====
Note: the ECC608A or ECC608B is compliant with HIP-19.
The other chips in this family: ATSHA204A · ATECC108A · ATECC508A are not compliant with HIP-19.An OTP library for communicating with the [Microchip
ATECC608A](http://ww1.microchip.com/downloads/en/DeviceDoc/20005927A.pdf)
family of crypto-authentication devices.Build
-----$ make
Use
---You will need an ECC608A attached to an I2C bus on a board that has
I2C enabled, and can run Erlang.For our most common use we wire up an ECC608A to a Raspberry Pi
configured for development and enable I2C using `raspi-config`.Also install the Erlang development tools:
$ sudo apt update
$ sudo apt install erlang-nox erlang-dev i2c-toolsOnce you've set up your Raspberry Pi and wired up the ECC608A you
should be able to see it using `i2cdetect`$ i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --This shows the ECC at address (hex) 60 on bus `i2c-1`.
For development purposes you can then clone this repository, and start
an Erlang shell to communicate with the ecc:$ git clone http://github.com/helium/ecc508
$ cd ecc508
$ ./rebar3 shell
$ {ok, Pid} = ecc508:start_link().Then check out the data-sheet linked above and the functions in the
eec508 module to see how to access the various functions of the
ECC608.