Skip to content

Releases: GabyGold67/ButtonToSwitch_ESP32

v4.6.1 Method addition, documentation corrections

30 Jul 14:44
e021437
Compare
Choose a tag to compare
  • getMpbInstnc() method added
  • Documentation corrections and additions
  • Examples information added, simulations references added

v4.5.0 Output changed notification mechanism added, Mutexes simplification

10 Jul 05:41
ce1ec4b
Compare
Choose a tag to compare
  • Each mechanism that executes methods when changing states happens added the call to a function with the signature: void (function*) (void*). This simple addition opens the possibility to set a pointer to ANY type of argument, including other objects, to be a parameter of the execution of the function.
    The addition is available for the change of the following states:
    • isOn
    • isOff
    • isPilotOn
    • isPilotOff
    • isWarningOn
    • isWarningOff
    • isOnScndry
    • isOffScndry
    • isOnVoided
    • isOfVoided
  • Reduce the use of the INT blocking portMUX_TYPE mux portMUX_INITIALIZER_UNLOCKED;
    • Replacement of those mutexes with simple mutexes:

v4.4.1 Modifications for best practices compliance

15 May 14:35
368a61a
Compare
Choose a tag to compare
  • Class constructors and begin() methods updated according to Arduino best practices recomendations.

v4.4.0 Backwards compatible method addition

22 Jan 18:34
d9815d5
Compare
Choose a tag to compare

v4.0.0 Backwards compatible method addition

  • Added the possibility to start the MPBttn disabled. Implemented for all DbncdMPBttn subclasses objects
  • Added the setBeginDisabled() method to control the option of starting the MPB update in isDisabled = true state

v4.3.1 Code cleanup and optimization

19 Jan 16:41
45348b0
Compare
Choose a tag to compare

v4.3.1 Improvements and additions

  • Added support for the GPIO_NUM_MAX macro value (hardware dependant).
  • _otptsSttsPkg() virtual property confirmation for all subclasses.
  • Unneeded redundant code cleanup.
  • Code simplification: use of fncPtrType for declarations of attributes and methods

v4.3.0 Improvements and additions

  • Added default constructors to all the classes that hadn't. Addition required for some dinamically created objects.
  • Added the use of standard GPIO_NUM_NC to define an invalid pin number (non connected)
  • Added the use of standard GPIO_NUM_MAX to validate the pin number for verifications
  • All pin related constructor parameters types have been changed from uint8_t to int8_t, to make easy use of the GPIO_NUM_NC macro value (-1)

v4.2.0 Debugging, improvements and normalization release

10 Nov 11:39
18fd881
Compare
Choose a tag to compare

Debugging:

  • HntdTmLtchMPBttn objects had wrong logic settings when entering the isDisabled state for some keepPilot and isOnDisabled combinations.

Improvements:

  • DFA unconditional state changes allowed to cascade on more classes' state machines.

Normalization:

  • The DblActnLtchMPBttn subclasses objects exited the isDisabled state in a sequence not consistent with other classes' objects.
  • isOnScndry attribute flag moved upwards the classes hierachy. Now all DblActnLtchMPBttn subclasses include the attribute flag and have access to it's value through its getters, task and functions execution when turning On & Off.

v4.1.0 Debugging and improvements release

25 Sep 16:19
Compare
Choose a tag to compare

Refactoring:

  • The setOutputsChange() and getOutputsChange() transparently changed. The API was not changed -it still sets and returns a boolean value- but internally now keeps a counter to avoid multithread developments generated race conditions.
    Debugging:
  • The use of getters and taskNotify mechanisms for the same attribute flags at the same time generated unexpected results due to race conditions: SOLVED.
  • Code overall simplification and cleanup.
  • DFA unconditional state changes allowed to cascade on more classes' state machines.
    Example files:
  • Several example files added.
  • Some example files modified to show different solutions approaches for the same results.

v4.0.4 Maintenance release

19 Sep 12:58
Compare
Choose a tag to compare
  • Code cleanup.
  • Auto documentation generation problems solved, documentation regenerated.
  • Several examples added for most of the classes.

v4.0.3 Minor debugging

17 Sep 17:07
f38865b
Compare
Choose a tag to compare
  • The clearStatus() method for the HntdTmLtchMPBttn class ignored the resetting of some flags that left open the possibility of uncomplete state clearing. Corrected.
  • Several examples added for most of the classes.

v4.0.2 Refactoring update

16 Sep 19:19
00289ac
Compare
Choose a tag to compare

All changes are transparent to the user.

  • outputschange attribute flag setting added, as the isOn, isEnabled, pilotOn, wrnngOn, isVoided, isOnScndry simple value assignement are refactored into full methods.
  • outputschange attribute flag setting by simple assignement after above mentioned methods execution removed (as it now is uneeded code duplication).
  • Examples added for several classes.