aboutsummaryrefslogtreecommitdiff
path: root/libraries/WiFi/examples/WiFiUdpSendReceiveString
diff options
context:
space:
mode:
authorCristian Maglie <c.maglie@bug.st>2013-05-11 14:37:25 +0200
committerCristian Maglie <c.maglie@bug.st>2013-05-11 14:37:25 +0200
commit7207108255a772474b322151cb0fd113e8030afe (patch)
tree95e76ba275197603a940020241c131a2eaab40c5 /libraries/WiFi/examples/WiFiUdpSendReceiveString
parente1da15aeb5e4a68d6468a2fe7153ed73bd3b8521 (diff)
parenteb40f35b2d95b2701d92e3b8baf53832a3bd2993 (diff)
Merged 1.0.5
Still missing: - updates to WiFi lib for sam. - updates to examples of Ehternet and WiFi for sam. Merge remote-tracking branch 'arduino/master' into ide-1.5.x Conflicts: app/src/processing/app/Base.java app/src/processing/app/Editor.java app/src/processing/app/helpers/FileUtils.java app/src/processing/app/i18n/Resources_fr.po app/src/processing/app/i18n/Resources_fr.properties build/shared/revisions.txt hardware/arduino/avr/libraries/Ethernet/examples/DnsWebClient/DnsWebClient.ino hardware/arduino/avr/libraries/WiFi/examples/WifiChatServer/WifiChatServer.ino hardware/arduino/avr/libraries/WiFi/examples/WifiPachubeClient/WifiPachubeClient.ino hardware/arduino/avr/libraries/WiFi/examples/WifiPachubeClientString/WifiPachubeClientString.ino hardware/arduino/avr/libraries/WiFi/examples/WifiTwitterClient/WifiTwitterClient.ino hardware/arduino/avr/libraries/WiFi/examples/WifiUdpSendReceiveString/WifiUdpSendReceiveString.ino hardware/arduino/avr/libraries/WiFi/examples/WifiWebClient/WifiWebClient.ino hardware/arduino/avr/libraries/WiFi/examples/WifiWebClientRepeating/WifiWebClientRepeating.ino hardware/arduino/avr/libraries/WiFi/examples/WifiWebServer/WifiWebServer.ino libraries/WiFi/examples/WiFiChatServer/WiFiChatServer.ino libraries/WiFi/examples/WiFiPachubeClient/WiFiPachubeClient.ino libraries/WiFi/examples/WiFiPachubeClientString/WiFiPachubeClientString.ino libraries/WiFi/examples/WiFiTwitterClient/WiFiTwitterClient.ino libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino libraries/WiFi/examples/WiFiWebClient/WiFiWebClient.ino libraries/WiFi/examples/WiFiWebClientRepeating/WiFiWebClientRepeating.ino libraries/WiFi/examples/WiFiWebServer/WiFiWebServer.ino libraries/WiFi/examples/WifiChatServer/WifiChatServer.ino libraries/WiFi/examples/WifiPachubeClient/WifiPachubeClient.ino libraries/WiFi/examples/WifiPachubeClientString/WifiPachubeClientString.ino libraries/WiFi/examples/WifiTwitterClient/WifiTwitterClient.ino libraries/WiFi/examples/WifiUdpSendReceiveString/WifiUdpSendReceiveString.ino libraries/WiFi/examples/WifiWebClient/WifiWebClient.ino libraries/WiFi/examples/WifiWebClientRepeating/WifiWebClientRepeating.ino libraries/WiFi/examples/WifiWebServer/WifiWebServer.ino
Diffstat (limited to 'libraries/WiFi/examples/WiFiUdpSendReceiveString')
-rw-r--r--libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino112
1 files changed, 112 insertions, 0 deletions
diff --git a/libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino b/libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino
new file mode 100644
index 0000000..eb11295
--- /dev/null
+++ b/libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino
@@ -0,0 +1,112 @@
+
+/*
+ WiFi UDP Send and Receive String
+
+ This sketch wait an UDP packet on localPort using a WiFi shield.
+ When a packet is received an Acknowledge packet is sent to the client on port remotePort
+
+ Circuit:
+ * WiFi shield attached
+
+ created 30 December 2012
+ by dlf (Metodo2 srl)
+
+ */
+
+
+#include <SPI.h>
+#include <WiFi.h>
+#include <WiFiUdp.h>
+
+int status = WL_IDLE_STATUS;
+char ssid[] = "yourNetwork"; // your network SSID (name)
+char pass[] = "secretPassword"; // your network password (use for WPA, or use as key for WEP)
+int keyIndex = 0; // your network key Index number (needed only for WEP)
+
+unsigned int localPort = 2390; // local port to listen on
+
+char packetBuffer[255]; //buffer to hold incoming packet
+char ReplyBuffer[] = "acknowledged"; // a string to send back
+
+WiFiUDP Udp;
+
+void setup() {
+ //Initialize serial and wait for port to open:
+ Serial.begin(9600);
+ while (!Serial) {
+ ; // wait for serial port to connect. Needed for Leonardo only
+ }
+
+ // check for the presence of the shield:
+ if (WiFi.status() == WL_NO_SHIELD) {
+ Serial.println("WiFi shield not present");
+ // don't continue:
+ while(true);
+ }
+
+ // attempt to connect to Wifi network:
+ while ( status != WL_CONNECTED) {
+ Serial.print("Attempting to connect to SSID: ");
+ Serial.println(ssid);
+ // Connect to WPA/WPA2 network. Change this line if using open or WEP network:
+ status = WiFi.begin(ssid);
+
+ // wait 10 seconds for connection:
+ delay(10000);
+ }
+ Serial.println("Connected to wifi");
+ printWifiStatus();
+
+ Serial.println("\nStarting connection to server...");
+ // if you get a connection, report back via serial:
+ Udp.begin(localPort);
+}
+
+void loop() {
+
+ // if there's data available, read a packet
+ int packetSize = Udp.parsePacket();
+ if(packetSize)
+ {
+ Serial.print("Received packet of size ");
+ Serial.println(packetSize);
+ Serial.print("From ");
+ IPAddress remoteIp = Udp.remoteIP();
+ Serial.print(remoteIp);
+ Serial.print(", port ");
+ Serial.println(Udp.remotePort());
+
+ // read the packet into packetBufffer
+ int len = Udp.read(packetBuffer,255);
+ if (len >0) packetBuffer[len]=0;
+ Serial.println("Contents:");
+ Serial.println(packetBuffer);
+
+ // send a reply, to the IP address and port that sent us the packet we received
+ Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
+ Udp.write(ReplyBuffer);
+ Udp.endPacket();
+ }
+}
+
+
+void printWifiStatus() {
+ // print the SSID of the network you're attached to:
+ Serial.print("SSID: ");
+ Serial.println(WiFi.SSID());
+
+ // print your WiFi shield's IP address:
+ IPAddress ip = WiFi.localIP();
+ Serial.print("IP Address: ");
+ Serial.println(ip);
+
+ // print the received signal strength:
+ long rssi = WiFi.RSSI();
+ Serial.print("signal strength (RSSI):");
+ Serial.print(rssi);
+ Serial.println(" dBm");
+}
+
+
+
+