ATCA ssl invalid key error on MQTT connect

If you are asking a question, please follow this template:

  1. My goal is: I created a new AWS cloud instance with a new MQTT broker and I would like to connect a device that was on my old AWS cloud instance to the new cloud instance.

  2. My actions are: Build code and provision to the new AWS instance (mos aws-iot-setup etc). New IoT thing entry appears in the AWS thing management dashboard. Device connects to wifi and attempts to connect to MQTT.

  3. The result I see is: MQTT connect fails with an Error: invalid SSL key. I am using the atca crypto chip with ssl_key config set to ATCA0. The MQTT broker address is correct and the AWS instance provided a client cert as well.

  4. My expectation & question is: The device will connect to MQTT successfully using the ATCA crypto chip method (it does to our old AWS instance.) Is there anything I am missing about ATCA setup and configuration if I point a device that has already been provisioned and locked to one AWS instance onto another AWS instance (and MQTT broker)?

I’m not familiar with that error code, try to sniff the network and see who is rejecting whose key. Even though it is TLS, you should see a successful TCP connection and a failed TLS key exchange with a reason code.

Thanks once again for the suggestions. I resolved this by referencing the latest mos version and libs version in my mos.yml file. Something seemed to be out of synch (mos version vs. libs version perhaps). 2.19.1 for both cleared up the issue…