Experiment of Allystar HD9310

category: gnss

HD9310 Evaluation Kit

The Japanese positioning satellite, Quasi-Zenith Satellite System (QZSS), often referred to as MICHIBIKI, broadcasts not only positioning signals, but also broadcasts augmentation and emergency signals. The augmentation signal would correct positioning errors that may occur in receivers.

The problem is that there are few receivers on the market that can receive this augmentation signal or emergency signal, but this problem is gradually being solved.

Prof. Takasu introduced the evaluation results on the DataGNSS’s evaluation kit that equipped with the China’s new positioning chip, HD9310 on his memorandom. It was capable of receiving L6-band signal that is used for broadcasting the augmentation signal of QZSS. At the order page of DataGNSS, there are three version of receiver. I ordered the version of “standard RTK with QZS L6D/E.” It costed 299 USD.

What I could do with this evaluation kit was to transfer the raw data of CLAS signal (L6D signal) to NTRIP Caster. For CLAS positioning, we may need the format conversion to process them by, for example, the CLAS Test Library in QZSS homepage.

Appearance of HD9310 evaluation kit

TAU1302 containing HD9310 can be seen on the front of the board.

The front of the HD9310 board

On the back of the board, we can see “support QZS L6D/E” (L6D means Centimeter Level Augmentation Service or CLAS signal, L6E means MADOCA signal).

The back of the HD9310 board


The configuration software, Satrack that runs on a Windows PC is required to set up this positioning chip HD9310. I used Latte Panda Alpha 864 to run this software.

A configuration software, Satrack

The Satrack software can remotely control the HD9310 through a TCP/IP connection. We can use netcat or str2str of RTKLIB running on Linux, or strsvr.exe of RTKLIB running on Windows, for converting the HD9310 serial port to TCP/IP. After the configuration, we use Satrack installed on another PC to control the HD9310.

For example, in strsvr.exe on the Windows PC to which the HD9310 is connected, set (0) Input to Serial'', set the appropriate serial port for Opt ..., and select (1) Output to TCP Server, set Port to 2000, for example, press the "Options" button, select (1) -> (0)`` in the Relay Messages field and press “OK”, and then press the “Start” button.

On the other hand, in Satrack’s “TCP/IP Set” of “Device” menu, check Enable TCP/IP, set IP Address to localhost and Port to 2000, and connect HD9310 evaluation board, and we can connect Satrack and HD9310 via TCP/IP. Click the square on the left under the progress bar in strstr.exe to open “Input Stream Monitor” and monitor the communication contents. It is also possible to transfer the data to another NTRIP Caster by selecting and configuring NTRIP Server in (2) Output.

Observation of HD9310 output with RTKLIB

The software version was 3.018.39c548ed, and the hardware version was HD9310.7991ade9d. We can see such information by clicking “MON” and “VER” in the “AR Message” of Satrack’s “View” menu.

According to Operate RTK EVK with rtklib, we can configure HD9310 by sending characters starting with !HEX to the serial port. For example, send

!HEX F1 D9 06 0C 04 00 21 00 00 01 38 21

to Satrack’s CMD window to configure GNSS satellites. These commands are described in “T-5-1908-001-GNSS_Protocol_Specification-V2.3.pdf” at the ftp server shown below.

At first I configured GNSS satellites and frequency bands. We can choose satellites and frequency bands at “CFG-NAVSAT” in “CFG” of AR Message menu. In my HD9310, GPS L1 (L1 C/A), QZSS L1, and QZSS L6 were selected. We can choose them by selecting the check boxes and pressing “Send” to configure it. On the other hand, pressing “poll” to read the configuration.

I selected all the check boxes, and pressed “Send” and “Poll.” The Satrack unselected GPS L1C, BDS, GLONASS, QZSS L1C, Galileo, IRNSS, and SBAS. According to TAU1302/1303 Multi-band RTK EVK, the option C of HD9310 can process BDS B1I, GLONASS L1, Galileo L1OF, and SBAS L1 signals. I expect the functions for further firmware updates. The check boxes of GPS L2C, GPS L5, QZSS L2C, and QZSS L5 were remained checked, but their signals did not appear at Signal Strengh. Therefore, I rolled back the configuration of GPS L1, QZSS L1, and QZSS L6.

Next, I tried to obtain RTCM output. In Satrack’s Port Monitor, we could not see non-ASCII characters of the serial port communications. But strsvr of RTKLIB Windows version presents such non-ASCII characters and it’s rtknavi can decode the RTCM messages. Therefore, I tried, in vain, to obtain RTCM messages. My HD9310 seems not to have the capabilities of handling RTCM messages. Non-ASCII characters in this Input Stream Monitor seems to be L6D messages.

Specification of HD9310

At pages of 20 and 21 of Introduction of HD9310(L6DE__tech_intro.pdf) presented by Allystar, the raw data format producing HD9310 was described. At page 22, it can receive L6D and L6E signals simultaneously, but the concurrent reception would be realized in further firmware updates.

For configuring results, it is essential to know Class IDs and MSG IDs described in 8.Enable/Disable specific message output. According to description at page 21 of L6DE_tech_intro.pdf, Class ID and MSG ID of the raw L6D messages are 0x02 and0x10.. At CFG-MSG at AR Message, I specified these Class ID and MSG ID, pressed Send and Poll. I saw the result of 1, that implied the Class ID and MSG ID are set.

At page 27, we can see the address, user ID, and password of an ftp server to obtain the firmware. I found brochures of HD9300 series chips, new Satrack software, document describing reception trials of NAVIC (or IRNSS) signals, “QZSS L6 Enabled Multi-band Multi-GNSS Receiver(L6DE_tech_intro.pdf)”, and the firmwares (the extension is cyfm). The firmwares are:

  1. HD9310A.HDBD.GN3.115200.8067.0dcba.190813T1.cyfm (for option A)
  2. HD9310B.HDBD.GN3.115200.8067.0dcba.190813T1.cyfm (for option B)
  3. TUMSAT_OptionC_QZS_L1_L6D.115200.7991.ade9d.20190730.cyfm (for receiving L6D signal with option C)
  4. TUMSAT_OptionC_QZS_L1_L6E.115200.7992.29e21.20190807.cyfm (for receiving L6E signal with option C)

Related article(s):