TS-7250-V3 XBEE Header: Difference between revisions

From embeddedTS Manuals
No edit summary
No edit summary
 
(9 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=1
gpioset 209c000.gpio 11=1
</source>
</source>


Line 10: Line 10:
<source lang=bash>
<source lang=bash>
## For 3.3V modules:
## For 3.3V modules:
#gpioset 6 4=1
#gpioset 50004040.fpga_gpio 4=1


## For 4V modules:
## For 4V modules:
#gpioset 6 11=1
#gpioset 50004040.fpga_gpio 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 209c000.gpio 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 209c000.gpio 31=1
#sleep 1
#gpioset 209c000.gpio 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 209c000.gpio 11=1 # Route USB to nimbelink
gpioset 6 11=1 # Turn on 4V
gpioset 209c000.gpio 31=1 # assert NIM_PWR_ON
sleep 1
gpioset 209c000.gpio 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 26: 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


Line 52: 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 Chip 209c000.gpio 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 Chip 20a4000.gpio IO 2]]
|-
|-
| 14
| 14
|
| 3.3V VREF
| 3.3V VREF
|-
|-
| 15
| 15
|
| GND
| GND
|-
|-
| 16
| 16
|
| GND
| GND
|-
|-
| 17
| 17
|
| NC
| NC
|-
|-
| 18
| 18
|
| NC
| NC
|-
|-
| 19
| 19
|
| NC
| NC
|-
|-
| 20
| 20
| [[#GPIO|GPIO Bank 0 IO 31]] <ref>This pin is inverted, Setting to 1 drives pin 2 low.</ref>
| Open Drain <ref name=opendrainxbee />
| [[#GPIO|GPIO Chip 209c000.gpio IO 31]] <ref>This pin is inverted, Setting to 1 drives pin 2 low.</ref>
|}
|}
|  
|  

Latest revision as of 10:59, 9 April 2024

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 209c000.gpio 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 50004040.fpga_gpio 4=1

## For 4V modules:
#gpioset 50004040.fpga_gpio 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 209c000.gpio 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 209c000.gpio 31=1
#sleep 1
#gpioset 209c000.gpio 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 209c000.gpio 11=1 # Route USB to nimbelink
gpioset 6 11=1 # Turn on 4V
gpioset 209c000.gpio 31=1 # assert NIM_PWR_ON
sleep 1
gpioset 209c000.gpio 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 Chip 209c000.gpio 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 Chip 20a4000.gpio IO 2
14 3.3V VREF
15 GND
16 GND
17 NC
18 NC
19 NC
20 Open Drain [1] GPIO Chip 209c000.gpio 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.