Gweimer/ir-remote Can't upload program to Arduino UNO

Hi Guys,
I have a problem with IR-remote Can someone help please.

Error log below:

Begin compiling code for the board Arduino Uno :package:

C:\Users\LENOVO\AppData\Local\Temp\cceLgMIG.ltrans0.ltrans.o: In function decode': C:\Users\LENOVO\AppData\Local\Temp\xod_temp_sketchbookXAQEXp\libraries\Arduino_IRremote\src/irReceive.cpp:888: undefined reference to IRrecv::decodeNEC(decode_results*)’
C:\Users\LENOVO\AppData\Local\Temp\xod_temp_sketchbookXAQEXp\libraries\Arduino_IRremote\src/irReceive.cpp:895: undefined reference to IRrecv::decodeSony(decode_results*)' C:\Users\LENOVO\AppData\Local\Temp\xod_temp_sketchbookXAQEXp\libraries\Arduino_IRremote\src/irReceive.cpp:930: undefined reference to IRrecv::decodePanasonic(decode_results*)’
C:\Users\LENOVO\AppData\Local\Temp\xod_temp_sketchbookXAQEXp\libraries\Arduino_IRremote\src/irReceive.cpp:972: undefined reference to `IRrecv::decodeDenon(decode_results*)

collect2.exe: error: ld returned 1 exit status

Error during build: exit status 1
Compilation failed
Command Process exited with code 1
The generated C++ code contains errors. It can be due to a bad node implementation or if your board is not compatible with XOD runtime code. The original compiler error message is above. Fix C++ errors to continue. If you believe it is a bug, report the problem to XOD developers.

The library hasn’t been updated to use the new include prsgma yet, so you need to manually install the include file. It’s been so long since I’ve looked at it, I don’t even remember where the instructions are stored for how to do that and I don’t have my computer to look it up right now.

You mean IRremote.h from updated repository in github?

I just finished a project using an IR receiver diode and a remote control. I found that I was unable to upload a sketch after I wired up the diode on my bread board. I found I had to lift the RX wire every time I wanted to upload to my nano, otherwise it wouldn’t accept the sketch. Just something to keep in mind if you are having issues.

There is something wrong with XOD itself after upgrades to the new versions I suspect. I check folders Lib is there all files in it. More than that. If we take ir-read and LCD node this is working.

Problem begins when we connect something to the UPD socket

Independent what it is clock, square wave generator or simple button - you get error message:

Begin compiling code for the board Arduino Uno :package:

C:\Users\LENOVO\AppData\Local\Temp\ccF6J5gT.ltrans0.ltrans.o: In function decode': C:\Users\LENOVO\AppData\Local\Temp\xod_temp_sketchbookK986lq\libraries\Arduino_IRremote\src/irReceive.cpp:888: undefined reference to IRrecv::decodeNEC(decode_results*)’
C:\Users\LENOVO\AppData\Local\Temp\xod_temp_sketchbookK986lq\libraries\Arduino_IRremote\src/irReceive.cpp:895: undefined reference to IRrecv::decodeSony(decode_results*)' C:\Users\LENOVO\AppData\Local\Temp\xod_temp_sketchbookK986lq\libraries\Arduino_IRremote\src/irReceive.cpp:930: undefined reference to IRrecv::decodePanasonic(decode_results*)’
C:\Users\LENOVO\AppData\Local\Temp\xod_temp_sketchbookK986lq\libraries\Arduino_IRremote\src/irReceive.cpp:972: undefined reference to `IRrecv::decodeDenon(decode_results*)

collect2.exe: error: ld returned 1 exit status

Then below:

Error during build: exit status 1
Compilation failed
Command Process exited with code 1
The generated C++ code contains errors. It can be due to a bad node implementation or if your board is not compatible with XOD runtime code. The original compiler error message is above. Fix C++ errors to continue. If you believe it is a bug, report the problem to XOD developers.

It is a problem with my library, not XOD. You can try copying irReceive.h from libraries\Arduino_IRremote\src\ to the folder just above. It has been a couple years since I’ve looked at it and it may just not work with new XOD.

Moving irRecive.h do not change anything. Everything is working as long as you will connect something to UPD only then you become problem, thats why I suspect some conflict in XOD. Except that I would sugest to link this Lib to cloned GIT repo with working tested version of orginal lib. At the moment becouse of link to active ( updated even 2 days ago ) lib on github. Everything can change when they will make some change in the code. So it would be better to work on Cloned location with version that never change.

Hi there!
I’ve just tested this library (last version) and it’s working fine on the last version of XOD IDE.

Try to update the library gweimer/ir-remote and download the C++ library again.
To do so follow the next steps:

  1. Open your workspace directory (if you use a not default one it might be the issue that I’ve fixed. Try to switch to the default location: ~/xod)
  2. Delete gweimer/ir-remote directory inside __lib__
  3. Delete Arduino_IRrmote directory inside ardulib`
  4. Open XOD IDE
  5. Add the library as usual

If it still does not work please provide more information:

  • a version of IDE
  • a version of your OS
  • a path to the workspace
1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.