Hi @bobr
I've been looking into this too. The Oak returns the status as "Connected" whenever it has an open tcp connection to the Particle Cloud (i.e. pClient.connected()). However, this doesn't tell you whether the Oak has successfully authenticated or not.
If you have a USB serial adapter, you can turn on debugging messages by uncommenting the "#define DEBUG_SETUP" line in particle_globals.h and watching the serial port as your Oak boots up. You should see "Hanshake: completed" (sic) when the authentication handshake completes.
A successful bootup in config/safe mode (after the router ssid and password have been set so that it can connect to the internet) should look something like this:
tail 0
chksum 0xc0
load 0x3ffe8000, len 352, room 8
tail 8
chksum 0x82
csum 0x82
OakBoot v1 - N,BP,0
START
0
0
8
10
WIFI CONNECT
WIFI CONNECTED
PARTICLE CONNECT
AUTO CONNECT
START HANDSHAKE
SHAKE
4
BLRECV
40
SHAKE1
4
SHAKE2
BLSEND
256
0
SHAKE3
SHAKE4
BLRECV
SET KEY
SEND HELLO
GET HELLO RESPONSE
BLSEND
18
0
WAIT FOR SERVER HELLO
HRM1
BLRECV
HM1
0
Hanshake: completed
END HANDSHAKE
SEND EVENTS
BLSEND
50
0
BLSEND
50
0
SEND SUBS
BLSEND
18
0
BLSEND
18
0
SEND TIME REQ
BLSEND
18
0
LOOP
HRM1
BLRECV
HM1
13
END AUTO CONNECT
HRM1
BLRECV
HM1
13
HRM1
BLRECV
HM1
13
HRM1
BLRECV
HM1
13
HRM1
BLRECV
HM1
12
BLSEND
50
0
AP ONLINE
START AP
STARTED
GOTO LOOP
HRM1
BLRECV
HM1
13
HRM1
BLRECV
HM1
1
BLSEND
210
0
BLSEND
34
0
BLSEND
18
0
HRM1
BLRECV
HM1
13
The last seven lines repeat every 15 seconds as the Particle Cloud pings the Oak to see if it's still online and it responds. Note that I've commented out line 128 of OakSystem.ino (Serial.println("LOOP")) as it fills up the terminal almost immediately.