As of May 31, 2023, we have updated our Code of Conduct.
12 votes
Accepted

How to increase SD card write speed in arduino

OK. So, I tried the SDFat lib. This library is definitely better than the default SD library that comes with adruino. But that is not how I solved my problem of low data-rate. I followed the ...
Ashish Ranjan's user avatar
7 votes
Accepted

EEPROM.get returns bad data

You are saving a String object in EEPROM, which is useless. A string object does not store the contents of your string. Instead, it just stores: the memory address where the actual contents (the ...
Edgar Bonet's user avatar
  • 40.2k
5 votes

Is it possible to use extra AVR Flash memory as non-volatile EEPROM-like Flash memory storage?

Yes you can. This Arduino IDE add on lets you make calls to code store in the bootload of memory so you can make changes to the flash memory. https://majek.sh/en/writing-to-internal-flash-on-arduino/ ...
CrossRoads's user avatar
  • 2,384
5 votes
Accepted

Is it possible to use extra AVR Flash memory as non-volatile EEPROM-like Flash memory storage?

The answer is "yes, you can use extra AVR Flash memory as non-volatile EEPROM-like Flash memory storage, very similar to an STM32 microcontroller." One of these days I'm going to write an Arduino ...
Gabriel Staples's user avatar
5 votes
Accepted

HTTP-POST returns 400 when posting a value from the sensor

Your line int httpResponseCode = http.POST("{\"amount\":\"total\"}"); is not doing what you think it's doing. You're not placing the contents of the variable called ...
Majenko's user avatar
  • 104k
4 votes
Accepted

Unpacking Arduino binary data on a python sketch

I'm somewhat confused by the flow of your program, so instead I will tell you how I would handle the data. You have a single-byte header, then 7 bytes of data, followed by a single byte checksum. ...
Majenko's user avatar
  • 104k
4 votes
Accepted

Simultaneously reading data from multiple serial ports

My question here is how can I simultaneously read out all the data from the different serial ports on the arduino mega sketch. As you are using several serial ports data can already be received ...
Mikael Patel's user avatar
  • 7,929
4 votes

How to increase SD card write speed in arduino

Many factors would decide if you can reach this wanted speed. Only some of these. 1. Your Software The SdFat Library is faster than the standard SD Library of the Arduino IDE. It also has an easy to ...
William Roy's user avatar
4 votes

How to increase SD card write speed in arduino

Avoid the handshake getting a buffer! Use SD.write(buf,size); Hi every one, I'm working in a project with the same issue. I was following the same steps of yours and got exactly the same numbers. I'...
Pinipa's user avatar
  • 41
4 votes

Sum values, store them and print the last value

What you want to do is integrate the flow rate vs time curve. You have to keep track of the current flow rate. You also need to choose some unit of time measurement; this depends on how often you're ...
SoreDakeNoKoto's user avatar
4 votes
Accepted

How to connect 70 analog sensor to a single Arduino (Mega or Uno) device?

There are fairly inexpensive chips called "analog multiplexers" which let you choose one input out of a range (8 or 16 is typical). You could take the reading, then switch to a different input, and ...
Nick Gammon's user avatar
  • 36.4k
4 votes

Using a Micro SD card for data logging, bad idea? Reliable?

We've been maintaining a network of loggers (60+ currently deployed) using SD card connected directly to the SPI pins (see: http://www.mdpi.com/1424-8220/18/2/530 for details) and our experience is ...
Ed Mallon's user avatar
  • 101
4 votes

Writing to sd card with a sampling rate 50ms or less? I have a sketch that writes to sd every 1s but jams at faster sampling rates. Please help?

Some tips: Do not open the open and close the file in every loop sequence (I think you can use the flush command to save/update the file. Do not save strings, but save the raw data and pulse string. ...
Michel Keijzers's user avatar
3 votes

Inherent delay running EEPROM.read()

When I store it in the EEPROM, the extra time required to find it in EEPROM, pull it through the sketch, and then push it through to the db corrupts the data sourced from EEPROM and posts a jumbled ...
Majenko's user avatar
  • 104k
3 votes
Accepted

What happens when there's no space left on SD card?

Open-source is just great. Lets have a look at the source code for SD. Here is what happens on write of a block. /** * Write data to an open file. * * \note Data is moved to the cache but may not ...
Mikael Patel's user avatar
  • 7,929
3 votes
Accepted

Grab keys from an ordinary USB keyboard

As suggested in the comments, you have two options: As suggested by Majenko, you can use the Arduino USB Host Shield: Alternatively you could use a PS2 keyboard instead (as suggested by Gerben). ...
sa_leinad's user avatar
  • 3,128
3 votes
Accepted

Data loging while browsing a menu on LCD shield

The key is that the menu code must never wait as the operateMainMenu() function does. Instead, it has to test the buttons, do a required task, if any, quickly, and return. This means it depends on ...
JRobert's user avatar
  • 14.8k
3 votes
Accepted

How to manage two alarms with one interrupt?

Consider it is good practice to leave as little code in an interrupt as possible. In this case, as the time in question is much greater then how often the loop() function is called, setting a single ...
st2000's user avatar
  • 6,891
3 votes

EEPROM.get returns bad data

Just to have the full working code, I ended up with this: #include <EEPROM.h> char serial_characters[] = {"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"}; // 7 chars for serial and one for string end '...
adrianTNT's user avatar
  • 242
3 votes
Accepted

Where is the Arduino IDE log file located? Not the Serial Monitor

There is no log file. Instead you need to turn on both "compilation" and "upload" under the "Show verbose output during:" option in Preferences. This will give you far ...
Majenko's user avatar
  • 104k
3 votes
Accepted

how can I delete contents of an SD card in arduino?

To remove a file use SD.remove("datalog.txt"); SD library's FILE_WRITE is O_READ | O_WRITE | O_CREAT | O_APPEND so it would append at the end of the existing file. to start with an empty ...
Juraj's user avatar
  • 17.2k
3 votes

Can I use Data Logger Shield with Arduino Sensor shield V5.0?

The 'data logging' shield by Adafruit and Deek Robot has two devices. First device is the SD card which uses SPI bus. Every SPI device on the SPI bus has to have a select pin CS. On this shield the SD ...
Juraj's user avatar
  • 17.2k
3 votes

How do you deal with balancing the limited storage of Arduino with the decrease in speed if you just print everything as it gets measured?

This is all about choosing the right tool for the job. At the moment you're trying to fit 50 clowns into a mini. While there are ways of doing it (by extending the "mini" outwards with extra ...
Majenko's user avatar
  • 104k
2 votes

Connect Arduino to MySQL database online problem

There are two basic things wrong with your code. First is the formatting of your headers - you have mistakenly used client.println for sending the first part of the Host: header, so it becomes split ...
Majenko's user avatar
  • 104k
2 votes

Arduino Uno data logger shield recording nonsense time

Where are you brining the power onto the Arduino board? If you bring it in through the external power connector you need to account for the voltage needed to run the regulator. You might be running ...
dlu's user avatar
  • 1,651
2 votes

Cost-effective storage for prototyping

You may not want to hear this, but the cheapest option would be an SD card, or a micro-SD card. You could solder it into place, thus making it quite hard for the end user to take it out and plug it ...
Nick Gammon's user avatar
  • 36.4k
2 votes

Arduino Uno data logger shield recording nonsense time

The problem was indeed a question of voltage. I was using the battery to supply 5 volts to the DC power port, which as suggested by the comments needs 7 volts or more. The problem is fixed by using ...
GIVW's user avatar
  • 31
2 votes
Accepted

Interfacing to scale over RS-232

The solution turned out to be a couple of things, some of which mentioned by others in the comments. Problems that needed to be fixed: My level-shifter was a huge part of the problem. I switched to ...
Michael Molter's user avatar
2 votes
Accepted

Compare the new sample in a high sampling rate datalogger

In the function ISR(ADC_vect) { the variable d contains the current sample: // Read ADC data. #if RECORD_EIGHT_BITS uint8_t d = ADCH; #else // RECORD_EIGHT_BITS // This will access ADCL ...
Majenko's user avatar
  • 104k
2 votes
Accepted

What is the point of a adafruit data logger

Are you referring to this? That is a shield that has an SD card interface (with appropriate level-shifting for the SD card) plus a real-time clock. The rest is "prototyping" area for you to install ...
Nick Gammon's user avatar
  • 36.4k

Only top scored, non community-wiki answers of a minimum length are eligible