Socket arduino yun

Salve a tutti, provengo da arduino duemilanove.
Avevo creato un socket con questo codice...
Collegamento arduino yun con usb e collegato anche l'ethernet.

#include <SPI.h>
#include <Ethernet.h>
 
// Enter a MAC address, IP address and Portnumber for your Server below.
// The IP address will be dependent on your local network:
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress serverIP(192,168,1,13);
int serverPort=8888;
 
// Initialize the Ethernet server library
// with the IP address and port you want to use
EthernetServer server(serverPort);
 
void setup()
{
  // start the serial for debugging
  Serial.begin(9600);
  // start the Ethernet connection and the server:
  Ethernet.begin(mac, serverIP);
  server.begin();
  Serial.println("Server started");//log
}
 
void loop()
{
  // listen for incoming clients
  EthernetClient client = server.available();
  if (client) {
    String clientMsg ="";
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        //Serial.print(c);
        clientMsg+=c;//store the recieved chracters in a string
        //if the character is an "end of line" the whole message is recieved
        if (c == '\n') {
          Serial.println("Message from Client:"+clientMsg);//print it to the serial
          client.println("You said:"+clientMsg);//modify the string and send it back
          clientMsg="";
        }
      }
    }
    // give the Client time to receive the data
    delay(1);
    // close the connection:
    client.stop();
  }
}

ma caricandolo su arduino yun non va...di compilare compila, però mi dice impossibile connettersi... forse stai usando un bridge??!??!
che significa..?!?!
Io voglio inviare una stringa da un programmino fatto in java. Su arduino duemilanove va una bomba!
grazie

Appunto, sei su una Yún, non su una duemilanove e l'ethernet della Yún ...

... è collegato a Linux, quindi ci accedi da Linux, non da Arduino!

Per lo scambio di informazioni devi usare la libreria Bridge ... :roll_eyes:

Guglielmo

nella foto, atmega è arduino
linino è linux?

Quindi fammi capire dovrei fare: linino > bridge > arduino > socket server >-<client?

Si, la Yún è composta da due parti ...
... un Arduino Leonardo (ATmega32u4) ed un sistema Linux che gira su un AR9331. Le due parti scambiano informazioni tramite le classi ed i metodi della libreria Bridge.

Bisogna che dedichi un bel po' di tempo a studiarti detta libreria ed a vederne tutte le possibilità ... :roll_eyes:

Normalmente, tutta la parte di rete, si fa sotto Linux ed alla parte Arduino vengono inviati solo i risultati (... o dalla parte Arduino vengono inviati dei dati che vengono poi integrati nella parte rete vera e propria su Linux).

Guglielmo

Oppure lasci perdere Yun e consideri questa alternativa.

Ardulink:
Oppure lasci perdere Yun e consideri questa alternativa ...

... mah ... non è che ti semplifichi di molto la vita, anzi, per qualcuno potrebbe essere anche peggio ... :roll_eyes: :roll_eyes: :roll_eyes:

Guglielmo

Bisogna vedere cosa cerca, ad esempio con la Pi ha più potenza, ma anche più consumi, piu spazio occupato,
Le funzioni di bridge arduinico sono tutte presenti in ardulink ?

Una domanda, ma usando la Pi si può anche eliminare completamente l'uso del micro esterno e fare tutto con il gpio del Pi giusto ?
Il limite dovrebbe essere il realtime peggiore di linux rispetto ad una mcu

Non so se le funzioni del bridge sono tutte presenti in Ardulink. Io conosco bene Ardulink (l'ho scritto io!) ma non Arduino Yun e ovviamente sono di parte.

So che con Raspberry si può usare la gpio ma nonostante abbia un Raspberry non mi sono mai impegnato a vedere come funziona.

Forse i consumi e lo spazio sono maggiori ma probabilmente sono maggiori anche le potenzialità. Rasp monta diversi sistemi operativi mentre Arduino Yun ha un Lilino, ripeto non conosco Yun ma non credo che Lilino sia così aperto come Raspbian.

Teoricamente poi un solo Raspberry con Ardulink potrebbe governare n schede Arduino (anche diverse fra loro).

So che lo hai scritto tu, lo conosco da tempo, complimenti :slight_smile:

Personalmente quando prenderò la Pi, prima o poi mi tocca, puntero direttamente ai suoi gpio, ho visto anche qualche libreria che ne facilità l'uso. Tranne appunto quando si entra obbligatoriamente nel realtime

Grazie del tuo parere

Mannaggia non sono riuscito a creare una socket in ascolto.
Sapete farmi qualche esempio?
Senza bridge riesco tranquillamente, come nel duemilanove ma non riesco a fare andare il socket con la bridge.
Avete uno sketch che fa da TCP server usando la bridge? Ho un client java e da li mi connetto al server YUN.
Grazie