Custom firmware built on Openwrt stops unexpectedly

Hello Team,

I built this custom captive portal firmware that runs on Openwrt. It runs very well on
TP-link MR3420, D-Link DWR-921 and MikroTik RB951Ui-2HnD. But I realized that on TP-link MR3420 the firmware just stops after about 1 day or a couple of hours and when I check the processes running with top command I will not see it.
I will like to know if there is a way to detect if my firmware has failed so I can automatically reboot the whole device.

Which version? Which OpenWrt release?

Which one ?
coova-chilli ?

Openwrt 18.06.05.
I came up with a solution which is to write a monitor script to observe my firmware and restart the firmware if it stops running.
I am using cron to run that script at intervals.

I built on top of NodogSplash.