If you’ve ever played with MQTT, then you’ve probably had issues connecting to your broker. Whether it’s one you’ve setup or you’re using a 3rd party provider like AWS, they should all follow the MQTT protocol. This is mainly for my reference because I can never find it, but below is a list of the standard connack codes that could be returned when you try to connect.
Note these have been directly copied from the official specification. You can see the original by clicking here.
Table 3.1 – Connect Return code values
|Value||Return Code Response||Description|
|0||0x00 Connection Accepted||Connection accepted|
|1||0x01 Connection Refused, unacceptable protocol version||The Server does not support the level of the MQTT protocol requested by the Client|
|2||0x02 Connection Refused, identifier rejected||The Client identifier is correct UTF-8 but not allowed by the Server|
|3||0x03 Connection Refused, Server unavailable||The Network Connection has been made but the MQTT service is unavailable|
|4||0x04 Connection Refused, bad user name or password||The data in the user name or password is malformed|
|5||0x05 Connection Refused, not authorized||The Client is not authorized to connect|
|6-255||Reserved for future use|