Tool/software: Code Composer Studio
Hey guys,
this question is somehow related to: https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz/f/156/t/965776
The setup:
We use FH and have about 60 channels enabled and we do not use long range mode. We have one collector and about 50 sleepy sensors. The trickle timer on the sensor side are both 3s. On the collector side, max and min trickle timer are set to 1.5s and 3s, respectively. In order for the sensors to join, the sensors send a PAS and try to associate with a collector every 10mins. If the sensor receives a PA message, it proceeds with the PCS message. After receiving a PC message from the collector, the sensor sends an association request and joins the network.
The FH_CHANNEL_MASK and the FH_ASYNC_CHANNEL_MASK are identical on the collector and sensor side:
#define FH_ASYNC_CHANNEL_MASK { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \ 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, \ 0xFF, 0xFF, 0xFF, 0x7F, 0x00 }
The sensors are basically TIDA 00489 boards, though we have adapted the RTC capacitors.
Observations:
Using a sniffer and Wireshark, I can at least see if the sensors are sending their PAS and PCS messages, since they are transmitted on all channels. I also thought this should be the case for the collector's async messages (PA and PC message) however, in the Wireshark log, there are only the PAS or PCS messages. I set the sniffer to 5 different channels, not on one channel I could see a PC or PA message.
I can see, that the sensors need several PAS or PCS messages in order to receive a PA or PC message from the collector. Hence, the collector is actually transmitting its PC or PA message but I dont know on which channel, and it takes quite long for the sensors to join if they ever join. Sometimes it takes up to more than a day (remember the 10min interval between two consecutive PAS or PCS messages the sensors are sending).
Questions:
- Having about 60 channels enabled, do you think 3s of trickle time on the sensor side are appropriate? We do not care for a fast join, but for a reliable join process, which does not need several tries.
- It seems to be obvious, that the collector is NOT sending its async response frames on ALL channels of the async channel mask, since I cannot find a single PC or PA frame in the sniffer log. But on which channel is the collector transmitting?
- How can I tweak the join behavior of the sensors? What could be better trickle times to increase probability of a successful join? Would it make sense to reduce the number of async channels on the collector and sensor side (although this makes only sense if the collector is actually transmitting on all...)?
- When the sensor has sent its async frame, on which channel will the sensor wait to receive the collector's response?
To sum it up, we only want a higher successful join rate and we do not care if the join phase (time from PAS to association) takes long, but we want to reduce the tries it takes for a sensor to join.
Hope you guys can help.
best wishes
Slev1n