Hi guys,
I upload this sketch on my arduino uno:
#include <SPI.h>
#include <Ethernet.h>
#include <TinkerKit.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192, 168, 14, 201);
EthernetServer server(5000);
TKMosFet relay(O0);
int led = 13;
void setup()
{
Serial.begin(9600);
pinMode(led, OUTPUT);
digitalWrite(led, HIGH);
Ethernet.begin(mac, ip);
server.begin();
Serial.println("Server is running");
Serial.println(Ethernet.localIP());
}
String message = "";
void loop()
{
EthernetClient client = server.available();
if(client == true)
{
while(client.connected())
{
if(client.available())
{
char c = client.read();
if(c != '\n')
{
message += c;
}
else
{
// Serial.println(message);
delay(500);
Serial.println("Message from pc: " + message);
Serial.println("Sending data to client...");
client.println(message);
delay(1000);
}
}
}
if(message == "ON")
{
Serial.println("Message is ON");
digitalWrite(led, HIGH);
}
else if (message == "OFF")
{
Serial.println("Message is OFF");
digitalWrite(led, LOW);
}
else
{
Serial.println("Message is not recognized as command. Received: " + message);
}
delay(500);
message = "";
Serial.println("Reinitializing message...");
delay(2000);
client.stop();
}
delay(500);
}
The result is that tcp messaging are sent and received correctly, but digitalWrite(led, HIGH); and digitalWrite(led, LOW); not power on/off the led on that pin.
I try also to eliminate much code:
#include <SPI.h>
#include <Ethernet.h>
#include <TinkerKit.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192, 168, 14, 201);
EthernetServer server(5000);
TKMosFet relay(O0);
int led = 13;
void setup()
{
Ethernet.begin(mac, ip);
Serial.begin(9600);
pinMode(led, OUTPUT);
digitalWrite(led, HIGH);
}
void loop()
{
}
…but again pin 13 stays low.
Last trial that i do is:
#include <SPI.h>
#include <Ethernet.h>
#include <TinkerKit.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192, 168, 14, 201);
EthernetServer server(5000);
TKMosFet relay(O0);
int led = 13;
void setup()
{
//Ethernet.begin(mac, ip); <------- not initializing Ethernet class
Serial.begin(9600);
pinMode(led, OUTPUT);
digitalWrite(led, HIGH);
}
void loop()
{
}
and with that code led sitched on.
Please help me to understand what’s goes wrong