I'll check into it and let you know when I have some meaningful results.
I'm making a new board with a new chip.
Could you just confirm me whether the dot in "º6EAV" really means pin 1 in the ATECC508A?
yes, that is pin 1
Do I need any Pull Up resistors for SDA and SCL?
no, they are not necessary. internal pullups of ESP8266 are enough
I made a new board, with a new chip.
Can't tell what could be wrong anymore.
Maybe our supplier sent us the wrong chip, who knows.
Thanks anyway for everything Rojer!
ugh. do you have a scope? can you verify that ESP puts out clock and data signals?
perhaps you have other i2c devices you can attach and test? temperature sensor, eeprom - something. they should at least appear in scan results.
you can also try using different gpios for sda and scl - they are set in i2c.sda_gpio and i2c.scl_gpio
I tested with an Arduino as the Slave device, with positive results.
I guess I found out what went wrong.
My device is actually ATECC508A-SSHCZ-B. Page 9 of the Datasheet says its Interface Configuration is via Single Wire.
Does Mongoose OS support this model as well?
ah! yes, that must be it. no, sorry, we only support I2C at the moment.
It will probably take a while until we have the right chip, because of shipping delays.
So thanks a lot for all your help!
well, if you feel like it, you can implement 1-wire HAL for the chip. here is the one using I2C: mgos_atca.c. you only really need wake, send and receive functions.
Hey Rojer, sorry I didn't reply earlier.
Indeed I am going to implement a HAL, but we're using Freescale's iMX6 + Linux.
At the moment I'm studying CryptoAuthLib.
Which .c and .h files do Mongoose OS use to do the provisioning of the chip?
provisioning is done by the mos command line utility which is written in Go.
all ECC-related functionality are here and here.