You will have to modify the firmware code to use custom weather data. You can start looking at weather.cpp: https://github.com/OpenSprinkler/OpenSprinkler-Firmware/blob/master/weather.cpp
this is where the firmware sends weather requests and get back results. The “scale” parameter, in particular, carries the watering percentage. You can write a python script that retrieves the daily ET data, calculates the watering percentage, and modify weather.cpp to call that script instead of the default weather script on opensprinkler server.