@CrankyCoder I have similar issue with a couple of nodes. Sometimes it looses signal for hours at a time...
It might be external interference from other devices like wifi, bluetooth or microwave oven.
It can also be connection issues especially with the push-on dupont connectors as when the temperature/humidity/air pressure change then the connectors can move slightly. Also they might be badly crimped in the first place.
So check all connections are good and can't move (soldering is best here), and then look for sources that might be an issue.
It could also be another node closer to the GW is sending at the exact same time as the problem node and masking the signal.
Batteries are susceptable to variations due to temperature too, they are a chemical reaction. So try a better source of power for testing too.
Looking at the code, send_status_message only ever sends 1 - is this what you want? It seems to never send anything else (like 0)....
Also you are using sleep but have a receive function - what happens to messages when the node is asleep?
You are sending battery level every second? That is too often. How long will the batteries last? This wastes battery power a lot. I check betteries once a day on my security sensors, they don't change for weeks at a time....
Have you modified the pro mini as per the battery page on this site? Have you added capacitors to the radio module?
directionControl seems like it will always turn off both digital pins regardless of the message as //disable are the last statements to be actioned?
You can try changing
#define MY_RADIO_RF24
to.....
#define MY_RADIO_RF24
#define MY_RF24_PA_LEVEL RF24_PA_HIGH
options for power are MIN, LOW, HIGH, MAX. - it might help.