New answers tagged

1

The FILE_WRITE in SD library is 'append' (for historical reasons) #define FILE_WRITE (O_READ | O_WRITE | O_CREAT | O_APPEND) so use File file = SD.open(filename, O_WRITE);


0

SD.seek() is the API you're looking for. It allow you to position the read/write pointer within a file. In standard C++ the fseek() API is used.


0

http.getString() creates a temporary Arduino String object and fills text into dynamic memory on the heap. Calling the method .toCharArraycopies this text to a char array, wherever you defined it. Immediately after that, the temporary String gets out of scope and the text on the heap is deleted again.


2

The return value of getString allocates and the deletes a char array in heap for a temporary String object. For ESP8266HTTPClient and ESP32 HTTPClient library you can use writeToStream or getStream()to read the response without using String class with getString(), where stream is WiFiClient& stream = client.getStream(); getStream, returns the ...


0

This was an issue with the old Arduino IDE snap on Ubuntu. You can easily fix this by installing the new arduino snap: snap install arduino Then add your user to the dailout group: sudo usermod -a -G dialout $USER After this, reboot your device and open Arduino IDE. Installing additional libraries The Arduino IDE snap runs inside of a sandbox for ...


3

I fully agree with Edgar Bonet. My opinion is keeping a 'matrix' is better, or actually one array (of structs), where each array elements stores all information for one measurement (which is stored inside one struct). This has some benefits: Data of one measurement is consecutive in memory, so you can easily transfer it (to some external memory or sending ...


Top 50 recent answers are included