9. You set up the basics.
WiFi ShieldComputer WiFi Router
Arduino
WiFi
driver
Server
object
10. You request to connect to the network.
WiFi ShieldComputer WiFi Router
Arduino
WiFi
driver
Request to connect
Server
object
11. If you’re lucky, you connect successfully.
WiFi ShieldComputer WiFi Router
Arduino
WiFi
driverConnection successful
Request to connect
Server
object
12. You start your server.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Start TCP server
listening on
socket/port
13. Now it’s listening on a particular port.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
16. After setup, everything happens in an event loop.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
17. At the beginning of the loop, a client object is created
using the server’s port & socket.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
Client
object
18. The client asks the WiFi shield whether it’s active or not.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
Client
object
What's my state?
19. If there haven’t been any requests, the client stays inactive.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
Client
object
Inactive
The event loop ends and re-starts.
20. If there haven’t been any requests, the client stays inactive.
!
!
The event loop ends and re-starts.
!
I think the client is deleted, but I’m not sure how.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
21. If a request has been made, the client activates.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
Client
object
Client
object
Connected!
Request!
22. Your code asks the client object for whatever data it’s receiving
from your computer.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
Client
object
Client
object
Connected!
Request!
Data?
23. If there is data, it reads it and processes it.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
Client
object
Client
object
Read data
Request!
Read data
24. (This is when your Arduino actually does something)
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
Client
object
Client
object
Read data
Request!
Read data
25. Then the event loop ends and the client is deleted.
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
26. !
Then the event loop ends and the client is deleted.
(I think)
WiFi ShieldComputer WiFi Router
Arduino
Server
object
Your
code
loop
Client
object
Inactive