I have blinds that take ~50+ seconds to open/close.
These were not operating correctly and moving on odd directions when using slider in Web interface. Once past a certain percent open, would start moving in opposite direction.
My open_max value is 114600.
Issue found in ShutterPercentToRealPosition() where uint16_t is used for realpos calculation, even thou result is int32_t.
this was causing numeric overflow and high values rolling over to lower values.
Line94: from uint16_t realpos;
to
int32_t realpos;
Corrects this issue and solves the problem, now working as expected.
I have blinds that take ~50+ seconds to open/close. These were not operating correctly and moving on odd directions when using slider in Web interface. Once past a certain percent open, would start moving in opposite direction. My open_max value is 114600.
Issue found in ShutterPercentToRealPosition() where uint16_t is used for realpos calculation, even thou result is int32_t.
this was causing numeric overflow and high values rolling over to lower values.
Line94: from uint16_t realpos; to int32_t realpos;
Corrects this issue and solves the problem, now working as expected.