How to Make IOT Board work 24/7 ?

I Made a PCB which has

  1. Atmega328p-pu
  2. SIM800L
  3. Lm2596 based power supply gives 4v 2A to GSM
  4. BMP180
    5)LCD16*2
    This board is connected to BLYNK server, It worked properly for two days,every second it pinged proper sensor data to BLYNK server, but today It was disconnected from network, Then I had to manually restart the Device, it again started to work normally, but I don’t want to manually Do this, I want to use this in Agricultural field, how to make it work forever without human intervention ?

I want to know

  1. How IOT Product manufacturers solve these kind of problem
  2. Do I need to use Reset & supervisor IC?
  3. Do I need to turn off and On every hour ?

If you are using a I2C port expansion screen. The methods in the wire.h library are blocking. That is, due to a minor interference, they will wait forever for a response under the protocol.