Работа с ENC28J60+devicehub
- Войдите на сайт для отправки комментариев
Пт, 11/03/2016 - 14:36
Добрый день! Помогите разобраться. Не могу понять, проблемы с самим модулем или с интернет провайдером. Хотя возможно второе.
Попробовал подключится к сервису devicehub.com для управлением реле. Вот код:
#include <EtherCard.h> // ethernet interface mac address, must be unique on the LAN static byte mymac[] = { 0xB2,0xC9,0xB6,0x1A,0x2E,0xC5 }; byte Ethernet::buffer[700]; static uint32_t timer; char website[] PROGMEM = "www.devicehub.net"; int state = 0; // called when the client request is complete static void my_callback (byte status, word off, word len) { Serial.println(">>>"); Ethernet::buffer[off+300] = 0; Serial.println((const char*) Ethernet::buffer + off + len - 1); state = *(const char*)(Ethernet::buffer + off + len - 1); Serial.println(state); if(state == 49){ //actuator ON Serial.println("actuator ON"); digitalWrite(3, HIGH); }else if(state == 48){ //actuator OFF Serial.println("actuator OFF"); digitalWrite(3, LOW); } } void setup() { pinMode(3, OUTPUT); pinMode(9, OUTPUT); Serial.begin(9600); if (ether.begin(sizeof Ethernet::buffer, mymac, 10) == 0) Serial.println( "Failed to access Ethernet controller"); if (!ether.dhcpSetup()) Serial.println("DHCP failed"); ether.printIp("IP: ", ether.myip); ether.printIp("GW: ", ether.gwip); ether.printIp("DNS: ", ether.dnsip); if (!ether.dnsLookup(website)) Serial.println("DNS failed"); Serial.println("line 1"); ether.printIp("SRV: ", ether.hisip); Serial.println("turning on the led"); digitalWrite(9, HIGH); } void loop() { ether.packetLoop(ether.packetReceive()); if (millis() > timer) { char queryString[256] = {0}; sprintf(queryString, "?apiKey=99658d38-ca38-44d8-99de-770f08037e7d"); timer = millis() + 5000; Serial.println(); Serial.print("<<< REQ "); ether.browseUrl(PSTR("/io/6878/actuator/101553/"), queryString, website, my_callback); } }
В меню роутера отображается подключение, но в мониторе порта выходит вот что:
IP: 192.168.1.6
GW: 192.168.1.1
DNS: 192.168.1.1
line 1
SRV: 146.148.124.207
turning on the led
<<< REQ
<<< REQ >>>
10
То есть никак не реагирует на изменение состояния на сайте. Возможно ли, что это связано с провайдером?