I'm getting the error below when verifying the IOShield sketch. Any help would be appreciated. Thanks!
Arduino: 1.0.6 (Windows NT (unknown)), Board: "Moteino"
C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avr-g++ -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=106 -IC:\Program Files (x86)\Arduino\hardware\arduino\cores\arduino -IC:\Program Files (x86)\Arduino\hardware\arduino\variants\standard -IC:\Program Files (x86)\Arduino\libraries\RFM69 -IC:\Program Files (x86)\Arduino\libraries\SPIFlash -IC:\Program Files (x86)\Arduino\libraries\SPI C:\Users\Gsry\AppData\Local\Temp\build4874832273514746875.tmp\IOShield.cpp -o C:\Users\Gsry\AppData\Local\Temp\build4874832273514746875.tmp\IOShield.cpp.o
IOShield.ino:45:93: warning: WirelessHEX69.h: No such file or directory
IOShield.ino: In function 'void setup()':
IOShield.ino:101: warning: only initialized variables can be placed into program memory area
IOShield.ino:104: warning: only initialized variables can be placed into program memory area
IOShield.ino:106: warning: only initialized variables can be placed into program memory area
IOShield.ino: In function 'void loop()':
IOShield.ino:130: warning: only initialized variables can be placed into program memory area
IOShield.ino:130: warning: only initialized variables can be placed into program memory area
IOShield.ino:132: warning: only initialized variables can be placed into program memory area
IOShield:136: error: 'CheckForWirelessHEX' was not declared in this scope
IOShield.ino:141: warning: only initialized variables can be placed into program memory area
IOShield.ino:142: warning: only initialized variables can be placed into program memory area
IOShield.ino:160: warning: comparison between signed and unsigned integer expressions
IOShield.ino:192: warning: comparison between signed and unsigned integer expressions
IOShield.ino:202: warning: only initialized variables can be placed into program memory area
IOShield.ino: In function 'void zoneON(byte)':
IOShield.ino:262: warning: only initialized variables can be placed into program memory area
IOShield.ino:263: warning: only initialized variables can be placed into program memory area
IOShield.ino: In function 'void zonesOFF()':
IOShield.ino:273: warning: only initialized variables can be placed into program memory area
IOShield.ino:274: warning: only initialized variables can be placed into program memory area
You need to install the WirelessHEX69 library (https://github.com/LowPowerLab/WirelessProgramming).
This was indicated in the sketch:
#include <WirelessHEX69.h> //get it here: https://github.com/LowPowerLab/WirelessProgramming <-----
Thanks for the quick reply.
Ok, sorry but this is confusing to me. Where am I loading that? I thought when you loaded a sketch, it overwrites whatever is on the Moteino..
Sorry..
The sketch references libraries you may not have installed.
In this case it's the WirelessHEX69 library, as pointed above and in the sketch. You'll have to install that library in your Arduino libraries folder. See this guide (https://learn.adafruit.com/adafruit-all-about-arduino-libraries-install-use/arduino-libraries).
Felix,
I have installed the library and it is in the Arduino>Libraries folder, the folder name is WirelessProgramming, and inside that folder is the WirelessHEX69 folder and WirelessHEX folder along with some other files. No change though, same error
Thanks
Well I believe I figured it out.
Thanks
From what I've seen, typically you only get one folder deep of searching for libraries. If you move the "WirelessHEX69" folder directly into the "Libraries" folder it will find it.
Quote from: syrinxtech on August 26, 2016, 07:39:51 AM
From what I've seen, typically you only get one folder deep of searching for libraries. If you move the "WirelessHEX69" folder directly into the "Libraries" folder it will find it.
When I unzipped the file, like I've done with the rest of them, it created a folder named WirelessProgramming and I didn't catch it right away. Once I moved the WirelessHEX69 folder out and into the Libraries folder it worked.
Thanks
Over the years I believe the Arduino IDE requirements have slightly changed for libraries but generally the library folder should be named the same name as the main file of the library (without .h or .ccp extension), and the code files should be directly under it, not nested in any way. The examples folder containing examples should be nested under the library. Then upon restart the IDE should recognize the library and examples. All of this is explained in adafruit's excellent guide.
Quote from: Felix on August 26, 2016, 09:07:14 AM
Over the years I believe the Arduino IDE requirements have slightly changed for libraries but generally the library folder should be named the same name as the main file of the library (without .h or .ccp extension), and the code files should be directly under it, not nested in any way. The examples folder containing examples should be nested under the library. Then upon restart the IDE should recognize the library and examples. All of this is explained in adafruit's excellent guide.
Maybe then they shouldn't have zipped the wireless folders the way they did. I guess they want us (me) newbies to try and figure it out the way I had to..
It's partly my fault for separating these in a different repository. And then github makes you download the whole repo ZIP which makes it a little confusing for first timers.
I may bundle these extensions in the original library.
Although there are many other RFM69 library examples that use all kinds of 3rd party libraries, meaning that knowing how to install a library is eventually a required skill the more arduino coding one does.
Quote from: Felix on August 26, 2016, 09:34:56 AM
It's partly my fault for separating these in a different repository. And then github makes you download the whole repo ZIP which makes it a little confusing for first timers.
I may bundle these extensions in the original library.
Although there are many other RFM69 library examples that use all kinds of 3rd party libraries, meaning that knowing how to install a library is eventually a required skill the more arduino coding one does.
It was a good learning experience for me. I'll surely remember that next time.. lol