You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a very poorly written library, with blatant errors.
There are multiple instances where variables are incorrectly typecasted.
Durations are requested in milliseconds, but are typecasted as uint8_t.
Here is one such example:
tOn requested as milliseconds: void SX1509::blink(uint8_t pin, unsigned long tOn, unsigned long tOff, uint8_t onIntensity, uint8_t offIntensity)
Later typecasted as uint8_t: void SX1509::setupBlink(uint8_t pin, uint8_t tOn, uint8_t tOff, uint8_t onIntensity, uint8_t offIntensity, uint8_t tRise, uint8_t tFall, bool log)
The text was updated successfully, but these errors were encountered:
yashmulgaonkar
changed the title
Multiple typecasting issues in this library.
[BUG] Multiple typecasting issues in this library.
Jun 22, 2023
@yashmulgaonkar
I went through the earlier commits. I don't think this has been caused by "replace all". (Disclaimer: It ("replace all") was not done by me btw)
The code for void SX1509::blink & void SX1509::setupBlink seems to be different. In void SX1509::setupBlink, remarks are specifically mentioning that tOn for this method should not be more than 5 bits.
This is a very poorly written library, with blatant errors.
There are multiple instances where variables are incorrectly typecasted.
Durations are requested in milliseconds, but are typecasted as uint8_t.
Here is one such example:
tOn requested as milliseconds:
void SX1509::blink(uint8_t pin, unsigned long tOn, unsigned long tOff, uint8_t onIntensity, uint8_t offIntensity)
Later typecasted as uint8_t:
void SX1509::setupBlink(uint8_t pin, uint8_t tOn, uint8_t tOff, uint8_t onIntensity, uint8_t offIntensity, uint8_t tRise, uint8_t tFall, bool log)
The text was updated successfully, but these errors were encountered: