tinkerspy / Automaton

Reactive State Machine Framework for Arduino

Home Page:https://github.com/tinkerspy/Automaton/wiki

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Support for Arduino WiFi Rev 2? (ATMEGA4809)

opened this issue · comments

Hello!

I have been using automaton on my Arduino Uno for the past 2 months. Today I upgraded my Arduino to a WIFI REV 2, because I need IoT capabilities for my project. When I tried to compile the file for REV 2, I got the following errors:

/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_bit.cpp: In member function 'virtual void Atm_bit::action(int)':
/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_bit.cpp:29:82: error: cannot convert 'bool' to 'PinStatus' for argument '2' to 'void digitalWrite(pin_size_t, PinStatus)'
       if ( indicator > -1 ) digitalWrite( indicator, !LOW != !indicatorActiveLow );
                                                                                  ^
/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_bit.cpp:34:83: error: cannot convert 'bool' to 'PinStatus' for argument '2' to 'void digitalWrite(pin_size_t, PinStatus)'
       if ( indicator > -1 ) digitalWrite( indicator, !HIGH != !indicatorActiveLow );
                                                                                   ^
/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_digital.cpp: In member function 'virtual void Atm_digital::action(int)':
/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_digital.cpp:39:83: error: cannot convert 'bool' to 'PinStatus' for argument '2' to 'void digitalWrite(pin_size_t, PinStatus)'
       if ( indicator > -1 ) digitalWrite( indicator, !HIGH != !indicatorActiveLow );
                                                                                   ^
/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_digital.cpp:43:82: error: cannot convert 'bool' to 'PinStatus' for argument '2' to 'void digitalWrite(pin_size_t, PinStatus)'
       if ( indicator > -1 ) digitalWrite( indicator, !LOW != !indicatorActiveLow );
                                                                                  ^
/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_controller.cpp: In member function 'virtual void Atm_controller::action(int)':
/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_controller.cpp:34:82: error: cannot convert 'bool' to 'PinStatus' for argument '2' to 'void digitalWrite(pin_size_t, PinStatus)'
       if ( indicator > -1 ) digitalWrite( indicator, !LOW != !indicatorActiveLow );
                                                                                  ^
/Users/felipe/Documents/Arduino/libraries/Automaton/src/Atm_controller.cpp:39:83: error: cannot convert 'bool' to 'PinStatus' for argument '2' to 'void digitalWrite(pin_size_t, PinStatus)'
       if ( indicator > -1 ) digitalWrite( indicator, !HIGH != !indicatorActiveLow );

I am only using the Automaton Atm_analog machine for the code that generated error shown above.

I know that Automaton is not written for the ATMEGA4809 chip and that there are some compatibility problems.

However, I know that I can fix these issues by editing the library source code as it is explained in the following post (for another library):

https://forum.arduino.cc/index.php?topic=584322.0

I do not feel confident enough to update the library on myself, I am wondering if anyone can give me some sort of direction on how to approach this.

Thanks,

F

I don't know if I want to support this strange move from Arduino. I think they should've been able to keep things backwards compatible. Maybe if the Wifi v2 turns out to be as popular as the ESP range.