I’m starting to use an ARGOS ARTIC R2 board, during my first test, I was surprised to see that the ID was not written in hard in the board… (purchased recently). I downgraded the library version to 1.0.9, and now I get this error:
begin: ARTIC R2 Firmware Status (before clearInterrupts):
clearInterrupts: clear INT1: commandResult is: MCU command result: valid. A valid housekeeping command was attempted.
clearInterrupts: clear INT2: commandResult is: MCU command result: valid. A valid housekeeping command was attempted.
begin: ARTIC R2 Firmware Status (after clearInterrupts):
I changed the power supply of the board, to be directly connected to the Li-ion battery, I returned to version 1.1.2, it is better, with example 1 (Firmware version) the card transmits its ID but which is not the one specified on the card (neither the platform ID nor the hex code) and the firmware version is not “readable”:
Please post a photo of your boards, the ARTIC board and your microcontroller board, showing the connections between them. It helps us debug the issue, like this: viewtopic.php?p=237179#p237179
Also, it looks like you are using the Adafruit Feather M0 board? Have you changed the GPIO pin numbers to match the Feather board? The library code examples were written for the SparkFun Artemis Thing Plus. The Feather M0 pin numbers will be different.
int CS_Pin = 19;
int GAIN8_Pin = 10;
int BOOT_Pin = 9;
int INT1_Pin = 13;
int INT2_Pin = 5;
int RESET_Pin = 6;
int ARTIC_PWR_EN_Pin = 11;
int RF_PWR_EN_Pin = 12
Unfortunately, now I have this error:
begin: ARTIC R2 Firmware Status (before clearInterrupts):
clearInterrupts: clear INT1: commandResult is: MCU command result: valid. A valid housekeeping command was attempted.
clearInterrupts: clear INT2: commandResult is: MCU command result: valid. A valid housekeeping command was attempted.
begin: ARTIC R2 Firmware Status (after clearInterrupts):
readPlatformID: Platform ID: 0x0
ARTIC R2 boot was successful.
readFirmwareVersion: firmware version:
ARTIC R2 firmware version is:
readPlatformID: Platform ID: 0x0
You appear to have an early version of the SparkFun board.
For the transmit examples, you will need to use the Library Manager to select version 1.0.9 of this library.
I wonder if bad instructions were not sent to the Artic R2, knowing that there is a Lora module which also works in SPI on the Feather board…
int CS_Pin = A5;
int GAIN8_Pin = 5; // Optional. Set to -1 if you don't want to control the gain. The library defaults to maximum power.
int BOOT_Pin = 6;
int INT1_Pin = 9;
int INT2_Pin = 10;
int RESET_Pin = 11;
#ifdef IOTA
int IOTA_PWR_EN_Pin = 8; // IOTA has a single power enable pin
#else
int ARTIC_PWR_EN_Pin = 12; // The ARTIC R2 Breakout has separate enables for the ARTIC and the RF Amplifier
int RF_PWR_EN_Pin = 13;
#endif
Now I have this error:
The firmware status IDLE flag is set. The firmware is idle and ready to accept commands.
The firmware status RX_IN_PROGRESS flag is set. The firmware is receiving.
The firmware status CRC_CALCULATED flag is set. The CRC calculation has finished.
The firmware status IDLE_STATE flag is set. The firmware has returned to the idle state.
The firmware status TX_INVALID_MESSAGE flag is set. Incorrect TX payload length specified.
The firmware status MCU_COMMAND_REJECTED flag is set. Incorrect command sent or firmware is not in idle.
readPlatformID: Platform ID: 0x3030303
ARTIC R2 boot was successful.
readFirmwareVersion: firmware version:
ARTIC R2 firmware version is:
readPlatformID: Platform ID: 0x3030303
Your Platform ID is: 0x3030303
begin: ARTIC R2 Firmware Status (before clearInterrupts):
clearInterrupts: clear INT1: commandResult is: MCU command result: valid. A valid housekeeping command was attempted.
clearInterrupts: clear INT2: commandResult is: MCU command result: valid. A valid housekeeping command was attempted.
begin: ARTIC R2 Firmware Status (after clearInterrupts):
readPlatformID: Platform ID: 0x0
readPlatformID: Platform ID: 0x0
You appear to have an early version of the SparkFun board.
Please use the Library Manager to select version 1.0.9 of this library.
Freezing...
I have the SparkX ARTIC R2 Breakout connected to an Adafruit Feather M0 Adalogger using stacking headers.
I am powering the Adalogger via USB.
I am using the Adafruit SAMD Boards Package version 1.7.13.
I have selected Adafruit Feather M0 (SAMD21) as the board.
I am using the SparkFun ARGOS ARTIC R2 library version 1.1.2.
I am running Example1 with the following changes:
int CS_Pin = 19;
int GAIN8_Pin = 5; // Optional. Set to -1 if you don't want to control the gain. The library defaults to maximum power.
int BOOT_Pin = 6;
int INT1_Pin = 9;
int INT2_Pin = 10;
int RESET_Pin = 11;
#ifdef IOTA
int IOTA_PWR_EN_Pin = 8; // IOTA has a single power enable pin
#else
int ARTIC_PWR_EN_Pin = 12; // The ARTIC R2 Breakout has separate enables for the ARTIC and the RF Amplifier
int RF_PWR_EN_Pin = 13;
#endif
I also enableDebugging.
In the Serial Console, I see:
attenuateTXgain: attenuation disabled. Transmitting at full power
begin: IO pins are configured. ARTIC has been reset.
begin: ARTIC R2 Firmware Status (before clearInterrupts):
The firmware status IDLE flag is set. The firmware is idle and ready to accept commands.
The firmware status IDLE_STATE flag is set. The firmware has returned to the idle state.
The firmware status RX_CALIBRATION_FINISHED flag is set. The RX offset calibration has completed.
The firmware status DSP2MCU_INT1 flag is set. Interrupt pin 1 is high.
clearInterrupts: clear INT1: commandResult is: MCU command result: valid. A valid housekeeping command was attempted.
clearInterrupts: clear INT2: commandResult is: MCU command result: valid. A valid housekeeping command was attempted.
begin: ARTIC R2 Firmware Status (after clearInterrupts):
The firmware status IDLE flag is set. The firmware is idle and ready to accept commands.
readPlatformID: Platform ID: 0x1-----E
ARTIC R2 boot was successful.
readFirmwareVersion: firmware version: ARTIC006
ARTIC R2 firmware version is: ARTIC006
readPlatformID: Platform ID: 0x1-----E
Your Platform ID is: 0x1-----E
The Platform ID is redacted.
The two red PWR and RF LEDs are illuminated on the ARTIC board.
Do you see the same thing? Are the LEDs illuminated when you run the example?