I’m going to buy and use the ARTIC R2 module using the Argos satellite this time, but I have a few questions to ask. The first is that the cs_pin array is called number 24 in the basic example, but what if there is no port 24 on the Arduino Uno board? Secondly, we randomly assign ports and connect them to monitor them with the Arduino program, and the following statements keep coming up." ARGOS ARTIC R2 Example
Please be careful. The older Arduino Uno boards had 5V I/O pins. You must use 3.3V I/O signals with the ARTIC R2. You may damage the ARTIC if you connect it to 5V signals.
You can not use ‘random’ pins to connect to the ARTIC. The ARTIC has an SPI interface. You must use the correct SPI pins.
We learned recently that some ARTIC R2 boards had been incorrectly programmed with the wrong Platform ID. Each board has two IDs: a decimal one which you use to access your data on ArgosWeb; and a hexadecimal one which is embedded in each satellite uplink message. These boards had been incorrectly programmed with the decimal ID instead of the hexadecimal one. You can tell if your board is affected by calling readPlatformID(). If the true hexadecimal ID is returned, all is well. If the value is the decimal ID - expressed in hexadecimal - then your board requires reprogramming as your messages will not be delivered. Please return your board ( https://www.sparkfun.com/returns ). We will reprogram it and return it to you quickly. If your project is time-critical, please contact us again here and we will provide a software work-around. We apologise for the error and the inconvenience.
We learned recently that some ARTIC R2 boards had been incorrectly programmed with the wrong Platform ID. Each board has two IDs: a decimal one which you use to access your data on ArgosWeb; and a hexadecimal one which is embedded in each satellite uplink message. These boards had been incorrectly programmed with the decimal ID instead of the hexadecimal one. You can tell if your board is affected by calling readPlatformID(). If the true hexadecimal ID is returned, all is well. If the value is the decimal ID - expressed in hexadecimal - then your board requires reprogramming as your messages will not be delivered. Please return your board ( https://www.sparkfun.com/returns ). We will reprogram it and return it to you quickly. If your project is time-critical, please contact us again here and we will provide a software work-around. We apologise for the error and the inconvenience.
Best wishes,
Paul
Good afternoon,
I trust you are doing well.
I purchased a handful of argos satellite breakouts. 3 being the IoTA artic R2 boards. In the instructions it states that the platform ID may be incorrect. The number returned when I run the platform ID script is the same as the Platform ID written on the piece of paper packaged with the chip. Is this correct?
There are two numbers on the card which comes with each ARGOS board: the Platform ID; and the Hex Code.
readPlatformID() should return the Hex Code. If it returns the Platform ID, the board has the programming error.
If your IOTA boards have the programming error, are you able to return them to us? If they are soldered into your project, please do not try to desolder them. Instead we will send you a software work-around.
Thanks for the quick reply. Unfortunately all three of our boards seem to be incorrect. Please let me know what time we can zoom/teams/google meet tomorrow to fix the issue. I’ll also send this message to support so you have my email address.
I was hoping you can guide me in the right direction once again. I’ve been trying to implement a transmission using the PTT A3 HD configuration as I would like to transmit more data. In the cpp I see there is an option to configure the Artic R2 using the CONFIG_CMD_SET_ARGOS_3_PTT_HD_TX_MODE command, however, there is no setPayload function to construct the message. The setPayloadARGOS3 is unfortunately capped at 8x32 bits. Do you perhaps have something of use that isn’t on the git repository or could you perhaps guide me in the right direction?
The ARTIC R2 is capable of sending ARGOS 3 HD messages, but this requires higher transmit power - more power than the SparkFun boards can provide. The SparkFun boards were designed for the low data rate modes with a maximum transmit power of 0.5W. 3W is required for HDA4 and 5W for HDA3.
“I am having the same issue. Running Example17_TransmitARGOS2Example (SparkFun ARGOS ARTIC R2 Arduino Library 1.0.9), Argos Arctic R2 with ESP32-Wroom”
ARGOS ARTIC R2 Example
Starting the ARTIC R2…
begin: ARTIC is starting…
attenuateTXgain: attenuation enabled. Gain reduced by approx. 5dB
attenuateTXgain: attenuation disabled. Transmitting at full power
begin: IO pins are configured. ARTIC has been reset.
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):
readTCXOControlVoltage: AUTO_DISABLE: 0 SELECT_1V3_TO_2V7: 0 SELECT_1V8: 0 SELECT_3V3: 0
setTCXOControl: failed! voltage: 1.80 new_voltage: 1.30 autoDisable: 1 new_disable: 0
setTCXOControl failed. Freezing…
This is usually a sign that you have not defined or connected the SPI pins correctly.
These posts may help:
If you need more help, please tell us:
Which version of Arduino are you using?
Which version of the Espressif ESP32 board package are you using?
Which board do you have selected in the IDE?
Which ESP32-WROOM development board are you using? Please post a link to the board.
How have you connected the ESP32 to the ARTIC R2 board? Please list the connections and/or post a photo of the connections. Please include the power connection.
Have you changed the pin definitions in the code example? Please post your modified pin numbers.