A simple Python API using Flask to communicate with either the serial port on the local machine or an MQTT broker
There are two main components:
API that sends serial, HTTP, or MQTT commands from user input
Script file that sends serial, HTTP, or MQTT commands depending on the time of day, sunrise, sunset, moonrise, moonset, etc.