Arduino ini Pro space limitations

I'm a newby with no previous experience of Arduino. I appreciate that I have much to learn but I learn best by doing. I find it quite hard to get the specific online tutorial that I need. I have tried the A,B,C approach but I find it difficult to stay invilved.

I started out wanting to log the current and voltage from small very small solar panels. The emphasis is on small, even by hobbist standards. I came across a project in Instructables ( which was still looks like the ideal solution. I used the links provided to buy the parts and then I waited ....and waited..

Eventually everything arrived and I set about coding the 'mini' but unfortunately I'm getting the message below when using the 'Verify' facility. Needless to say it's doesn't 'upload'.

I would appreciate some or any assistance but please bear in mind that it must be communicated as if you were taking to the fabled 6yr old. In that way I'll get it.

Below is a copy of the last paragraph message I get when the 'Verify' is complete

Linking everything together...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc" -w -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815/F294WERIVO5MF59.ino.elf" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\sketch\F294WERIVO5MF59.ino.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\Adafruit_INA219\Adafruit_INA219.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\Wire\Wire.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\Wire\utility\twi.c.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\Adafruit_SSD1306\Adafruit_SSD1306.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SPI\SPI.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\Adafruit_GFX_Library\glcdfont.c.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\Adafruit_GFX_Library\Adafruit_GFX.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\Adafruit_GFX_Library\Adafruit_SPITFT.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\MinimumSerial.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\FatFile.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\FatFileLFN.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\FatFilePrint.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\FatFileSFN.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\FatVolume.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\FmtNumber.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\StdioStream.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\fstream.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\istream.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\FatLib\ostream.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\SdCard\SdSpiCard.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\SdCard\SdSpiCardEX.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\SdCard\SdioCardEX.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\SdCard\SdioTeensy.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\SpiDriver\SdSpiESP8266.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\SpiDriver\SdSpiSAM3X.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\SpiDriver\SdSpiSTM32.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815\libraries\SdFat\SpiDriver\SdSpiTeensy3.cpp.o" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815/..\arduino_cache_940552\core\core_arduino_avr_pro_cpu_16MHzatmega328_0c812875ac70eb4a9b385d8fb077f54c.a" "-LC:\Users\Ian\AppData\Local\Temp\arduino_build_759815" -lm
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815/F294WERIVO5MF59.ino.elf" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815/F294WERIVO5MF59.ino.eep"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -R .eeprom "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815/F294WERIVO5MF59.ino.elf" "C:\Users\Ian\AppData\Local\Temp\arduino_build_759815/F294WERIVO5MF59.ino.hex"
Using library Adafruit_INA219 at version 1.0.2 in folder: C:\Users\Ian\Arduino\libraries\Adafruit_INA219
Using library Wire at version 1.0 in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire
Using library Adafruit_SSD1306 at version 1.1.2 in folder: C:\Users\Ian\Arduino\libraries\Adafruit_SSD1306
Using library SPI at version 1.0 in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI
Using library Adafruit_GFX_Library at version 1.2.7 in folder: C:\Users\Ian\Arduino\libraries\Adafruit_GFX_Library
Using library SdFat at version 1.0.6 in folder: C:\Users\Ian\Arduino\libraries\SdFat
Sketch uses 21906 bytes (71%) of program storage space. Maximum is 30720 bytes.
Global variables use 1704 bytes (83%) of dynamic memory, leaving 344 bytes for local variables. Maximum is 2048 bytes.
Low memory available, stability problems may occur.

Your Post seems to be a request for guidance rather than a tutorial aimed at helping other people so I have suggested to the Moderator to move it out of the Tutorials section.


I'm getting the message below when using the 'Verify' facility

I don't see any errors reported in the messages that you posted, but note the warning about low memory being available.

What happens when you upload the code ?

You really need to stick at the baby stuff , it’s not a subject you can learn by jumping in the deep end . Everyone wants to do a complicated task from the start and bodges about .
Day 1 and you have errors you can’t deal with !!
Play the examples, learn how coding works , learn how the IDE works - it is fun , I thought so anyway. Brush up on electtonics too !

While I’m winging it’s a good idea for starters to buy a genuine UNO - it supports the cause, they are well made and work with little frustration.

There are some great books and guides too.


Thanks for the re-direction Robin2

@ UKHeliBob

Thanks for the reply

At the time of writing I was getting a fail when I tried to download it.
I left it an hour or two and ran an empty 'new' sketch.
Then I ran 'blink' which worked.
Then I then ran an empty 'new' sketch again
Then I 'verified' F294WERIVO5MF59 and then 'uploaded'
. . . . and it looks like it worked
I try it and let ye know

@ hammy

I didn't start with the intending of learning Arduino, I ended up here as a result of something else. If however I get this one working that may prove to be the motivation to do as you suggest.

However my attempts so far have been quite frustrating - would you suggest a place for a newbie to start. I mean a specific course or sequence of tutorials nit just a vague "google it"

I started with an Arduino and Simon Monks book on getting started with Arduino.

I played about with the examples and between the two learnt some coding and made a couple of basic projects- A serial voltmeter, a lineariser for a car fuel system ( read the sensor resistor and output to a gauge).

I’ve bought and used loads of NANO’s and UNO’s and now make my own boards with the processor.

I didn’t find this forum until
A few months back .
When you start buying a genuine UNO
is a good idea and saves much hassle.


Thank you for that.

It's just an general observation and not a response to your post but I wonder if the first experience people like me ie those that stumble blindly into situations like these, was terrific would that encourage them to get more invested or would they forever be reliant on others .... I guess that's more for the philosophy forum!

Without seeing the sketch not much to comment on that - I prefer to solve the "low memory" warnings before using a sketch long term, as it's generally a good idea to heed warnings.

In your case, I see a LOT of global variable space used. Very likely you have a good number of Serial.print() statements - use the F() macro there to store the strings in flash rather than RAM. That saves a lot of space. Also make sure you don't use a larger variable type than needed for all your variables, not just the global ones.