• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Komunikacja android & ESP
#1
Dzień dobry, potrzebuję pomocy z kodem którego nie rozumiem co sposobu wysyłania danych do androida.
Kod z esp wysyła dane na androida i działa on znakomicie przesyła dane z czujników ds18b20. Alikacja do odbioru danych to Termik4Temp do pobrania z sklepu gplay.
Prócz tego chciał bym odebrać dane na drugim esp lecz nie bardzo wiem jak to zrobić.
Odbieram dane na drugim esp lecz wskazania są nie poprawne odczyt to 110 lub 50. 
Poniżej fragment kodu satelity esp.

Kod:
WiFiUDP Udp;

unsigned int localUdpPort = 12346;
char incomingPacket[255];
char replyPacekt[] = "Dokonano pomiaru temperatur :-)";


void setup()

{
Serial.begin(115200);
Serial.println();
wifi_init();
{
delay(500);
Serial.print(".");
}
Serial.println(" connected");

Udp.begin(localUdpPort);
Serial.printf("Now listening at IP %s, UDP port %d\n", WiFi.localIP().toString().c_str(), localUdpPort);
}


void loop()


{
int packetSize = Udp.parsePacket();
if (packetSize)
{
// receive incoming UDP packets

sensors.requestTemperatures();
Serial.printf("Received %d bytes from %s, port %d\n", packetSize, Udp.remoteIP().toString().c_str(), Udp.remotePort());
int len = Udp.read(incomingPacket, 255);
if (len > 0)
{
incomingPacket[len] = 0;
sensors.requestTemperatures();
delay(750);
}
Serial.printf("UDP packet contents: %s\n", incomingPacket);

float temp1;
temp1 = sensors.getTempCByIndex(0);
String Pomiar1;
Pomiar1=String(temp1, 1);
Serial.println(Pomiar1);

temp1 = sensors.getTempCByIndex(1);
String Pomiar2;
Pomiar2=String(temp1, 1);
Serial.println(Pomiar2);

temp1 = sensors.getTempCByIndex(2);
String Pomiar3;
Pomiar3=String(temp1, 1);
Serial.println(Pomiar3);

Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());

String tempp1 ;

tempp1 += "n1=";
tempp1 += Pomiar1;
tempp1 += "x";
tempp1 += "n2=";
tempp1 += Pomiar2;
tempp1 += "x";
tempp1 += "n3=";
tempp1 += Pomiar3;
tempp1 += "x";


Udp.println(tempp1);

Udp.endPacket();
}
}


A tu fragment kodu którym chcę odebrać dane z 1 esp.

Kod:
   Client.begin(12346);

}

void loop()
{
const int port=80;
int i=0;  

udpsend();
 
 char serverack = Client.parsePacket();
 Serial.println(serverack);
 if (serverack)
   {
   tempp1=Client.read();
   Serial.print("temperatura 1 : ");
   Serial.println(tempp1);
   

   delay(1000);
}
}

void udpsend()
 {
   const char ip[]="10.10.0.55";
 Client.beginPacket(ip,12346);
 Client.write(serdata);
 Client.endPacket();
 delay(1000);
 return;
 }


Będe niezmiernie wdzięczny za pomoc.
Pozdrawiam Piotr
 
Odpowiedź
  


Wiadomości w tym wątku
Komunikacja android & ESP - przez PiotrMk71 - 30-09-2018, 13:42
RE: Komunikacja android & ESP - przez kaczakat - 30-09-2018, 14:00
RE: Komunikacja android & ESP - przez PiotrMk71 - 30-09-2018, 15:42
RE: Komunikacja android & ESP - przez es2 - 02-10-2018, 12:37

Skocz do:


Przeglądający: 1 gości