Is The Sensirion Library Broken With Newer IDEs?

Hi all, I’m using an Arduino Mega to communicate with an SHT75 humidity sensor from Sensirion.
When compiling the ‘SimpleSensirion’ example sketch (see below) I get some errors (also below example code)

Sketch used:

/*
 * Query a SHT10 temperature and humidity sensor
 *
 * A simple example that queries the sensor every 5 seconds
 * and communicates the result over a serial connection.
 * Error handling is omitted in this example.
 */

#include <Sensirion.h>

const uint8_t dataPin  =  2;
const uint8_t clockPin =  3;

float temperature;
float humidity;
float dewpoint;

Sensirion tempSensor = Sensirion(dataPin, clockPin);

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  tempSensor.measure(&temperature, &humidity, &dewpoint);

  
  Serial.write(temperature);
  Serial.write(" C, Humidity: ");
  Serial.write(humidity);
  Serial.write(" %, Dewpoint: ");
  Serial.write(dewpoint);
  Serial.write(" C");
  
  delay(5000);  
}

Resulting errors:

Warning: platform.txt from core 'ESP8266 Modules' contains deprecated recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{build.path}/{archive_file}" "{object_file}", automatically converted to recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{archive_file_path}" "{object_file}". Consider upgrading this core.
F:\Arduino\libraries\Sensirion\examples\SimpleSensirion\SimpleSensirion.ino: In function 'void loop()':

SimpleSensirion:30: error: call of overloaded 'write(float&)' is ambiguous

   Serial.write(temperature);

                           ^

F:\Arduino\libraries\Sensirion\examples\SimpleSensirion\SimpleSensirion.ino:30:27: note: candidates are:

In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:224:0,

                 from sketch\SimpleSensirion.ino.cpp:1:

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:129:20: note: virtual size_t HardwareSerial::write(uint8_t)

     virtual size_t write(uint8_t);

                    ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:130:19: note: size_t HardwareSerial::write(long unsigned int)

     inline size_t write(unsigned long n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:131:19: note: size_t HardwareSerial::write(long int)

     inline size_t write(long n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:132:19: note: size_t HardwareSerial::write(unsigned int)

     inline size_t write(unsigned int n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:133:19: note: size_t HardwareSerial::write(int)

     inline size_t write(int n) { return write((uint8_t)n); }

                   ^

SimpleSensirion:32: error: call of overloaded 'write(float&)' is ambiguous

   Serial.write(humidity);

                        ^

F:\Arduino\libraries\Sensirion\examples\SimpleSensirion\SimpleSensirion.ino:32:24: note: candidates are:

In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:224:0,

                 from sketch\SimpleSensirion.ino.cpp:1:

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:129:20: note: virtual size_t HardwareSerial::write(uint8_t)

     virtual size_t write(uint8_t);

                    ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:130:19: note: size_t HardwareSerial::write(long unsigned int)

     inline size_t write(unsigned long n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:131:19: note: size_t HardwareSerial::write(long int)

     inline size_t write(long n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:132:19: note: size_t HardwareSerial::write(unsigned int)

     inline size_t write(unsigned int n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:133:19: note: size_t HardwareSerial::write(int)

     inline size_t write(int n) { return write((uint8_t)n); }

                   ^

SimpleSensirion:34: error: call of overloaded 'write(float&)' is ambiguous

   Serial.write(dewpoint);

                        ^

F:\Arduino\libraries\Sensirion\examples\SimpleSensirion\SimpleSensirion.ino:34:24: note: candidates are:

In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:224:0,

                 from sketch\SimpleSensirion.ino.cpp:1:

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:129:20: note: virtual size_t HardwareSerial::write(uint8_t)

     virtual size_t write(uint8_t);

                    ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:130:19: note: size_t HardwareSerial::write(long unsigned int)

     inline size_t write(unsigned long n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:131:19: note: size_t HardwareSerial::write(long int)

     inline size_t write(long n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:132:19: note: size_t HardwareSerial::write(unsigned int)

     inline size_t write(unsigned int n) { return write((uint8_t)n); }

                   ^

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:133:19: note: size_t HardwareSerial::write(int)

     inline size_t write(int n) { return write((uint8_t)n); }

                   ^

exit status 1
call of overloaded 'write(float&)' is ambiguous

I’ve run this on a Due without problems in the past but not in the last six or so months has there been an IDE update that broke the library?

What have I tried?

–The obvious unplug/re-plug
–Read the library documentation and tried to follow instructions to un-comment out a line but this line did not exist in any of the library files
–Updated IDE
–Updated libraries where possible
–Searched for updated libraries as Sensirion is not an Arduino brand library
–Search forum for others with similar issues, one mentioned deleting the ‘Esplora’ folder, no luck with that but why would that work?
–Successfully ran the ‘Blink’ sketch to eliminate board issues
–The only thing left is to try and find an older IDE.

Any ideas? Is there something I’m looking at that is obvious?

Thanks,

GaGa