Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitcc855bc

Browse files
committed
Fixing SendMessage to put the actual data in the message
1 parentf7e0506 commitcc855bc

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

‎MeshBase.cpp

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -92,15 +92,19 @@ void MeshBase::HandlePeerDiscovery(const MeshBase::Message* msg, const void* buf
9292
if (length !=sizeof(PeerDiscoveryMessage))
9393
return;
9494
const PeerDiscoveryMessage* pd = (structPeerDiscoveryMessage*)buff;
95-
//if (msg.protocol_version != 1)
96-
//return;
95+
if (pd->protocol_version !=1)
96+
return;
9797

9898
Peer* peer =GetPeer(msg->address_from);
9999
if (peer ==NULL)
100100
{
101101
// Found a new peer
102-
Serial.print("New Peer:");
103-
Serial.println(msg->address_from, DEC);
102+
Serial.print("New Peer. Address=");
103+
Serial.print(msg->address_from, DEC);
104+
Serial.print(" uptime=");
105+
Serial.print(pd->uptime, DEC);
106+
Serial.print(" num_peers=");
107+
Serial.println(pd->num_peers, DEC);
104108
Peer* p =newPeer(msg->address_from);
105109
peers.Add(p);
106110
OnNewPeer(p);
@@ -119,7 +123,7 @@ void MeshBase::SendPeerDiscovery()
119123
payload.application_capabilities =0;
120124
payload.num_peers = peers.length;
121125
payload.uptime =millis() /1000;
122-
SendMessage(PEER_DISCOVERY, type_peer_discovery, &payload,sizeof(MeshBase::PeerDiscoveryMessage),true);
126+
SendMessage(PEER_DISCOVERY, type_peer_discovery, &payload,sizeof(payload),true);
123127
}
124128

125129
voidMeshBase::SendMessage(uint32_t to,uint8_t type,constvoid* data,uint8_t length,bool is_broadcast)
@@ -132,12 +136,13 @@ void MeshBase::SendMessage(uint32_t to, uint8_t type, const void* data, uint8_t
132136
msg->address_from = address;
133137
msg->split_enabled =0;
134138
msg->split_part =0;
139+
memcpy(&buff[sizeof(Message)], data,min(length,32 -sizeof(Message)));
135140
radio.stopListening();
136141
if (is_broadcast)
137142
radio.openWritingPipe(TO_BROADCAST(to));
138143
else
139144
radio.openWritingPipe(TO_ADDRESS(to));
140-
radio.write(data, length);
145+
radio.write(buff, length +sizeof(Message));
141146
radio.startListening();
142147
}
143148

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp