WiFi.connect() are there any other parameters than WIFI_CONNECT_SKIP_LISTEN?

Hey @rickkas7 - I have tried to get this error code but I just seem to be receiving 0 see log below.

0000010140 [hal.wlan] INFO: Using external antenna
0000010164 [app] TRACE: 1 stored credentials giving 5000 mS timeout
0000010164 [app] TRACE: DIAG_ID_NETWORK_CONNECTION_ERROR_CODE = 0
0000010164 [app] TRACE: network.connection.error 0
0000010166 [hal.wlan] TRACE: connect cancel
0000010196 [hal.wlan] INFO: Bringing WiFi interface up with DHCP
0000010196 [hal.wlan] TRACE: connect cancel

The code I adapted from your example is as follows:

// based upon Rick Kas code
uint32_t getNetworkConnectionError()
{
	int32_t value;
	if (getSystemDiagValue(DIAG_ID_NETWORK_CONNECTION_ERROR_CODE, value))
	{
		Log.trace("DIAG_ID_NETWORK_CONNECTION_ERROR_CODE = %d", value);
	}
	else
	{
	    Log.trace("No NETWORK_CONNECTION_ERROR_CODE found");
	    value = 0;
	}
	return value;
}
// based upon Rick Kas code
bool getSystemDiagValue(uint16_t id, int32_t &value)
{
    union Data {
        struct __attribute__((packed)) {
            uint16_t idSize;
            uint16_t valueSize;
            uint16_t id;
            int32_t     value;
            size_t offset;
        } d;
        uint8_t b[10];
    };
    Data data;
    data.d.offset = data.d.value = 0;

    struct {
        static bool appender(void* appender, const uint8_t* data, size_t size) {
            Data *d = (Data *)appender;
            if ((d->d.offset + size) <= sizeof(Data::b)) {
                memcpy(&d->b[d->d.offset], data, size);
                d->d.offset += size;
            }
            return true;
        }
    } Callback;

    system_format_diag_data(&id, 1, 1, Callback.appender, &data, nullptr);

    //Log.trace("idSize=%u valueSize=%u id=%u value=%ld", data.d.idSize, data.d.valueSize, data.d.id, data.d.value);

    value = data.d.value;

    return (data.d.offset == sizeof(Data::b));
}

Any ideas why it is returning error code of 0?