The Mystery of a Circuit Board Supporting Digi S3B but Not S2C
2020-11-18
First, let’s define a few terms: (1) A certain circuit board, named the 900HP baseboard, can test the 900HP module;

(2) A self-developed circuit board, named the self-developed XBee baseboard, can also test the 900HP module;

(3) The Digi XBee development board can test modules in XBee TH packaging.

Now, let’s discuss the testing phenomena: (1) Using the Digi XBee development board, both the 900HP module (S3B) and the S2C module were tested successfully, including firmware upgrades, with no issues; (2) Using the self-developed XBee baseboard, both the 900HP module (S3B) and the S2C module were tested successfully, including firmware upgrades, with no issues; (3) Using the 900HP baseboard, the 900HP module (S3B) was tested successfully, including firmware upgrades; however, the S2C module could not be recognized.This is quite strange. It left: Di Fatty in disbelief, Yuan Fang astonished, this matter is very suspicious!Both the self-developed XBee baseboard and the 900HP baseboard use the same power supply (both using AMS1117-3.3) and the same USB to serial chip (both using FTDI’s FT232RL), how could there be such a difference?To clarify why the 900HP baseboard cannot support the S2C module, the mystery-solving journey began:(1) Suspecting that the LED lights on the DOUT and DIN lines are causing interferenceReason: The pin current of the 900HP and S2C modules is different;Solution: Remove the two LED lights from the 900HP baseboard.Test: After connecting the S2C module, it was still not recognized. This disproves the first suspicion.Using a multimeter to test the 3.3V voltage revealed:900HP baseboard: 3.80V, which is higher than 3.6V, indicating a high voltage.Self-developed XBee baseboard: 3.27V, which is normal voltage.Thus, the second suspicion arose:(2) Suspecting that the power chip 1117-3.3 used on the 900HP baseboard is defectiveReason: The tested 3.3V voltage is 3.80V;Solution: Replace the power chip with the same one used on the self-developed XBee baseboard.Test: After connecting the S2C module, it was still not recognized. This disproves the second suspicion.After removing the S2C module, I tested the DOUT and DIN pins with a multimeter and accidentally found the voltage was 5V; conversely, testing the DOUT and DIN pins on the self-developed XBee baseboard showed a voltage of 3.27V. Thus, I focused my suspicion on the FT232RL chip again.

(3) Suspecting that the circuit design of the FT232RL is unreasonableReason: When the XBee module is not connected, the DOUT and DIN pins should be at 3.3V; otherwise, there will be compatibility issues with the XBee module levels;Action: Inspect the FT232RL circuit.Upon opening the gerber file of the 900HP baseboard, I found that both the VCC (pin 20) and VCCIO (pin 4) of the FT232RL are connected to 5V; whereas the VCCIO (pin 4) of the self-developed XBee baseboard is connected to 3.3V.This is the root cause of the problem!

Reviewing the specifications of the FT232RL: (1) Supports single power supply, i.e., VCC=3.3~5.25V; (2) Supports CMOS output and TTL input at 5V, 3.3V, 2.8V, or 1.8V, meaning VCCIO can be connected to 5V, 3.3V, 2.8V, or 1.8V; the associated pins are: +1.8V to +5.25V supply to the UART Interface and CBUS group pins (1…3, 5, 6, 9…14, 22, 23).

Comparing the specifications of the 900HP module (S3B) and the S2C module:
|
900HP Module (S3B) |
S2C Module |
|
|
Voltage – supply |
2.1~3.6V (recommended above 3.0V) |
2.1~3.6V |
|
Output voltage for logic 0 |
0.05 x VDD |
0.18 x VCC (maximum) |
|
Output voltage for logic 1 |
0.95 x VDD |
0.82 x VCC (minimum) |

Based on: XBee module’s VDD (VCC)=3.3V, FT232RL’s VCCIO=5V, we have:
|
900HP Module (S3B) |
S2C Module |
|
|
DOUT High Level |
3.135V Close to 5V CMOS level input range |
2.706V Does not meet 5V CMOS level input range |
|
DOUT Low Level |
0.165V<1.5V Meets 5V CMOS level input range |
0.594V<1.5V Meets 5V CMOS level input range |
|
DIN High Level |
FT232RL output 4.1V (3.2~4.9V)>2.0V meets |
FT232RL output 4.1V (3.2~4.9V)>2.0V meets |
|
DIN Low Level |
FT232RL output 0.4V (0.3~0.6V)<0.8V meets |
FT232RL output 0.4V (0.3~0.6V)<0.8V meets |
It is evident that the DOUT high level of the 900HP module (S3B) meets the 5V CMOS level input range, while the S2C module does not meet this requirement, which is the reason why the 900HP baseboard supports the 900HP module (S3B) but not the S2C module!Additionally, an interesting phenomenon was discovered: when the USB cable is directly connected to the PC, the VCCIO is tested at 5.03V, while when connected to a USB HUB, the VCCIO is tested at 4.73V. This results in the S2C module being recognized when plugged into the USB HUB, but not when plugged directly into the PC. The voltage difference is so small, yet so magical!Thus, the mystery is fully revealed.As a testament, here is a poem:In my life, curiosity is strong, I love to explore difficult problems.After a thorough investigation, my true nature is revealed.Finally, I also recommend theself-developed XBee baseboard (which can replace the original Digi XBee development board and has a price advantage). If you are interested in this or Digi products, please contact: Manager Jia at 13401050976.
Popular articles from the past (Click the article title to read directly):
1.Comparison of several common short-range wireless communication technologies;
2.A brief discussion on the AT commands of the Digi Xbee module;
3.A brief discussion on the transparent transmission and API mode of the Digi Xbee module;
4.A brief discussion on the Digi 900HP Digimesh networking communication test;
5.A brief discussion on the Digi XBee3 ZigBee networking and communication test;
6.XBee3 Zigbee starts using Micropython.