SigFox library dont work

What happens to the SigFox library.... it does not work, even when I try to run the examble code it gives the following error in the web editor and in my desktop editor:

/usr/local/bin/arduino-cli compile --fqbn arduino:samd:mkrfox1200 --libraries /home/builder/opt/libraries/latest --build-cache-path /tmp --output-dir /tmp/988606415/build --build-path /tmp/arduino-build-9C82A68BF83C603C99FD74C9A1123001 --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Adafruit BMP280 Library --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Adafruit Circuit Playground --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Adafruit Unified Sensor --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Arduino Low Power --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Arduino SigFox for MKRFox1200 --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/ArduinoBLE --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Audio --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/AudioZero --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/DHT sensor library --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/DS1307RTC --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/DallasTemperature --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/EspSoftwareSerial --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Firebase Arduino based on WiFiNINA --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/MFRC522 --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/MQUnifiedsensor --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/OneWire --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/RTCZero --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Servo --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/SparkFun MS5803-14BA Pressure Sensor --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Time --library /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/WiFiNINA /tmp/988606415/FirstConfiguration

Using library Arduino Low Power at version 1.2.2 in folder: /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Arduino Low Power

Using library RTCZero at version 1.6.0 in folder: /mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/RTCZero

/mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Arduino SigFox for MKRFox1200/src/SigFox.cpp: In member function 'int SIGFOXClass::begin()':

/mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Arduino SigFox for MKRFox1200/src/SigFox.cpp:99:13: error: 'arduino::SPIClass {aka class arduino::HardwareSPI}' has no member named 'setDataMode'

spi_port->setDataMode(SPI_MODE0);

^~~~~~~~~~~

/mnt/create-efs/webide/69/4c/694c3319027251bbb1167baecaf00bc9:jpe1908/libraries_v2/Arduino SigFox for MKRFox1200/src/SigFox.cpp:100:13: error: 'arduino::SPIClass {aka class arduino::HardwareSPI}' has no member named 'setBitOrder'

spi_port->setBitOrder(MSBFIRST);

^~~~~~~~~~~

Error during build: exit status 1

Please post the code or a link to the example you are compiling

Its the example "First configuration".
But its the library that fails not the code....

OK - I've seen something similar in a recent conversation and I think it's likely an error due to recent changes to the SPIClass

Go to your Library folder and find the Sigfox library

Edit the SigFox.h file and change every occurrence of SPIClass by SPIClassSAMD (2 changes) and do the same in the .cpp (one change)

Save changes and try to compile again. if that works then I suggest you raise an issue in SigFox Github


just flagging to @facchinm for question mark on to arduino/ArduinoCore-samd@000db0c

2 Likes

Sadly it didn't help, still comes with the same error.

Are you sure you modified the library?

Hi @jpe1908. The bug has already been fixed:
https://github.com/arduino-libraries/SigFox/pull/32

However, there has not yet been a new release of the library since that fix. So you will need to do a manual installation of the beta version of the library. I'll provide instructions:

Arduino Web Editor

  1. Download the beta version of the SigFox library from this link: https://github.com/arduino-libraries/SigFox/archive/refs/heads/master.zip
  2. Open Arduino Web Editor
  3. From the menu on the left side of the Arduino Web Editor window, click "Libraries".
  4. Click the upward pointing arrow button ("Import") to the right side of the Library Manager button.
  5. If you get a popup about importing your sketchbook, click the Import button.
  6. Select the downloaded file (SigFox-master.zip).
  7. Click the Open button.
  8. Wait for Arduino Web Editor to display the notification that the library was successfully imported.
  9. Click the OK button.

The sketch should now compile successfully.

Desktop IDE

  1. Start the IDE.
  2. Select File > Preferences from the Arduino IDE menus.
  3. Note the path shown in the "Sketchbook location" preference.
  4. Click the Cancel button.
  5. Open the sketchbook location path in your file browser.
  6. Open the libraries subfolder of the sketchbook folder.
  7. Delete the Arduino_SigFox_for_MKRFox1200 folder.
    Please be very careful when deleting things from your computer. When in doubt, back up!
  8. Download the beta version of the SigFox library from this link: https://github.com/arduino-libraries/SigFox/archive/refs/heads/master.zip
  9. Unzip the downloaded file SigFox-master.zip to the libraries subfolder of the sketchbook folder.
    The folder structure should look like this:
    <sketchbook folder>
    `-- libraries
        `-- SigFox-master
            |-- library.properties
            `-- etc...
    

The sketch should now compile successfully.

1 Like

It works :slight_smile:

I'm glad to hear it is working now. Enjoy!

it works for me as well, many thanks !!!