garmin / LIDARLite_Arduino_Library

High-performance optical distance sensing.
Apache License 2.0
181 stars 84 forks source link

Cannot compile for Pi Pico #30

Open costasvav opened 1 year ago

costasvav commented 1 year ago

Attempting to use the Lidar V3HP with the RP2040. It does not compile for multiple boards, with the following errors:

c:\Users\vavourak\Documents\Arduino\libraries\LIDAR-Lite\src\LIDARLite_v3HP.cpp: In member function 'void LIDARLite_v3HP::read(uint8_t, uint8_t*, uint8_t, uint8_t)':
c:\Users\vavourak\Documents\Arduino\libraries\LIDAR-Lite\src\LIDARLite_v3HP.cpp:455:5: error: no matching function for call to 'TwoWire::requestFrom(uint8_t&, uint8_t&, uint8_t&, int, bool)'
  455 |     );
      |     ^
In file included from c:\Users\vavourak\Documents\Arduino\libraries\LIDAR-Lite\src\LIDARLite_v3HP.cpp:27:
C:\Users\vavourak\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\2.7.1\libraries\Wire\src/Wire.h:58:12: note: candidate: 'virtual size_t TwoWire::requestFrom(uint8_t, size_t, bool)'
   58 |     size_t requestFrom(uint8_t address, size_t quantity, bool stopBit) override;
      |            ^~~~~~~~~~~
C:\Users\vavourak\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\2.7.1\libraries\Wire\src/Wire.h:58:12: note:   candidate expects 3 arguments, 5 provided
C:\Users\vavourak\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\2.7.1\libraries\Wire\src/Wire.h:59:12: note: candidate: 'virtual size_t TwoWire::requestFrom(uint8_t, size_t)'
   59 |     size_t requestFrom(uint8_t address, size_t quantity) override;
      |            ^~~~~~~~~~~
C:\Users\vavourak\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\2.7.1\libraries\Wire\src/Wire.h:59:12: note:   candidate expects 2 arguments, 5 provided
c:\Users\vavourak\Documents\Arduino\libraries\LIDAR-Lite\src\LIDARLite_v4LED.cpp: In member function 'void LIDARLite_v4LED::read(uint8_t, uint8_t*, uint8_t, uint8_t)':
c:\Users\vavourak\Documents\Arduino\libraries\LIDAR-Lite\src\LIDARLite_v4LED.cpp:426:5: error: no matching function for call to 'TwoWire::requestFrom(uint8_t&, uint8_t&, uint8_t&, int, bool)'
  426 |     );
      |     ^
In file included from c:\Users\vavourak\Documents\Arduino\libraries\LIDAR-Lite\src\LIDARLite_v4LED.cpp:27:
C:\Users\vavourak\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\2.7.1\libraries\Wire\src/Wire.h:58:12: note: candidate: 'virtual size_t TwoWire::requestFrom(uint8_t, size_t, bool)'
   58 |     size_t requestFrom(uint8_t address, size_t quantity, bool stopBit) override;
      |            ^~~~~~~~~~~
C:\Users\vavourak\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\2.7.1\libraries\Wire\src/Wire.h:58:12: note:   candidate expects 3 arguments, 5 provided
C:\Users\vavourak\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\2.7.1\libraries\Wire\src/Wire.h:59:12: note: candidate: 'virtual size_t TwoWire::requestFrom(uint8_t, size_t)'
   59 |     size_t requestFrom(uint8_t address, size_t quantity) override;
      |            ^~~~~~~~~~~
C:\Users\vavourak\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\2.7.1\libraries\Wire\src/Wire.h:59:12: note:   candidate expects 2 arguments, 5 provided

exit status 1

Compilation error: exit status 1

Is there anyway to fix this? Thanks!