TS-7250-V3 XBEE Header: Difference between revisions

From embeddedTS Manuals
No edit summary
No edit summary
(12 intermediate revisions by 2 users not shown)
Line 4: Line 4:
<source lang=bash>
<source lang=bash>
# Turn on the USB
# Turn on the USB
gpioset 0 11=0
gpioset 0 11=1
</source>
</source>


This header can provide 3.3V or 4V as some cell radios require higher voltage.
This header can provide 3.3V or 4V as some cell radios require higher voltage. Only enable one power supply to match your radio:
<source lang=bash>
<source lang=bash>
# Turn 3.3V & 4V off;
## For 3.3V modules:
gpioset 6 4=0 11=0
#gpioset 6 4=1


# For 3.3V modules:
## For 4V modules:
gpioset 6 4=1
#gpioset 6 11=1


# For 4V modules:
# Reset to the modem is controlled with:
# gpioset 6 11=1
gpioset
 
# If your modem supports USB, this must be enabled,
# disabling the lower external USB port and enabling
# the modem's.
gpioset 0 11=1
 
# Some modems require NIM_PWR_ON to be "pressed" before they
# turn on. WARNING: If the modem is already on, this same
# sequence may turn it off.
#gpioset 0 31=1
#sleep 1
#gpioset 0 31=0
</source>
 
For example, this initialization is known to work for these modules:
* NL_SW_LTE_S7588-T-C
* NL_SW_LTE_SVZM20-B
<source lang=bash>
gpioset 0 11=1 # Route USB to nimbelink
gpioset 6 11=1 # Turn on 4V
gpioset 0 31=1 # assert NIM_PWR_ON
sleep 1
gpioset 0 31=0 # deassert NIM_PWR_ON
</source>
</source>


