AT1846S GPIO Guide for HamShield and HamShield Mini


Click here if you are looking to buy HamShield 1.0 or HamShield Mini.

The GPIO lines on the AT1846S are broken out on both HamShield and HamShield Mini. While optional, the GPIO lines can provide a powerful status indication, as well as providing additional digital outputs.

⚠️  All GPIO lines can be used EXCEPT GPIO4 and GPIO5. These control the internal RF switching circuitry and power amplifier. They are EXCLUSIVE to this use. Controlling the GPIOs or connecting anything to them can cause permanent damage to the device.  ⚠️ 

All GPIO lines can be configured to have High-Z, Low, or High logic levels.  

Special GPIO Functions

In addition to these standard signals, a special function for each GPIO can be configured:

 GPIO  Special Function Description
GPIO7 VOX Voice Activated Transmit Indicator
GPIO5 TX On Controls RF switch and PA, DO NOT USE
GPIO4 RX On Controls RF switch and PA, DO NOT USE
GPIO2 INT Interrupt line (see notes below) 
GPIO1 Code In/Code Out TBD


Discussion of TBD Items

GPIO6: It has been advised that GPIO6 will go high if a valid CTCSS or CDCSS tone is detected, and if no tone is configured, will go high if the signal goes above the squelch level. This can be useful in detecting a valid signal for repeater operations, such as a COR (Carrier Operated Relay), to turn on the other transmitter.

GPIO3: It is believed this is for use of the alternate 3 wire serial interface mode. 

GPIO1: It is believed that this is the programming interface for the internal FM modem (modulator/demodulator). Since the AT1846S is actually a software defined radio, other modems could possibly be loaded on. To this date, Auctus has not released any such additional modems nor wishes to disclose how this would be done or what DSP core is utilized.

GPIO0: It is believed that this is for externally generated and decoded CTCSS signals, but it is not entirely known yet how it works.

Interrupt Line Options

GPIO2 can serve as an output interrupt when a variety of conditions are met. These can be configured using the INT register, as shown below. While it has not been tested, it might be possible to enable multiple interrupt types, and read the type of the interrupt on the FLAG register.

 Register Bit Description
15:10 Reserved, set to 0
9 CSS_CMP_INT Enable
8 RX On (Receive mode enabled) 
7 TX On (Transmit mode enabled) 
6 DTMF Idle 
5 CTCSS Phase Shift Detect 
4 Idle State Timeout 
3 RX On Timeout 
2 Squelch 
1 TX On Timeout
0 VOX Interrupt


As we discover more about the AT1846S, this document will be updated.