peter-tanner.github.io/_posts/2024-11-25-Chinese-ZHONGKEWEI-ATGM-GNSS-modules-comparison.md
2024-11-25 05:00:35 +08:00

4.9 KiB

title author date categories tags
Chinese ZHONGKEWEI ATGM* GNSS modules comparison peter 2024-11-25 04:00:36 +0800
Electronics
gps
gnss
cheap
comparison
ublox

The ZHONGKEWEI ATGM* series of GNSS modules appear to emulate the popular u-blox NEO and MAX series and are (almost) pin compatible.

Model GPS BDS GLONASS Galileo QZSS VCC [V] Interfaces Internal SOC TTFF [s] Maximum output rate [Hz] CEP50 [m] Cost [AUD]
ATGM332D-6N-74 2.7-3.6 UART,I2C,SPI AT6668 23 10 1.5 5.3287
ATGM336H-6N-74 2.7-3.6 UART,I2C,SPI AT6668 23 10 1.5 5.3171
ATGM336H-5N31 2.7-3.6 UART1,UART2 AT6558 32 10 2.5 4.6255
ATGM332D-5N31 2.7-3.6 UART1,UART2 AT6558 32 10 2.5 4.1224
ATGM332D-5NR32 (?) 1.8-3.6 UART1,UART2 AT6558R 32 5 2.5 4.0525
ATGM336H-5NR32 (?) 1.8-3.6 UART1,UART2 AT6558R 32 5 2.5 3.8498
ATGM332D-5N11 2.7-3.6 UART1,UART2 AT6558 32 10 2.5 5.9460
ATGM336H-5N11 2.7-3.6 UART1,UART2 AT6558 32 10 2.5 5.0609
NEO-M9N (u-blox) 2.7-3.6 UART,I2C,SPI,USB UBX-M9140-KB 24 25 2.0 45

These parameters seem to be the same for all ATGM modules:

Key Value Note
Cold start sensitivity [dBm] -148
Tracking sensitivity [dBm] -162
Protocols NMEA0183
Assisted GNSS
Battery and RTC
Lockout speed [m/s] 515 Not specified on AT6668?
Lockout altitude [m] 18000 Not specified on AT6668?
Lockout acceleration [g] 4 Not specified on AT6668?

The main differences compared to the NEO-M9N are:

  • Significantly lower cost
  • Lower maximum output data rate of only 10 Hz
  • Slightly higher lockout speed of 515 m/s
  • Lower lockout altitude of 18000 m (compared to 80000 m)
  • Lacks USB and lacks UBX or any binary output format

AGNSS

The GNSS receivers support assisted GNSS. The datasheet refers to another file, "AGNSS solution of ZhongKe micro". I could only find these slides from an unofficial source.

The document contains the following code and the password and username of a free trial account which is rate-limited to 1000 requests per hour. The code works and the server is still online and will complain if you don't provide a username/password. I could not confirm that this account worked, either due to bots hitting the 1000 requests per hour rate limit or due to it being deactivated since the document was made.

addr = "121.41.40.95"  # Server address
port = 2621  # port
message = b"user=freetrial;pwd=123456;cmd=full;lat=30;lon=120;"  # Request message
import socket

socket.setdefaulttimeout(4)
client = socket.socket()
client.connect((addr, port))
client.send(message)
reply_data = b""
while True:
    current_reply = client.recv(1024)
    if len(current_reply) == 0:
        break
    else:
        reply_data += current_reply

print(reply_data)

import serial
tty = serial.Serial()
tty.port = "COM1"
tty.baudrate = 9600
tty.open()
tty.write(reply_data)
tty.close()

The document seems to indicate the AGNSS service is supported by China Aerospace Science and Industry Corporation.