Hello, I have started a teston my new giga r1 device with the simplest example of the DALLASTEMPERATURE examples called "SINGLE", wich uses DALLAS TEMPERATURE LIBRARIES.
It has never worked, I tried to burn flash , boot as suggested in technical support, reseting,etc etc. and NOTHING. The problem is when i want to work with dallas temperature, please if anyone has the solution helpme. Thank you.
Hi @juanfr65.
It will not be possible for us to help you with that problem based on such a vague description. Please add a forum reply here that provides a detailed explanation of what you mean by this, including:
- What did you do?
- What were the results you expected from doing that thing?
- What were the results you observed that did not match your expectations?
Make sure to include the full and exact text of any error or warning messages you might have encountered.
Hello everybody.
I am experiencing similar issues with the GIGA R1 WiFi board, powered via USB-C.
Everything is ok on the Arduino MKR WiFi 1010.
To me, there seems to be a problem in the begin()
function from DallaTemperature
class. From there on, the GIGA R1 board crashes (red light, 4 slow + 4 fast blinks). Afterwards, I must double-click RST button to be able to upload any new sketch.
The Arduino GIGA R1 crashes both with nothing linked to it and with a waterproof DS18B20 sensor linked to D2.
The sketch is as simple as the Simple.ino one provided as an example by DallasTemperature, with a few minor changes:
// Include the libraries we need
#include <OneWire.h>
#include <DallasTemperature.h>
// Data wire is plugged into port 2 on the Arduino
#define ONE_WIRE_BUS 2
// Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
OneWire oneWire(ONE_WIRE_BUS);
// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);
/*
* The setup function. We only start the sensors here
*/
void setup(void)
{
// start serial port
Serial.begin(9600);
while(!Serial)
{ delay(100); }
Serial.println("Dallas Temperature IC Control Library Demo");
// Start up the library
sensors.begin();
}
/*
* Main function, get and show the temperature
*/
void loop(void)
{
// call sensors.requestTemperatures() to issue a global temperature
// request to all devices on the bus
Serial.print("Requesting temperatures...");
sensors.requestTemperatures(); // Send the command to get temperatures
Serial.println("DONE");
// After we got the temperatures, we can print them here.
// We use the function ByIndex, and as an example get the temperature from the first sensor only.
float tempC = sensors.getTempCByIndex(0);
// Check if reading was successful
if(tempC != DEVICE_DISCONNECTED_C)
{
Serial.print("Temperature for the device 1 (index 0) is: ");
Serial.println(tempC);
}
else
{
Serial.println("Error: Could not read temperature data");
}
}
explanation: loading the sketch containing the DALLASTEMP library APPARENTLY completes the loading satisfactorily .THESE ARE THE MESSAGES in the IDE ARDUINO:
Download done.
File downloaded successfully
Warning: Invalid DFU suffix signature
A valid DFU suffix will be required in a future dfu-util release
Transitioning to dfuMANIFEST statebut you definitely lose control of the port and don't get it back, so if I want to see a read result on the serial monitor I don't see it anymore, and it's flashing The LED booting IN RED COLOR ALL THE TIME AND IT IS IMPOSSIBLE TO CHARGE OR DETECT THE CARD AS LONG AS I DO NOT PRESS THE RESET BUTTON 2 TIMES IN A ROW.I have to revisit the fact that I have already run the sketch on Arduino UNO, MEGA, UNO R4 WIFI, ESP32 and in all those cards the sensor reading works perfectly.
IN ADDITION, THIS CARD DOES WORK WITH SIMPLE ANALOG PIN READINGS AND I HAVE ALSO TESTED IT WITH WIFI TEST SKETCH CORRECTLY.
I have found the crash seems to happen on noInterrupts()
function from OneWire::reset()
.
I am trying to fix the problem, but no luck so far.
Any help? Thank you
It seems I have just solve the issue.
OneWire's developers had already updated their library in order to work with the mbed OS, except they have not released it yet. To me it was enough to substitute the utils
folder of the OneWire library automatically dowloaded by Arduino IDE with the one downloaded from the OneWire project on GitHub.
I have the same problem, I tried to change the library as you said, but the problem persists. Did you have any other solutions?
Hi @kiry32.
Are you still experiencing the problem? If so, please provide a detailed description of what you mean by "same problem" in a reply on this forum thread, including:
- What did you do?
- What were the results you expected from doing that thing?
- What were the results you observed that did not match your expectations?
Make sure to include the full and exact text of any error or warning messages you might have encountered.