I’m developing a system where 1 battery-powered Wixel (“WXT”) collects data from the minIMU-v9 over I2C and wirelessly sends the data (using the radio_link library interface) to another Wixel (“WXR”), which sends the received data to a PC terminal through a serial port. WXT starts up in sleep mode where it enters PM2 for 30 seconds, wakes up and listens for commands from WXR for 3 seconds, and repeats. During this 3-second period, it’s designed to send an “I’m alive” signal to WXR (3 “pings” about a second apart), which show up on the PC terminal. WXT is also programmed to blink the yellow LED every time it sends a ping for visual confirmation.
We’ve been able to record pings consistently for several hours with the same model,
but are encountering a recent issue wherein WXT will successfully continue its sleep/ping cycle as expected (visually confirmed), while pings stop appearing on the PC terminal after some indeterminate amount of time. WXT can’t be easily reprogrammed once it’s installed, so debugging has been limited primarily to WXR. However, given the LED confirmation (30 seconds with no LEDs, blinking yellow LED for 3 seconds, repeat), it seems like WXT is working properly.
On the receiver side, I’ve tried power cycling WXR, closing and reopening the serial port, and decreasing the distance between WXR & WXT until they’re nearly adjacent, with no change in behavior. Sending commands from WXR to WXT also doesn’t have any effect (i.e. WXT remains in sleep/ping mode), so it seems like an issue with radio communication, but we’re unsure what the root cause could be. Any debugging tips or theories are much appreciated!