I am also stuck trying to get this to work. Some research reveals that there may be a ca_certs parameter required to include Amazon's root CA. I've tried it like this but no luck:

while True: output.setText('Setting up mqtt') m5mqtt = M5mqtt('m5stick', 'a2zey9c7ts6fdf-ats.iot.us-west-2.amazonaws.com', 1883, '', '', 300, ssl = True, ssl_params = {'key': "/flash/res/priv.key", 'cert': "/flash/res/cert.pem", 'ca_certs': "/flash/res/ca.pem"}) m5mqtt.subscribe(str(''), fun__) output.setText('starting mqtt') m5mqtt.start() output.setText('publishing hello world') m5mqtt.publish(str('test'),str('hello world')) output.setText('sent hello world') wait(1) wait_ms(2)

Can anyone from m5stack confirm whether ca_certs is a supported ssl parameter?