Picking "clean" channels to communicate on

Are there any channels that are better than others to default the radio to? I plan on letting the user change the channel if needed and planned to allow them to see the result of the Energy Scan (ED) to assist in this. However, I find that the ED seems to give you pretty much instantaneous results. In my case, I have one radio transmitting at a low duty cycle (one transmission every 500ms - radio is on for 8ms and only transmitting a payload of 5 bytes) and it is hard to see this in the ED results. I suspect other sources of possible interference could be the same - intermittent. I suppose if it is intermittent enough, transmissions will still get through, but battery life will suffer.

Any ideas would be appreciated.

That’s a great question, and exactly what you mentioned could happen. The Energy Scan is th only way to have any real idea of what else happens to be out there at the time. The down fall of course, is that the Scan is finite in length and will only report what is seen during that exact time. In order to deal with this, you will either have to periodically scan, scan multiple times, or scan for a longer period of time.

The Energy Scan will accept a value between 0-6. The values returned represent the detected energy level in units of -dBm. The actual scan time on
each channel is measured as Time = [(2 ^ ED PARAM) * 15.36] ms.

So sending a parameter value of ED6 will maximally scan each channel for up to 983ms.