Thank you for contacting us.
We reviewed the Github link you posted in this discussion and the thread discusses a different architecture between the Galileo and the board for which the library was compiled for. The error you receive says “library rfidmaster claims to run on (avr, STM32F1, teensy, esp8266) architecture(s) and may be incompatible with your current board which runs on (i586) architecture(s).”
In cases such as this one, with incompatible architectures, there are two options:
1. Find this library already compiled for the Galileo. If someone encountered the same issue as you, then it’s possible this library has already been compiled for the board.
2. Write your own version of the library, or modify the existing one, based on the library code, so you can use it with the Galileo. Keep in mind this last option is out of the scope of support, however, we encourage you to share your results with the community.
thank you for the answer. Maybe I allocated the problem. The c++ code from the mfrc522 lib can be compiled.
The problem is the SPI lib. The mfrc522 lib depends on newer functions that the SPI lib for the Galileo is in the arduino lib for i586.
Example - the SPI.beginTransaction is not in the lib and this throws one of the errors.
Is there a newer Version of the SPI lib available ?
Thank you for you your reply. I don’t think there’s a newer version of the SPI library. If you’re referring to the Arduino library of SPI, then version 1.8.2 is the newest one.
Specifically, what error are you receiving?
We’ll be waiting for your response.
one of the errors you will see at the referenced github thread.
When i use a SPI class I have no member beginTransaction wich is referenced in the RFID lib.
The strange thing is when I use the Arduino IDE and I select any Arduino device the RFID lib is working without probs. When I change only the device to galileo gen2 then I have the probs with the SPI.
In the Arduino IDE i have all needed libs with the internal lib manager installed. Maybe theres an old lib in the Arduino IDEs lib managers referenced.
Changing device in the Arduino IDE from Arduino to Galileo won’t work if using the same library. The libraries need to be compiled specifically for the type of board architecture that’s going to be used. The RFID library that works on Arduino has been compiled for Arduino architecture and won’t work if used with the Galileo, that’s the reason why the error continues to be the same as in the Github link.
In this case, the best approach would be to follow one of the two options posted above.
Hopefully you can find this information helpful.