MCP23S17 - compatibility matrix

This report was generated on Wednesday, 23-Feb-22 22:48:15 CET using arduino-testlib.

MCP23S17

Version: 0.1.2
More details

Compatibility matrix

Board Claims compatibility Inclusion
MCP23S17_digitalRead
MCP23S17_digitalWrite
MCP23S17_performance
arduino:avr:uno
1.8.4
Yes PASS PASS PASS PASS
arduino:mbed_nano:nanorp2040connect
2.7.2
Yes ⚠️ FAIL FAIL FAIL FAIL
arduino:megaavr:nona4809
1.8.7
Yes PASS PASS PASS PASS
arduino:samd:mkrwifi1010
1.8.12
Yes ⚠️ FAIL FAIL FAIL FAIL
esp32:esp32:d1_mini32
1.0.6
Yes PASS PASS PASS PASS

Compilation logs

arduino:avr:uno @ 1.8.4

Inclusion

Result: PASS

Sketch uses 444 bytes (1%) of program storage space. Maximum is 32256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.

examples/MCP23S17_digitalRead

Result: PASS

Sketch uses 3650 bytes (11%) of program storage space. Maximum is 32256 bytes.
Global variables use 261 bytes (12%) of dynamic memory, leaving 1787 bytes for local variables. Maximum is 2048 bytes.

examples/MCP23S17_digitalWrite

Result: PASS

Sketch uses 3780 bytes (11%) of program storage space. Maximum is 32256 bytes.
Global variables use 289 bytes (14%) of dynamic memory, leaving 1759 bytes for local variables. Maximum is 2048 bytes.

examples/MCP23S17_performance

Result: PASS

Sketch uses 5670 bytes (17%) of program storage space. Maximum is 32256 bytes.
Global variables use 455 bytes (22%) of dynamic memory, leaving 1593 bytes for local variables. Maximum is 2048 bytes.

arduino:mbed_nano:nanorp2040connect @ 2.7.2

Inclusion

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp: In member function 'uint8_t MCP23S17::swSPI_transfer(uint8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:652:30: error: invalid conversion from 'int' to 'PinStatus' [-fpermissive]
     ::digitalWrite(dao, (val & mask));
                         ~~~~~^~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/variants/NANO_RP2040_CONNECT/pinmode_arduino.h:30:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Arduino.h:26,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:16:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/api/Common.h:96:6: note:   initializing argument 2 of 'void digitalWrite(pin_size_t, PinStatus)'
 void digitalWrite(pin_size_t pinNumber, PinStatus status);
      ^~~~~~~~~~~~

examples/MCP23S17_digitalRead

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp: In member function 'uint8_t MCP23S17::swSPI_transfer(uint8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:652:30: error: invalid conversion from 'int' to 'PinStatus' [-fpermissive]
     ::digitalWrite(dao, (val & mask));
                         ~~~~~^~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/variants/NANO_RP2040_CONNECT/pinmode_arduino.h:30:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Arduino.h:26,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:16:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/api/Common.h:96:6: note:   initializing argument 2 of 'void digitalWrite(pin_size_t, PinStatus)'
 void digitalWrite(pin_size_t pinNumber, PinStatus status);
      ^~~~~~~~~~~~

examples/MCP23S17_digitalWrite

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp: In member function 'uint8_t MCP23S17::swSPI_transfer(uint8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:652:30: error: invalid conversion from 'int' to 'PinStatus' [-fpermissive]
     ::digitalWrite(dao, (val & mask));
                         ~~~~~^~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/variants/NANO_RP2040_CONNECT/pinmode_arduino.h:30:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Arduino.h:26,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:16:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/api/Common.h:96:6: note:   initializing argument 2 of 'void digitalWrite(pin_size_t, PinStatus)'
 void digitalWrite(pin_size_t pinNumber, PinStatus status);
      ^~~~~~~~~~~~

examples/MCP23S17_performance

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp: In member function 'uint8_t MCP23S17::swSPI_transfer(uint8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:652:30: error: invalid conversion from 'int' to 'PinStatus' [-fpermissive]
     ::digitalWrite(dao, (val & mask));
                         ~~~~~^~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/variants/NANO_RP2040_CONNECT/pinmode_arduino.h:30:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Arduino.h:26,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:16:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/api/Common.h:96:6: note:   initializing argument 2 of 'void digitalWrite(pin_size_t, PinStatus)'
 void digitalWrite(pin_size_t pinNumber, PinStatus status);
      ^~~~~~~~~~~~

arduino:megaavr:nona4809 @ 1.8.7

Inclusion

Result: PASS

Sketch uses 3246 bytes (6%) of program storage space. Maximum is 49152 bytes.
Global variables use 40 bytes (0%) of dynamic memory, leaving 6104 bytes for local variables. Maximum is 6144 bytes.

