Hi,
I have the issue. I have about 10 devices (cc2530) which are measuring temperature and there’s battery voltage and send that data periodically to coordinator (all devices go to PM2 sleep mode between periods of sending messages).
After a day or two or sometimes a week passes that everything is working fine and then some devices stop to work. So I tried to figure what is going on. At first I thought it was a software error then I started test which included all devices (hardware and software is same, period of sending are the same batteries are same) and results where:
- The lock does not happen on all devices (it is not uniform transformation)
- Period of error (lock) can defer from to device (on one device I can happened in just for between two hours sometimes between two weeks)
- Some of devices never failed
- 4. If I don’t use sleep (power conserve) issue never happens everything works fine
So my conclusion is:
It can’t be a software error (hardware, software, period and all conditions are same). Because some devices never failed, and others that did didn’t have uniform transformation of failure (device1 failed 3 times device2 failed 10 times device4 1, ….)
I thought that it must be problem with external 32Mhz oscillator (Mine devices are in fridge temperatures between 3 and 6 C) so I replaced it with new one I got same results. Then I tried to replace oscillator capacitors I got same thing and then I added 1 Mohm resistor to help him to start and that did not help
I even tried to enable CKE (clock fail detection) and that helped me.
I tried to enable watchdog, and that helped me a little bit because the system restarted when locked and continued to work but that doesn’t work as it should. What happens (my sending period is 5 minutes) is when my device starts is it should send message to coordinator (and go to PM2 for 5 minutes) and then send another one and so on…., this normally works ok but sometimes when my watchdog get triggered and device gets restarted it does not do nothing sometimes for like 10, 15 to 25 minutes, and then starts to work why I don’t know why (I suspect that is something generally wrong with my external oscillator and device is waiting to clock to become stable in init_function or something like that)
Please help me