One of the features that could increase compatibility to almost 100% would be to write a custom SPI Arduino layer.
Except for Arduino.h and SPI.h are the only dependencies, but they do not exist for a lot of board (eq. raspberry PI).
A custom Arduino layer would always use 'software' SPI if there is no hardware support or try to use another SPI implementation.
Like the rest of the LedController v2+, it should be implemented as header only code, maybe even as singleton.
This Layer should be the only place that is depended on Hardware specific code.
In the future this layer may be used to allow more frameworks/boards to work with this library.
The header of this layer should define a generic interface, while the source files handle the platform specific implementation of that generic interface.
The library will not be portable from one platform to the next without recompiling but this makes a lot of code simpler
The features it needs to implement are the following:
Help with this appreciated.
One of the features that could increase compatibility to almost 100% would be to write a custom
SPIArduino layer.Except for
Arduino.handSPI.hare the only dependencies, but they do not exist for a lot of board (eq. raspberry PI).A custom Arduino layer would always use 'software' SPI if there is no hardware support or try to use another SPI implementation.
Like the rest of the LedController v2+, it should be implemented as header only code, maybe even as singleton.This Layer should be the only place that is depended on Hardware specific code.
In the future this layer may be used to allow more frameworks/boards to work with this library.
The header of this layer should define a generic interface, while the source files handle the platform specific implementation of that generic interface.
The library will not be portable from one platform to the next without recompiling but this makes a lot of code simpler
The features it needs to implement are the following:
Help with this appreciated.