I have noticed several bugs in the 1.5.8 IDE that I would like resolved. I can explain all the issues using the code in the attachment
Bug 1: If you uncomment the part Read Temperature
//Check Light Level
int light_level = analogRead(light_pin);
Wire.beginTransmission(temp_address); //Start talking
Wire.send(0); //Ask for Register zero
Wire.endTransmission(); //Complete Transmission
Wire.requestFrom(temp_address, 1); //Request 1 Byte
while(Wire.available() == 0); //wait for response
int temp_c = Wire.receive(); // Get the temp
int temp_f = round(temp_c*9.0/5.0 +32.0); //Convert to stupid American units
using the 1.0.6 IDE you will get the following error message when you try to compile.
//Read Distancesdatalogger:99: error: ‘class TwoWire’ has no member named ‘send’
As of Arduino 1.0, the Wire.send() function was renamed to Wire.write() for consistency with other libraries.
datalogger:103: error: ‘class TwoWire’ has no member named ‘receive’
As of Arduino 1.0, the Wire.receive() function was renamed to Wire.read() for consistency with other libraries.
this is great because it tells you what was changed that you need to address, and why. If you do the same using 1.5.8 IDE you will get the following error message when you try to compile
Build options changed, rebuilding all
datalogger.pde: In function ‘void loop()’:
datalogger.pde:99:8: error: ‘class TwoWire’ has no member named ‘send’
datalogger.pde:103:21: error: ‘class TwoWire’ has no member named ‘receive’
As you can see, it doesn’t say anything about what to rename the class to, or explain why it works on old examples explained in great detail on youtube, but does not work when trying to implement them. To any new programmer like myself, the 1.0.6 diagnostic which explains this is greatly appreciated.
Bug2: Using the code in attachment"as is" the 1.0.6 IDE will compile the code, and everything will load and work perfectly. Using this exact code on the 1.5.8 IDE the following error message is displayed
C:\Users\ThomasRiley\Desktop\arduino-1.5.8-windows\arduino-1.5.8\libraries\SD\src\utility\Sd2Card.cpp:26:17: fatal error: SPI.h: No such file or directory
Which I can not for the life of me understand. If I only need two libraries using 1.0.6 why would I need to add the SPI.h library using the 1.5.8 for the same code to work?
Bug3: If you have two unos, load code to uno1, unplug it, plug uno2 in and click upload, 1.0.6 will automatically have a window pop up explaining uno1 was not found, with an option to use uno2 instead. In 1.5.8 however, no pop up window will come up, and the error message will only say
avrdude: ser_open(): can’t open device “\.\COM7”: The system cannot find the file specified.
avrdude: ser_drain(): read error: The handle is invalid.
Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.
which isn’t very clear explaining the problem. Even if you google the troubleshooting link you will spend much time trying to figure out what is going on.
Is it possible to use files from the 1.0.6 IDE and transfer them to the 1.5.8 IDE so that the IDE uses the same programming that addresses these issues? If not, can someone tell me why I need more libraries using the 1.5.8 that I described in bug2? I need 1.5.8 because I need to be able to scroll to see all my library examples, but I don’t want forfeit all the advantages of using the older 1.0.6 IDE.
datalogger2.ino (3.13 KB)