From cfa6efc3fbcce4dc9a0d64e6ff18924f1cf8a28c Mon Sep 17 00:00:00 2001 From: ant Date: Thu, 14 Oct 2021 12:26:47 +0100 Subject: [PATCH 1/3] Re-add with clean master --- libraries/Wire/src/Wire.cpp | 8 ++++++++ libraries/Wire/src/Wire.h | 1 + 2 files changed, 9 insertions(+) diff --git a/libraries/Wire/src/Wire.cpp b/libraries/Wire/src/Wire.cpp index 1c8775f0871..e62083a7eb5 100644 --- a/libraries/Wire/src/Wire.cpp +++ b/libraries/Wire/src/Wire.cpp @@ -455,6 +455,14 @@ uint8_t TwoWire::requestFrom(uint16_t address, uint8_t quantity, uint8_t sendSto return requestFrom(address, static_cast(quantity), static_cast(sendStop)); } +/* Added to match the Arduino function definition: https://github.com/arduino/ArduinoCore-API/blob/173e8eadced2ad32eeb93bcbd5c49f8d6a055ea6/api/HardwareI2C.h#L39 + * See: https://github.com/arduino-libraries/ArduinoECCX08/issues/25 +*/ +size_t requestFrom(uint8_t address, size_t len, bool stopBit) +{ + return requestFrom(address, (uint8_t)len, stopBit); +} + uint8_t TwoWire::requestFrom(uint8_t address, uint8_t quantity) { return requestFrom(static_cast(address), static_cast(quantity), true); diff --git a/libraries/Wire/src/Wire.h b/libraries/Wire/src/Wire.h index 892846b3df9..da527b58ba0 100644 --- a/libraries/Wire/src/Wire.h +++ b/libraries/Wire/src/Wire.h @@ -95,6 +95,7 @@ class TwoWire: public Stream uint8_t requestFrom(uint16_t address, uint8_t size, bool sendStop); uint8_t requestFrom(uint16_t address, uint8_t size, uint8_t sendStop); + size_t requestFrom(uint8_t address, size_t len, bool stopBit); uint8_t requestFrom(uint16_t address, uint8_t size); uint8_t requestFrom(uint8_t address, uint8_t size, uint8_t sendStop); uint8_t requestFrom(uint8_t address, uint8_t size); From 5408440cc62682a82a8568b5d57ef3b0f60c93b0 Mon Sep 17 00:00:00 2001 From: ant Date: Mon, 8 Nov 2021 11:41:59 +0000 Subject: [PATCH 2/3] Address @me-no-dev's comments --- libraries/Wire/src/Wire.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/Wire/src/Wire.cpp b/libraries/Wire/src/Wire.cpp index e62083a7eb5..d0f8370aae4 100644 --- a/libraries/Wire/src/Wire.cpp +++ b/libraries/Wire/src/Wire.cpp @@ -458,9 +458,9 @@ uint8_t TwoWire::requestFrom(uint16_t address, uint8_t quantity, uint8_t sendSto /* Added to match the Arduino function definition: https://github.com/arduino/ArduinoCore-API/blob/173e8eadced2ad32eeb93bcbd5c49f8d6a055ea6/api/HardwareI2C.h#L39 * See: https://github.com/arduino-libraries/ArduinoECCX08/issues/25 */ -size_t requestFrom(uint8_t address, size_t len, bool stopBit) +size_t TwoWire::requestFrom(uint8_t address, size_t len, bool stopBit) { - return requestFrom(address, (uint8_t)len, stopBit); + return requestFrom((uint16_t)address, (uint8_t)len, stopBit); } uint8_t TwoWire::requestFrom(uint8_t address, uint8_t quantity) From e03af1cf85bf8ecb46405f65e6d794cda1a1f46b Mon Sep 17 00:00:00 2001 From: ant Date: Mon, 8 Nov 2021 12:18:54 +0000 Subject: [PATCH 3/3] static_cast to static_cast --- libraries/Wire/src/Wire.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/libraries/Wire/src/Wire.cpp b/libraries/Wire/src/Wire.cpp index d0f8370aae4..68d82833be4 100644 --- a/libraries/Wire/src/Wire.cpp +++ b/libraries/Wire/src/Wire.cpp @@ -447,12 +447,12 @@ void TwoWire::flush(void) uint8_t TwoWire::requestFrom(uint8_t address, uint8_t quantity, uint8_t sendStop) { - return requestFrom(static_cast(address), static_cast(quantity), static_cast(sendStop)); + return requestFrom(static_cast(address), static_cast(quantity), static_cast(sendStop)); } uint8_t TwoWire::requestFrom(uint16_t address, uint8_t quantity, uint8_t sendStop) { - return requestFrom(address, static_cast(quantity), static_cast(sendStop)); + return requestFrom(address, static_cast(quantity), static_cast(sendStop)); } /* Added to match the Arduino function definition: https://github.com/arduino/ArduinoCore-API/blob/173e8eadced2ad32eeb93bcbd5c49f8d6a055ea6/api/HardwareI2C.h#L39 @@ -465,22 +465,22 @@ size_t TwoWire::requestFrom(uint8_t address, size_t len, bool stopBit) uint8_t TwoWire::requestFrom(uint8_t address, uint8_t quantity) { - return requestFrom(static_cast(address), static_cast(quantity), true); + return requestFrom(static_cast(address), static_cast(quantity), true); } uint8_t TwoWire::requestFrom(uint16_t address, uint8_t quantity) { - return requestFrom(address, static_cast(quantity), true); + return requestFrom(address, static_cast(quantity), true); } uint8_t TwoWire::requestFrom(int address, int quantity) { - return requestFrom(static_cast(address), static_cast(quantity), true); + return requestFrom(static_cast(address), static_cast(quantity), true); } uint8_t TwoWire::requestFrom(int address, int quantity, int sendStop) { - return static_cast(requestFrom(static_cast(address), static_cast(quantity), static_cast(sendStop))); + return static_cast(requestFrom(static_cast(address), static_cast(quantity), static_cast(sendStop))); } void TwoWire::beginTransmission(int address)