BasicTest.ino 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. /*
  2. WiFiEsp test: BasicTest
  3. Performs basic connectivity test and checks.
  4. */
  5. #include "WiFiEsp.h"
  6. // Emulate Serial1 on pins 7/6 if not present
  7. #ifndef HAVE_HWSERIAL1
  8. #include "SoftwareSerial.h"
  9. SoftwareSerial Serial1(6, 7); // RX, TX
  10. #endif
  11. char ssid[] = "Twim"; // your network SSID (name)
  12. char pwd[] = "12345678"; // your network password
  13. char pwdErr[] = "xxxx"; // wrong password
  14. void setup()
  15. {
  16. Serial.begin(115200);
  17. Serial1.begin(9600);
  18. WiFi.init(&Serial1);
  19. }
  20. void loop()
  21. {
  22. assertEquals("Firmware version", WiFi.firmwareVersion(), "1.5.2");
  23. assertEquals("Status is (WL_DISCONNECTED)", WiFi.status(), WL_DISCONNECTED);
  24. assertEquals("Connect", WiFi.begin(ssid, pwd), WL_CONNECTED);
  25. assertEquals("Check status (WL_CONNECTED)", WiFi.status(), WL_CONNECTED);
  26. assertEquals("Check SSID", WiFi.SSID(), ssid);
  27. IPAddress ip = WiFi.localIP();
  28. assertNotEquals("Check IP Address", ip[0], 0);
  29. Serial.print("IP Address: ");
  30. Serial.println(ip);
  31. byte mac[6]={0,0,0,0,0,0};
  32. WiFi.macAddress(mac);
  33. Serial.print("MAC: ");
  34. Serial.print(mac[5], HEX);
  35. Serial.print(":");
  36. Serial.print(mac[4], HEX);
  37. Serial.print(":");
  38. Serial.print(mac[3], HEX);
  39. Serial.print(":");
  40. Serial.print(mac[2], HEX);
  41. Serial.print(":");
  42. Serial.print(mac[1], HEX);
  43. Serial.print(":");
  44. Serial.println(mac[0], HEX);
  45. Serial.println();
  46. assertEquals("Disconnect", WiFi.disconnect(), WL_DISCONNECTED);
  47. assertEquals("Check status (WL_DISCONNECTED)", WiFi.status(), WL_DISCONNECTED);
  48. assertEquals("IP Address", WiFi.localIP(), 0);
  49. assertEquals("Check SSID", WiFi.SSID(), "");
  50. assertEquals("Wrong pwd", WiFi.begin(ssid, pwdErr), WL_CONNECT_FAILED);
  51. IPAddress localIp(192, 168, 168, 111);
  52. WiFi.config(localIp);
  53. assertEquals("Connect", WiFi.begin(ssid, pwd), WL_CONNECTED);
  54. assertEquals("Check status (WL_CONNECTED)", WiFi.status(), WL_CONNECTED);
  55. ip = WiFi.localIP();
  56. assertNotEquals("Check IP Address", ip[0], 0);
  57. Serial.println("END OF TESTS");
  58. delay(60000);
  59. }
  60. ////////////////////////////////////////////////////////////////////////////////////
  61. void assertNotEquals(const char* test, int actual, int expected)
  62. {
  63. if(actual!=expected)
  64. pass(test);
  65. else
  66. fail(test, actual, expected);
  67. }
  68. void assertEquals(const char* test, int actual, int expected)
  69. {
  70. if(actual==expected)
  71. pass(test);
  72. else
  73. fail(test, actual, expected);
  74. }
  75. void assertEquals(const char* test, char* actual, char* expected)
  76. {
  77. if(strcmp(actual, expected) == 0)
  78. pass(test);
  79. else
  80. fail(test, actual, expected);
  81. }
  82. void pass(const char* test)
  83. {
  84. Serial.print(F("********************************************** "));
  85. Serial.print(test);
  86. Serial.println(" > PASSED");
  87. Serial.println();
  88. }
  89. void fail(const char* test, char* actual, char* expected)
  90. {
  91. Serial.print(F("********************************************** "));
  92. Serial.print(test);
  93. Serial.print(" > FAILED");
  94. Serial.print(" (actual=\"");
  95. Serial.print(actual);
  96. Serial.print("\", expected=\"");
  97. Serial.print(expected);
  98. Serial.println("\")");
  99. Serial.println();
  100. delay(10000);
  101. }
  102. void fail(const char* test, int actual, int expected)
  103. {
  104. Serial.print(F("********************************************** "));
  105. Serial.print(test);
  106. Serial.print(" > FAILED");
  107. Serial.print(" (actual=");
  108. Serial.print(actual);
  109. Serial.print(", expected=");
  110. Serial.print(expected);
  111. Serial.println(")");
  112. Serial.println();
  113. delay(10000);
  114. }