46 bool begin(SPIClass &spi, uint8_t csPin,
int mosi = -1,
int miso = -1,
int sck = -1)
49 return beginCommon<SensorCommSPI, HalArduino>(
comm,
hal, spi, csPin, mosi, miso, sck);
52#elif defined(ESP_PLATFORM)
59 bool begin(spi_host_device_t host, spi_device_handle_t handle,
60 uint8_t csPin,
int mosi = -1,
int miso = -1,
int sck = -1)
63 return beginCommon<SensorCommSPI, HalEspIDF>(
comm,
hal, host, handle, csPin, mosi, miso, sck);
79 return beginCommCustomCallback<SensorCommCustom, SensorCommCustomHal>(
91 if (!
comm || !
hal)
return false;
std::unique_ptr< SensorCommBase > comm
bool beginLifecycle(uint8_t addr, uint8_t iface, uint8_t initParam, CreateComm createComm)
std::unique_ptr< SensorHal > hal
bool ensureValid() const override
Ensure the communication interface is valid.
bool begin(SensorCommCustom::CustomCallback callback, SensorCommCustomHal::CustomHalCallback hal_callback)
Initialize the sensor using custom callback interface.
uint32_t(*)(Operation op, void *param1, void *param2) CustomHalCallback
bool(*)(uint8_t addr, uint8_t reg, uint8_t *buf, size_t len, bool writeReg, bool isWrite) CustomCallback
uint32_t hal_callback(SensorCommCustomHal::Operation op, void *param1, void *param2)