well if there are 2 or more nodes sending data to only one center. whene same time nodes send data only one of them can read only from receiver. Because receviver read a struct dan free() other so second nodes datas are losted. but if I use this code and see whatever coming without split or any orhet else,
struct Signal { char sifre[15] = "Fixaj.com"; char konum[15]; byte nem; //0-100 arası bir değer olduğu için byte id; //0-250 arası bir değer yeterli şimdilik byte temp[4]; // float tipinde 29.5 gibi bir değer atacak } data;
well if there are 2 or more nodes sending data to only one center. whene same time nodes send data only one of them can read only from receiver. Because receviver read a struct dan free() other so second nodes datas are losted. but if I use this code and see whatever coming without split or any orhet else,
while (FixajSS.available() > 1) { ResponseContainer rs = FixajSS.receiveMessage(); String typeStr = rs.data; Serial.println(typeStr); }
my nodes data structs is
struct Signal { char sifre[15] = "Fixaj.com"; char konum[15]; byte nem; //0-100 arası bir değer olduğu için byte id; //0-250 arası bir değer yeterli şimdilik byte temp[4]; // float tipinde 29.5 gibi bir değer atacak } data;
the Output is this
16:00:14.286 -> Fixaj.comMutfak3���AFixaj.comKumes+
��A 16:00:16.479 -> Fixaj.comMutfak3���AFixaj.comKumes+@ �A`Mutfak is a node and Kumes is another node. So datas are coming but how get all nodes data without losting any data?
in my opinion there should be add a new method which is
ResponseStructContainer LoRa_E32::receiveMessageUntil(char delimiter)
if I changed the library like this
and changing my code like this:
the OUTPUT look nice but sometimes read only 1 node esspecially if a node very close to receiver.