Any ideas how to duplicate this example for the Arduino MKR1010 or 1500? They use a ATECC508 crypto chip so typical AWS communication is you give upload the public key (private key stays in the ATECC508) and then ASW provide the certificate:
// Fill in the hostname of your AWS IoT broker
#define SECRET_BROKER “xxxxxxxxxxxxxx.iot.xx-xxxx-x.amazonaws.com”
// Fill in the boards public certificate
const char SECRET_CERTIFICATE = R"(
But in the PointPerfect Example you need:
// → Credentials → Client Id
static const char MQTT_CLIENT_ID = “”;
// → Credentials → Amazon Root Certificate
static const char AWS_CERT_CA PROGMEM = R"EOF(
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
)EOF";
// → Credentials → Client Certificate
static const char AWS_CERT_CRT PROGMEM = R"KEY(
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
)KEY";
// Get this from Thingstream Portal
// → Credentials → Client Key
static const char AWS_CERT_PRIVATE PROGMEM = R"KEY(
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
)KEY";
The MQTT client ID is optional for AWS but can be utilized in the permissions.
Not sure how to do this with the MKR 1010/or 1500. ArduinoBearSSL seems to be set up for using the crypto while the ESP32 WiFiClientSecure follow the above credentialing. AWS seems to be able to work in both methods but not Thingstream.
Any ideas would be helpful.
Thanks
Bruce
Bruce