For serial modules refer to these related links:
For serial modules refer to these related links:
* [https://www.embeddedarm.com/blog/a-friendly-introduction-to-xbee/ Technologic Systems: A friendly introduction to XBEE]
* [https://www.embeddedTS.com/blog/a-friendly-introduction-to-xbee/ Technologic Systems: A friendly introduction to XBEE]
* [https://github.com/digidotcom/xbee_ansic_library Digi's C library for XBEE API mode]
* [https://github.com/digidotcom/xbee_ansic_library Digi's C library for XBEE API mode]
* [https://github.com/digidotcom/xbee-python Digi's Python XBEE library]
* [https://github.com/digidotcom/xbee-python Digi's Python XBEE library]
Line 29: Line 52:
This sample code can be used to verify connectivity to the serial based modules:
This sample code can be used to verify connectivity to the serial based modules:
<source lang=bash>
<source lang=bash>
wget http://ftp.embeddedarm.com/ftp/ts-arm-sbc/ts-7840-linux/samples/xbeetest.c
wget http://ftp.embeddedTS.com/ftp/ts-arm-sbc/ts-7840-linux/samples/xbeetest.c
gcc xbeetest.c -o xbeetest
gcc xbeetest.c -o xbeetest


gpioset 6 4=0 11=0 # Turn all modem power off
gpioset 6 4=1 # Turn on only 3.3V
gpioset 6 4=1 # Turn on only 3.3V


Line 56: Line 78:
|-
|-
! Pin
! Pin
! IO Type
! Signal
! Signal
|-
|-
| 1
| 1
|
| VCC (XBEE_3.3V or NIMBEL_4.7V)
| VCC (XBEE_3.3V or NIMBEL_4.7V)
|-
|-
| 2
| 2
| [[#IO specifications|CPU 3.3]]
| [[#UARTs|ttymxc3 TXD]]
| [[#UARTs|ttymxc3 TXD]]
|-
|-
| 3
| 3
| [[#IO specifications|CPU 3.3]]
| [[#UARTs|ttymxc3 RXD]]
| [[#UARTs|ttymxc3 RXD]]
|-
|-
| 4
| 4
|
| GND
| GND
|-
|-
| 5
| 5
| NC
| Open Drain <ref name=opendrainxbee />
| [[#GPIO|GPIO Bank 0 IO 10]]
|-
|-
| 6
| 6
|
| NIMBEL_4.7V
| NIMBEL_4.7V
|-
|-
| 7
| 7
|
| [[#USB|USB_XBEE_P]]
| [[#USB|USB_XBEE_P]]
|-
|-
| 8
| 8
|
| [[#USB|USB_XBEE_N]]
| [[#USB|USB_XBEE_N]]
|-
|-
| 9
| 9
|
| GND
| GND
|-
|-
| 10
| 10
|
| GND
| GND
|-
|-
| 11
| 11
|
| GND
| GND
|-
|-
| 12
| 12
| [[#IO specifications|CPU 3.3]]
| [[#UARTs|ttymxc3 CTS#]]
| [[#UARTs|ttymxc3 CTS#]]
|-
|-
| 13
| 13
| NC
| Open drain <ref name=opendrainxbee>Driving high drives this pin to ground. Low tristates</ref>
| [[#GPIO|GPIO Bank 2 IO 2]]
|-
|-
| 14
| 14
|
| 3.3V VREF
| 3.3V VREF
|-
|-
| 15
| 15
|
| GND
| GND
|-
|-
| 16
| 16
|
| GND
| GND
|-
| 17
|
| NC
|-
| 18
|
| NC
|-
| 19
|
| NC
|-
| 20
| Open Drain <ref name=opendrainxbee />
| [[#GPIO|GPIO Bank 0 IO 31]] <ref>This pin is inverted, Setting to 1 drives pin 2 low.</ref>
|}
|}
|  
|  

Revision as of 18:45, 22 September 2023

The CN20 header is a 2mm pitch 2x10 header which supports XBEE form factor modules. These include Nimbelink and Digi cell modems, Zigbee, Digi mesh, and other third party radios.

For Cell radios that use USB this must be enabled. This turns off USB to the bottom port on the dual high type A connector. Only enable if this is compatible with your module:

# Turn on the USB
gpioset 0 11=1

This header can provide 3.3V or 4V as some cell radios require higher voltage. Only enable one power supply to match your radio:

## For 3.3V modules:
#gpioset 6 4=1

## For 4V modules:
#gpioset 6 11=1

# Reset to the modem is controlled with:
gpioset 

# If your modem supports USB, this must be enabled,
# disabling the lower external USB port and enabling
# the modem's.
gpioset 0 11=1

# Some modems require NIM_PWR_ON to be "pressed" before they
# turn on. WARNING: If the modem is already on, this same
# sequence may turn it off.
#gpioset 0 31=1
#sleep 1
#gpioset 0 31=0

For example, this initialization is known to work for these modules:

  • NL_SW_LTE_S7588-T-C
  • NL_SW_LTE_SVZM20-B
gpioset 0 11=1 # Route USB to nimbelink
gpioset 6 11=1 # Turn on 4V
gpioset 0 31=1 # assert NIM_PWR_ON
sleep 1
gpioset 0 31=0 # deassert NIM_PWR_ON

For serial modules refer to these related links:

This sample code can be used to verify connectivity to the serial based modules:

wget http://ftp.embeddedTS.com/ftp/ts-arm-sbc/ts-7840-linux/samples/xbeetest.c
gcc xbeetest.c -o xbeetest

gpioset 6 4=1 # Turn on only 3.3V

./xbeetest /dev/ttymxc3

This will print out the module information such as:

XBee3 Zigbee TH RELE: 100A
Build: Apr 16 2020 19:00:33
HV: 424E
Bootloader: 181 Compiler: 8030001
Stack: 6710
OK
Signals Pin Layout
Pin IO Type Signal
1 VCC (XBEE_3.3V or NIMBEL_4.7V)
2 CPU 3.3 ttymxc3 TXD
3 CPU 3.3 ttymxc3 RXD
4 GND
5 Open Drain [1] GPIO Bank 0 IO 10
6 NIMBEL_4.7V
7 USB_XBEE_P
8 USB_XBEE_N
9 GND
10 GND
11 GND
12 CPU 3.3 ttymxc3 CTS#
13 Open drain [1] GPIO Bank 2 IO 2
14 3.3V VREF
15 GND
16 GND
17 NC
18 NC
19 NC
20 Open Drain [1] GPIO Bank 0 IO 31 [2]

TS-7250-V3-XBEE Header.svg

  1. 1.0 1.1 1.2 Driving high drives this pin to ground. Low tristates
  2. This pin is inverted, Setting to 1 drives pin 2 low.