Arduino+DS18B20+LCD+Cayenne - shows -273,1C all the time

Hello.
I had small Arduino project based on UNO + LCD on I2C + 2x DS18B20 onewire. It shows on LCD temperatures from 2 sensors and it worked perfectly for 2 years. Here is how code for that looks like:

Now I discovered Cayenne, so I immidiately wanted to export those readings to cloud and see those beautiful charts. Problem started when I merged Cayenne code with my code. Here is how it looks like now:

And results of that:

compilation runs ok
lcd works - shows strings from code
ethernet works - uploads data to cayenne
ds18b20 doesn’t work - shows -273,1C both in lcd and in dashboard
I thought that I messed some wiring during ethernet shield connection, but when I removed it and uploaded back old code it works ok and shows temperatures. When on working device i pull up probe pin from arduino it shows -273,1 on LCD so I think that the problem is here but I don’t know where exactly.

Things I tried to do and did not help:

unmounted ethernet shield and mounted it to second arduino - same result - -273,1C
increase power supply from 1A to 2A - thought maybe shield eats too much power so probes don’t work
disconnect and connect all wiring again
disconnect temp probe from PIN3 on shield and touch PIN3 on bottom of arduino
moved probe from PIN3 to PIN7 and PIN10 (both in code and in wiring :P) in case if PIN3 is somehow reserved by eth shield but no changes
Any ideas what can be wrong in here?

I can post photo of wiring, but I don’t think there is a point to do that. It was taken from the simplest onewire tutorial for DS18B20 and since it works when I upload old code and remove shield I assume that problem is with my code merging.

Hi,
Not sure about your problem but here's an example of working DS18B20 code to Cayenne:

https://arduinoinfo.mywikis.net/wiki/Arduino-Project-Home-Monitor-Control

Thanks for that. I see that there is prepared sketch for DS18B20 with Cayenne so I used it and now I have a little different problem, but still.

Sketch I found uses dallastemperature.h lib instead of ds18b20.h, I used it and it works:

But when I add LCD code into it:

then it shows -127C. I thought there is a problem with converting sensor output to float in here:

float temperature0 = sensors.getTempCByIndex(0);

but -127C is not only on LCD but also in data uploaded to Cayenne. It is being uploaded with same code line as in top source code and there it works sp it is not matter of conversion. Clearly LCD messes something, maybe with two serials 115200 and 9600, no idea how that works, used ready I2C LCD code from tutorial, but it somehows disturbs probe readings.