@bearer You were right about the daemon.g ... I tried to call the macro from the config.g, or just run it straight from the config.g but neither worked, I think you're right that M552 is delayed.
I couldn't find a lot of documentation on daemon.g out there, but I made the daemon.g file in the /sys folder and called the macro "WIFICONNECT" from it. From my understanding the daemon.g file is running constantly in the background? Will this harm anything in the long run? Right now I suspect if there is a temporary "lag" or disconnect with the wifi it will automatically emit it's own wifi signal.. which would inconvenient.
Here's my daemon.g:
G4 S30
M98 P"WIFICONNECT"
Here's what I have working for the WIFICONNECT macro:
;Attempt to connect to wifi signal, if it fails, emit a wifi signal
G60
if (network.interfaces[0].state) = "changingMode" ; if unable to find/connect to network, emit network access point
M552 S-1 ; turn off wifi module
G4 S3 ; dwell 3 seconds
M552 S0 ; turn wifi module to idle
G4 S3 ; dwell 3 seconds
M552 S2 ; emit predefined access point
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet