Tracker Kit 2 in PlatformIO example is in Arduino IDE format

Please include the following information, in order for us to help you as effectively as possible.

  • What product do you wish to discuss? RAK4631

  • What firmware are you using? RUI3

  • What firmware version? RUI_4.0.6_RAK4631

  • Computer OS? Windows

  • What Computer OS version? Windows 11

  • How often does the problem happen? Always

  • How can we replicate the problem? Yes

Good nigth @beegee ,

Based on your code in your code at Github: https://github.com/beegee-tokyo/WisBlock-API-V2/tree/main/examples/WisBlock-Kit-2, I am developing a tracking device that, at the same time, it will measure the pressure in four pneumatic lines using RAK5801 or RAK5811 depending on kind of transducer (current or voltage ), like this one: VKP-016 - Pressure transmitter Mini High pressure IP68 | Velki Instrumentos de Medição e Controle.

The point is basic, I am using PlatformIO but the example WisBlock-Kit-2 that comes with the WisBlock-API-V2 Library is in Arduino IDE format (.INO), instead PlatformIO format (.cpp/.h).

Do you have these example in PlatformIO format? Could you update them in the Library example?

Added PIO example to the library

WisBlock-Kit-2-PIO

Thank you very much. I will work on it right now :slight_smile:

I will give news about the progress…

Regards,

Cláudio

First compilation results:

Blockquote
Problems:
[{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/.pio/libdeps/wiscore_rak4631/Adafruit BME680 Library/Adafruit_BME680.h”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘Wire’ was not declared in this scope”,
“startLineNumber”: 74,
“startColumn”: 39,
“endLineNumber”: 74,
“endColumn”: 39
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/.pio/libdeps/wiscore_rak4631/Adafruit BME680 Library/Adafruit_BME680.h”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘SPI’ was not declared in this scope”,
“startLineNumber”: 75,
“startColumn”: 53,
“endLineNumber”: 75,
“endColumn”: 53
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/.pio/libdeps/wiscore_rak4631/Adafruit BusIO/Adafruit_I2CDevice.h”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘Wire’ was not declared in this scope”,
“startLineNumber”: 10,
“startColumn”: 56,
“endLineNumber”: 10,
“endColumn”: 56
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/.pio/libdeps/wiscore_rak4631/Adafruit BusIO/Adafruit_SPIDevice.h”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘SPI’ was not declared in this scope”,
“startLineNumber”: 93,
“startColumn”: 72,
“endLineNumber”: 93,
“endColumn”: 72
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/bme680_sensor.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “call to ‘Adafruit_BME680::Adafruit_BME680(TwoWire*)’ uses the default argument for parameter 1, which is not yet defined”,
“startLineNumber”: 13,
“startColumn”: 17,
“endLineNumber”: 13,
“endColumn”: 17
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/gnss.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘WB_IO2’ was not declared in this scope”,
“startLineNumber”: 37,
“startColumn”: 10,
“endLineNumber”: 37,
“endColumn”: 10
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/gnss.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘WB_IO2’ was not declared in this scope”,
“startLineNumber”: 63,
“startColumn”: 15,
“endLineNumber”: 63,
“endColumn”: 15
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/gnss.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘LED_GREEN’ was not declared in this scope”,
“startLineNumber”: 90,
“startColumn”: 18,
“endLineNumber”: 90,
“endColumn”: 18
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/gnss.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘LED_BLUE’ was not declared in this scope”,
“startLineNumber”: 149,
“startColumn”: 16,
“endLineNumber”: 149,
“endColumn”: 16
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/gnss.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘LED_BLUE’ was not declared in this scope”,
“startLineNumber”: 178,
“startColumn”: 16,
“endLineNumber”: 178,
“endColumn”: 16
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/lis3dh_acc.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘WB_IO3’ was not declared in this scope”,
“startLineNumber”: 16,
“startColumn”: 18,
“endLineNumber”: 16,
“endColumn”: 18
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/lis3dh_acc.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘Wire’ was not declared in this scope”,
“startLineNumber”: 36,
“startColumn”: 2,
“endLineNumber”: 36,
“endColumn”: 2
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/main.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘LED_GREEN’ was not declared in this scope”,
“startLineNumber”: 84,
“startColumn”: 17,
“endLineNumber”: 84,
“endColumn”: 17
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/main.cpp”,
“owner”: “C/C++: IntelliSense”,
“code”: “20”,
“severity”: 8,
“message”: “identifier "LED_GREEN" is undefined”,
“source”: “C/C++”,
“startLineNumber”: 84,
“startColumn”: 17,
“endLineNumber”: 84,
“endColumn”: 26
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/main.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘LED_GREEN’ was not declared in this scope”,
“startLineNumber”: 91,
“startColumn”: 15,
“endLineNumber”: 91,
“endColumn”: 15
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/main.cpp”,
“owner”: “C/C++: IntelliSense”,
“code”: “20”,
“severity”: 8,
“message”: “identifier "LED_GREEN" is undefined”,
“source”: “C/C++”,
“startLineNumber”: 91,
“startColumn”: 15,
“endLineNumber”: 91,
“endColumn”: 24
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/main.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘WB_IO2’ was not declared in this scope”,
“startLineNumber”: 112,
“startColumn”: 10,
“endLineNumber”: 112,
“endColumn”: 10
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/main.cpp”,
“owner”: “C/C++: IntelliSense”,
“code”: “20”,
“severity”: 8,
“message”: “identifier "WB_IO2" is undefined”,
“source”: “C/C++”,
“startLineNumber”: 112,
“startColumn”: 10,
“endLineNumber”: 112,
“endColumn”: 16
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/main.cpp”,
“owner”: “cpp”,
“severity”: 8,
“message”: “‘Wire’ was not declared in this scope”,
“startLineNumber”: 116,
“startColumn”: 2,
“endLineNumber”: 116,
“endColumn”: 2
},{
“resource”: “/f:/Users/Claudio Rosa/OneDrive - Nas Ondas Projetos de Inovação/Clientes/MRS/Projetos/Endnodes/Rastreadores/MRS-WisBlock-Kit-2-PIO/src/main.cpp”,
“owner”: “C/C++: IntelliSense”,
“code”: “20”,
“severity”: 8,
“message”: “identifier "Wire" is undefined”,
“source”: “C/C++”,
“startLineNumber”: 116,
“startColumn”: 2,
“endLineNumber”: 116,
“endColumn”: 6
}]

Blockquote

Blockquote
Processing wiscore_rak4631 (platform: nordicnrf52; board: wiscore_rak4631; framework: arduino)


Verbose mode can be enabled via -v, --verbose option
CONFIGURATION: https://docs.platformio.org/page/boards/nordicnrf52/wiscore_rak4631.html
PLATFORM: Nordic nRF52 (10.3.0) > WisCore RAK4631 Board
HARDWARE: NRF52840 64MHz, 243KB RAM, 796KB Flash
DEBUG: Current (jlink) External (jlink, stlink)
PACKAGES:

  • framework-arduinoadafruitnrf52 @ 1.10600.0 (1.6.0)
  • framework-cmsis @ 2.50700.210515 (5.7.0)
  • tool-adafruit-nrfutil @ 1.503.0 (5.3)
  • tool-sreccat @ 1.164.0 (1.64)
  • toolchain-gccarmnoneeabi @ 1.70201.0 (7.2.1)
    LDF: Library Dependency Finder → Library Dependency Finder (LDF) — PlatformIO latest documentation
    LDF Modes: Finder ~ chain, Compatibility ~ soft
    Found 25 compatible libraries
    Scanning dependencies…
    Dependency Graph
    |-- WisBlock-API-V2 @ 2.0.17
    |-- TinyGPSPlus @ 1.0.3
    |-- Adafruit BME680 Library @ 2.0.4
    |-- SparkFun LIS3DH Arduino Library @ 1.0.3
    |-- Wire @ 1.0
    |-- Adafruit Unified Sensor @ 1.1.14
    Building in release mode
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\Adafruit_TinyUSB_API.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\Adafruit_USBD_CDC.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\Adafruit_USBD_Device.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\Adafruit_USBH_Host.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\cdc\Adafruit_USBH_CDC.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\hid\Adafruit_USBD_HID.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\midi\Adafruit_USBD_MIDI.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\msc\Adafruit_USBD_MSC.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\msc\Adafruit_USBH_MSC.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\ports\esp32\Adafruit_TinyUSB_esp32.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\ports\nrf\Adafruit_TinyUSB_nrf.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\ports\rp2040\Adafruit_TinyUSB_rp2040.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\ports\samd\Adafruit_TinyUSB_samd.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\arduino\webusb\Adafruit_USBD_WebUSB.cpp.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\audio\audio_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\bth\bth_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\cdc\cdc_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\cdc\cdc_host.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\dfu\dfu_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\dfu\dfu_rt_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\hid\hid_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\hid\hid_host.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\midi\midi_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\msc\msc_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\msc\msc_host.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\net\ecm_rndis_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\net\ncm_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\usbtmc\usbtmc_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\vendor\vendor_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\class\video\video_device.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\common\tusb_fifo.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\device\usbd.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\device\usbd_control.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\host\hub.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\host\usbh.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\portable\analog\max3421\hcd_max3421.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\portable\microchip\samd\dcd_samd.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\portable\nordic\nrf5x\dcd_nrf5x.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\portable\raspberrypi\pio_usb\dcd_pio_usb.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\portable\raspberrypi\pio_usb\hcd_pio_usb.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\portable\raspberrypi\rp2040\dcd_rp2040.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\portable\raspberrypi\rp2040\hcd_rp2040.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\portable\raspberrypi\rp2040\rp2040_usb.c.o
    Compiling .pio\build\wiscore_rak4631\libeea\Adafruit_TinyUSB_Arduino\tusb.c.o
    Compiling .pio\build\wiscore_rak4631\src\bme680_sensor.cpp.o
    Compiling .pio\build\wiscore_rak4631\src\gnss.cpp.o
    Compiling .pio\build\wiscore_rak4631\src\lis3dh_acc.cpp.o
    Compiling .pio\build\wiscore_rak4631\src\main.cpp.o
    Compiling .pio\build\wiscore_rak4631\lib3cd\SPI\SPI.cpp.o
    Compiling .pio\build\wiscore_rak4631\lib3cd\SPI\SPI_nrf52832.cpp.o
    Compiling .pio\build\wiscore_rak4631\lib110\SX126x-Arduino\ISP4520_MOD.cpp.o
    Compiling .pio\build\wiscore_rak4631\lib110\SX126x-Arduino\RAK4630_MOD.cpp.o
    .pio\libdeps\wiscore_rak4631\SX126x-Arduino\src\ISP4520_MOD.cpp:2:10: fatal error: variant.h: No such file or directory

  • Looking for variant.h dependency? Check our library registry!
  • CLI > platformio lib search “header:variant.h”
  • Web > PlatformIO Registry

#include <variant.h>
^~~~~~~~~~~
compilation terminated.
.pio\libdeps\wiscore_rak4631\SX126x-Arduino\src\RAK4630_MOD.cpp:2:10: fatal error: variant.h: No such file or directory


  • Looking for variant.h dependency? Check our library registry!
  • CLI > platformio lib search “header:variant.h”
  • Web > PlatformIO Registry

#include <variant.h>
^~~~~~~~~~~
compilation terminated.
*** [.pio\build\wiscore_rak4631\lib110\SX126x-Arduino\ISP4520_MOD.cpp.o] Error 1
*** [.pio\build\wiscore_rak4631\lib110\SX126x-Arduino\RAK4630_MOD.cpp.o] Error 1
src\lis3dh_acc.cpp: In function ‘bool init_acc()’:
src\lis3dh_acc.cpp:16:18: error: ‘WB_IO3’ was not declared in this scope
#define INT1_PIN WB_IO3
^
src\lis3dh_acc.cpp:34:10: note: in expansion of macro ‘INT1_PIN’
pinMode(INT1_PIN, INPUT);
^~~~~~~~
src\lis3dh_acc.cpp:16:18: note: suggested alternative: ‘__IO’
#define INT1_PIN WB_IO3
^
src\lis3dh_acc.cpp:34:10: note: in expansion of macro ‘INT1_PIN’
pinMode(INT1_PIN, INPUT);
^~~~~~~~
src\lis3dh_acc.cpp:36:2: error: ‘Wire’ was not declared in this scope
Wire.begin();
^~~~
src\lis3dh_acc.cpp:36:2: note: suggested alternative: ‘TwoWire’
Wire.begin();
^~~~
TwoWire
*** [.pio\build\wiscore_rak4631\src\lis3dh_acc.cpp.o] Error 1
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:30:0,
from src\main.h:21,
from src\bme680_sensor.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:31:0,
from src\main.h:21,
from src\bme680_sensor.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
In file included from src\main.h:21:0,
from src\bme680_sensor.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: error: ‘Wire’ was not declared in this scope
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: note: suggested alternative: ‘_wire’
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
_wire
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: error: ‘SPI’ was not declared in this scope
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: note: suggested alternative: ‘PI’
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
PI
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:30:0,
from src\main.h:21,
from src\gnss.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:31:0,
from src\main.h:21,
from src\gnss.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
In file included from src\main.h:21:0,
from src\gnss.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: error: ‘Wire’ was not declared in this scope
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: note: suggested alternative: ‘_wire’
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
_wire
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: error: ‘SPI’ was not declared in this scope
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: note: suggested alternative: ‘PI’
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
PI
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:30:0,
from src\main.h:21,
from src\main.cpp:12:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:31:0,
from src\main.h:21,
from src\main.cpp:12:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
In file included from src\main.h:21:0,
from src\main.cpp:12:
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: error: ‘Wire’ was not declared in this scope
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: note: suggested alternative: ‘_wire’
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
_wire
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: error: ‘SPI’ was not declared in this scope
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: note: suggested alternative: ‘PI’
Adafruit_BME680(int8_t cspin, SPIClass theSPI = &SPI);
^~~
PI
src\bme680_sensor.cpp:13:17: error: call to 'Adafruit_BME680::Adafruit_BME680(TwoWire
)’ uses the default argument for parameter 1, which is not yet defined
Adafruit_BME680 bme;
^~~
*** [.pio\build\wiscore_rak4631\src\bme680_sensor.cpp.o] Error 1
src\gnss.cpp: In function ‘bool init_gnss()’:
src\gnss.cpp:37:10: error: ‘WB_IO2’ was not declared in this scope
pinMode(WB_IO2, OUTPUT);
^~~~~~
src\gnss.cpp:37:10: note: suggested alternative: ‘__IO’
pinMode(WB_IO2, OUTPUT);
^~~~~~
__IO
src\gnss.cpp: In function ‘bool poll_gnss()’:
src\gnss.cpp:63:15: error: ‘WB_IO2’ was not declared in this scope
digitalWrite(WB_IO2, HIGH);
^~~~~~
src\gnss.cpp:63:15: note: suggested alternative: ‘__IO’
digitalWrite(WB_IO2, HIGH);
^~~~~~
__IO
src\gnss.cpp:90:18: error: ‘LED_GREEN’ was not declared in this scope
digitalWrite(LED_GREEN, !digitalRead(LED_GREEN));
^~~~~~~~~
src\gnss.cpp:149:16: error: ‘LED_BLUE’ was not declared in this scope
digitalWrite(LED_BLUE, HIGH);
^~~~~~~~
src\gnss.cpp:178:16: error: ‘LED_BLUE’ was not declared in this scope
digitalWrite(LED_BLUE, LOW);
^~~~~~~~
src\main.cpp: In function ‘void setup_app()’:
src\main.cpp:84:17: error: ‘LED_GREEN’ was not declared in this scope
digitalWrite(LED_GREEN, !digitalRead(LED_GREEN));
^~~~~~~~~
src\main.cpp:91:15: error: ‘LED_GREEN’ was not declared in this scope
digitalWrite(LED_GREEN, LOW);
^~~~~~~~~
src\main.cpp: In function ‘bool init_app()’:
src\main.cpp:112:10: error: ‘WB_IO2’ was not declared in this scope
pinMode(WB_IO2, OUTPUT);
^~~~~~
src\main.cpp:112:10: note: suggested alternative: ‘__IO’
pinMode(WB_IO2, OUTPUT);
^~~~~~
__IO
src\main.cpp:116:2: error: ‘Wire’ was not declared in this scope
Wire.begin();
^~~~
*** [.pio\build\wiscore_rak4631\src\gnss.cpp.o] Error 1
*** [.pio\build\wiscore_rak4631\src\main.cpp.o] Error 1
==================================================================== [FAILED] Took 31.11 seconds ====================================================================

  • The terminal process “C:\Users\Claudio Rosa.platformio\penv\Scripts\platformio.exe ‘run’” terminated with exit code: 1.
  • Terminal will be reused by tasks, press any key to close it.

Blockquote

@beegee ,

Is it the same for you?

Cláudio

I compiled it before I uploaded the code.

Could it be that your PIO installation (patch for RAK4631) was not successful?

Can you compile other sketches for RAK4631 in PIO?
Can you check that all steps in the guide were successfull ==> Installation of Board Support Package in PlatformIO | RAKwireless Documentation Center

I followed the guideline that you mentioned. Let me check step-by-step again.

@beegee ,

I am verifying the errors and I saw somethings like this:

The compiler is saying that the variable WB_IO3 is not declared in the library, and this is true:

Blockquote

/**

  • @file lis3dh_acc.ino
  • @author Bernd Giesecke ([email protected])
  • @brief 3-axis accelerometer functions
  • @version 0.1
  • @date 2020-07-24
  • @copyright Copyright (c) 2020

*/
// #include “main.h”
#include <Arduino.h>
#include <Wire.h>
#include <SparkFunLIS3DH.h> //http://librarymanager/All#SparkFun-LIS3DH

#define INT1_PIN WB_IO3

Blockquote

Could you help to understand what is missed in my configuration and how to fix it? I am seeing in the compilation results, some similar errors, I mean a lack of declaration.

When I did a manual conversion form .INO files to cpp using as base the “examples/WisBlock-Kit-2” (INO version), instead the newest that you did “examples/WisBlock-Kit-2-PIO”, I was having a similar kind of errors, I mean “not declared…”

@beegee ,

I did a cleanup in the fille c_cpp_properties.json, to reduce the paths. Now at least it is clear, but with the same compiling errors :slight_smile:

Blockquote
Compiling .pio\build\wiscore_rak4631\lib728\Adafruit BME680 Library\Adafruit_BME680.cpp.o
src\lis3dh_acc.cpp: In function ‘bool init_acc()’:
src\lis3dh_acc.cpp:16:18: error: ‘WB_IO3’ was not declared in this scope
#define INT1_PIN WB_IO3
^
src\lis3dh_acc.cpp:34:10: note: in expansion of macro ‘INT1_PIN’
pinMode(INT1_PIN, INPUT);
^~~~~~~~
src\lis3dh_acc.cpp:16:18: note: suggested alternative: ‘__IO’
#define INT1_PIN WB_IO3
^
src\lis3dh_acc.cpp:34:10: note: in expansion of macro ‘INT1_PIN’
pinMode(INT1_PIN, INPUT);
^~~~~~~~
src\lis3dh_acc.cpp:36:2: error: ‘Wire’ was not declared in this scope
Wire.begin();
^~~~
src\lis3dh_acc.cpp:36:2: note: suggested alternative: ‘TwoWire’
Wire.begin();
^~~~
TwoWire
*** [.pio\build\wiscore_rak4631\src\lis3dh_acc.cpp.o] Error 1
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_BusIO_Register.h:9:0,
from .pio\libdeps\wiscore_rak4631\Adafruit BusIO\Adafruit_BusIO_Register.cpp:1:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_BusIO_Register.h:10:0,
from .pio\libdeps\wiscore_rak4631\Adafruit BusIO\Adafruit_BusIO_Register.cpp:1:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
*** [.pio\build\wiscore_rak4631\lib8d4\Adafruit BusIO\Adafruit_BusIO_Register.cpp.o] Error 1
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BusIO\Adafruit_I2CDevice.cpp:1:0:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO\Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO\Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
*** [.pio\build\wiscore_rak4631\lib8d4\Adafruit BusIO\Adafruit_I2CDevice.cpp.o] Error 1
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BusIO\Adafruit_SPIDevice.cpp:1:0:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO\Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO\Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
*** [.pio\build\wiscore_rak4631\lib8d4\Adafruit BusIO\Adafruit_SPIDevice.cpp.o] Error 1
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.h:30:0,
from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.cpp:30:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.h:31:0,
from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.cpp:30:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.cpp:30:0:
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.h:74:39: error: ‘Wire’ was not declared in this scope
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.h:74:39: note: suggested alternative: ‘_wire’
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
_wire
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.h:75:53: error: ‘SPI’ was not declared in this scope
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library\Adafruit_BME680.h:75:53: note: suggested alternative: ‘PI’
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
PI
*** [.pio\build\wiscore_rak4631\lib728\Adafruit BME680 Library\Adafruit_BME680.cpp.o] Error 1
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:30:0,
from include/main.h:21,
from src\gnss.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:31:0,
from include/main.h:21,
from src\gnss.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
In file included from include/main.h:21:0,
from src\gnss.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: error: ‘Wire’ was not declared in this scope
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: note: suggested alternative: ‘_wire’
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
_wire
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: error: ‘SPI’ was not declared in this scope
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: note: suggested alternative: ‘PI’
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
PI
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:30:0,
from include/main.h:21,
from src\bme680_sensor.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:31:0,
from include/main.h:21,
from src\bme680_sensor.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
In file included from include/main.h:21:0,
from src\bme680_sensor.cpp:11:
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: error: ‘Wire’ was not declared in this scope
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: note: suggested alternative: ‘_wire’
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
_wire
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: error: ‘SPI’ was not declared in this scope
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: note: suggested alternative: ‘PI’
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
PI
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:30:0,
from include/main.h:21,
from src\main.cpp:12:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: error: ‘Wire’ was not declared in this scope
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_I2CDevice.h:10:56: note: suggested alternative: ‘_wire’
Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire);
^~~~
_wire
In file included from .pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:31:0,
from include/main.h:21,
from src\main.cpp:12:
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: error: ‘SPI’ was not declared in this scope
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BusIO/Adafruit_SPIDevice.h:93:72: note: suggested alternative: ‘PI’
uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI);
^~~
PI
In file included from include/main.h:21:0,
from src\main.cpp:12:
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: error: ‘Wire’ was not declared in this scope
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:74:39: note: suggested alternative: ‘_wire’
Adafruit_BME680(TwoWire *theWire = &Wire);
^~~~
_wire
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: error: ‘SPI’ was not declared in this scope
Adafruit_BME680(int8_t cspin, SPIClass *theSPI = &SPI);
^~~
.pio\libdeps\wiscore_rak4631\Adafruit BME680 Library/Adafruit_BME680.h:75:53: note: suggested alternative: ‘PI’
Adafruit_BME680(int8_t cspin, SPIClass theSPI = &SPI);
^~~
PI
src\gnss.cpp: In function ‘bool init_gnss()’:
src\gnss.cpp:37:10: error: ‘WB_IO2’ was not declared in this scope
pinMode(WB_IO2, OUTPUT);
^~~~~~
src\bme680_sensor.cpp:13:17: error: call to 'Adafruit_BME680::Adafruit_BME680(TwoWire
)’ uses the default argument for parameter 1, which is not yet defined
Adafruit_BME680 bme;
^~~
src\gnss.cpp:37:10: note: suggested alternative: ‘__IO’
pinMode(WB_IO2, OUTPUT);
^~~~~~
__IO
src\gnss.cpp: In function ‘bool poll_gnss()’:
src\gnss.cpp:63:15: error: ‘WB_IO2’ was not declared in this scope
digitalWrite(WB_IO2, HIGH);
^~~~~~
src\gnss.cpp:63:15: note: suggested alternative: ‘__IO’
digitalWrite(WB_IO2, HIGH);
^~~~~~
__IO
src\gnss.cpp:90:18: error: ‘LED_GREEN’ was not declared in this scope
digitalWrite(LED_GREEN, !digitalRead(LED_GREEN));
^~~~~~~~~
src\gnss.cpp:149:16: error: ‘LED_BLUE’ was not declared in this scope
digitalWrite(LED_BLUE, HIGH);
^~~~~~~~
src\gnss.cpp:178:16: error: ‘LED_BLUE’ was not declared in this scope
digitalWrite(LED_BLUE, LOW);
^~~~~~~~
src\main.cpp: In function ‘void setup_app()’:
src\main.cpp:84:17: error: ‘LED_GREEN’ was not declared in this scope
digitalWrite(LED_GREEN, !digitalRead(LED_GREEN));
^~~~~~~~~
src\main.cpp:91:15: error: ‘LED_GREEN’ was not declared in this scope
digitalWrite(LED_GREEN, LOW);
^~~~~~~~~
src\main.cpp: In function ‘bool init_app()’:
src\main.cpp:112:10: error: ‘WB_IO2’ was not declared in this scope
pinMode(WB_IO2, OUTPUT);
^~~~~~
src\main.cpp:112:10: note: suggested alternative: ‘__IO’
pinMode(WB_IO2, OUTPUT);
^~~~~~
__IO
src\main.cpp:116:2: error: ‘Wire’ was not declared in this scope
Wire.begin();
^~~~
*** [.pio\build\wiscore_rak4631\src\bme680_sensor.cpp.o] Error 1
*** [.pio\build\wiscore_rak4631\src\gnss.cpp.o] Error 1
*** [.pio\build\wiscore_rak4631\src\main.cpp.o] Error 1
===================================================================== [FAILED] Took 9.64 seconds =====================================================================

  • The terminal process “C:\Users\Claudio Rosa.platformio\penv\Scripts\platformio.exe ‘run’” terminated with exit code: 1.
  • Terminal will be reused by tasks, press any key to close it.