examples/MCP23S17_digitalRead

Result: PASS

Sketch uses 6921 bytes (14%) of program storage space. Maximum is 49152 bytes.
Global variables use 282 bytes (4%) of dynamic memory, leaving 5862 bytes for local variables. Maximum is 6144 bytes.

examples/MCP23S17_digitalWrite

Result: PASS

Sketch uses 7034 bytes (14%) of program storage space. Maximum is 49152 bytes.
Global variables use 282 bytes (4%) of dynamic memory, leaving 5862 bytes for local variables. Maximum is 6144 bytes.

examples/MCP23S17_performance

Result: PASS

Sketch uses 9005 bytes (18%) of program storage space. Maximum is 49152 bytes.
Global variables use 286 bytes (4%) of dynamic memory, leaving 5858 bytes for local variables. Maximum is 6144 bytes.

arduino:samd:mkrwifi1010 @ 1.8.12

Inclusion

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp: In member function 'uint8_t MCP23S17::swSPI_transfer(uint8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:652:30: error: invalid conversion from 'int' to 'PinStatus' [-fpermissive]
     ::digitalWrite(dao, (val & mask));
                         ~~~~~^~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/Interrupts.h:8:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/ArduinoAPI.h:29,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Arduino.h:23,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:16:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/Common.h:95:6: note:   initializing argument 2 of 'void digitalWrite(pin_size_t, PinStatus)'
 void digitalWrite(pin_size_t pinNumber, PinStatus status);
      ^~~~~~~~~~~~

examples/MCP23S17_digitalRead

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp: In member function 'uint8_t MCP23S17::swSPI_transfer(uint8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:652:30: error: invalid conversion from 'int' to 'PinStatus' [-fpermissive]
     ::digitalWrite(dao, (val & mask));
                         ~~~~~^~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/Interrupts.h:8:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/ArduinoAPI.h:29,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Arduino.h:23,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:16:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/Common.h:95:6: note:   initializing argument 2 of 'void digitalWrite(pin_size_t, PinStatus)'
 void digitalWrite(pin_size_t pinNumber, PinStatus status);
      ^~~~~~~~~~~~

examples/MCP23S17_digitalWrite

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp: In member function 'uint8_t MCP23S17::swSPI_transfer(uint8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:652:30: error: invalid conversion from 'int' to 'PinStatus' [-fpermissive]
     ::digitalWrite(dao, (val & mask));
                         ~~~~~^~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/Interrupts.h:8:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/ArduinoAPI.h:29,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Arduino.h:23,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:16:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/Common.h:95:6: note:   initializing argument 2 of 'void digitalWrite(pin_size_t, PinStatus)'
 void digitalWrite(pin_size_t pinNumber, PinStatus status);
      ^~~~~~~~~~~~

examples/MCP23S17_performance

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp: In member function 'uint8_t MCP23S17::swSPI_transfer(uint8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:652:30: error: invalid conversion from 'int' to 'PinStatus' [-fpermissive]
     ::digitalWrite(dao, (val & mask));
                         ~~~~~^~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/Interrupts.h:8:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/ArduinoAPI.h:29,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Arduino.h:23,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/MCP23S17/MCP23S17.cpp:16:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/Common.h:95:6: note:   initializing argument 2 of 'void digitalWrite(pin_size_t, PinStatus)'
 void digitalWrite(pin_size_t pinNumber, PinStatus status);
      ^~~~~~~~~~~~

esp32:esp32:d1_mini32 @ 1.0.6

Inclusion

Result: PASS

Sketch uses 199188 bytes (15%) of program storage space. Maximum is 1310720 bytes.
Global variables use 13112 bytes (4%) of dynamic memory, leaving 314568 bytes for local variables. Maximum is 327680 bytes.

examples/MCP23S17_digitalRead

Result: PASS

Sketch uses 209946 bytes (16%) of program storage space. Maximum is 1310720 bytes.
Global variables use 13528 bytes (4%) of dynamic memory, leaving 314152 bytes for local variables. Maximum is 327680 bytes.

examples/MCP23S17_digitalWrite

Result: PASS

Sketch uses 210074 bytes (16%) of program storage space. Maximum is 1310720 bytes.
Global variables use 13520 bytes (4%) of dynamic memory, leaving 314160 bytes for local variables. Maximum is 327680 bytes.

examples/MCP23S17_performance

Result: PASS

Sketch uses 211298 bytes (16%) of program storage space. Maximum is 1310720 bytes.
Global variables use 13528 bytes (4%) of dynamic memory, leaving 314152 bytes for local variables. Maximum is 327680 bytes.