Blockquote

WB_IO3 is declared in the variant.h for the RAK4631. At one point the errors say that the variant.h was not found. That’s why I think the PIO installation might not be complete.

The files in the example build without any problems for me.

Try to delete the .pio and ..vscode_ folders complete to remove any old settings.

Good morning,

I did the cleaning process that you suggested and the PIO rebuild the .pio and .vscode. But the compilation errors are back. I think that you have different libraries versions that the PIO is installing. This could be the reason for the compilation errors. Take a look:

@beegee ,

How could I get and install in my PIO, the libraries versions that you have?
They are the libraries versions that I have in my PIO environment:

Blockquote
[env:wiscore_rak4631]

platform = nordicnrf52

board = wiscore_rak4631

framework = arduino

lib_deps =

mikalhart/TinyGPSPlus @ ^1.0.3

adafruit/Adafruit BME680 Library @ ^2.0.4

sparkfun/SparkFun LIS3DH Arduino Library @ ^1.0.3

beegee-tokyo/WisBlock-API-V2 @ ^2.0.17

Blockquote

If you take a look in the screenshot below, you will see that the .cpp files in the WisBlock-Kit-2-PIO example, it missed some declaration as you already mention, probably because when PIO is installing the libraries, they are wrong version in comparison with the libraries versions that you have in your PIO environment.

Claudio

I never use version numbers for the libraries as I always want to see whether it works with the latest versions.

My library dependencies are simple:

lib_deps = 
	beegee-tokyo/WisBlock-API-V2
	mikalhart/TinyGPSPlus
	adafruit/Adafruit BME680 Library
	sparkfun/SparkFun LIS3DH Arduino Library

In your screenshot, the WB_IO3 is defined in the variant.h file. If it doesn’t find they are not defined, so you get the error.

The variant.h should be with the PIO installation in the packages/framework-arduinoadafruitnrf52 folder

C:\Users\<YOUR_USERNAME>\.platformio\packages\framework-arduinoadafruitnrf52\variants\WisCore_RAK4631_Board

Thank you. I will test tomorrow because today is late here Rio de Janeiro.

I will give news as soon as possible.

Cláudio

Thank you very much again! :slight_smile:

I don´t know why this copy process wasn´t done in the RACK_PATCH, then I copied manually:

Now the compilation process finished with success :slight_smile:

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