# TX2: 20Hz, USB Baud, onboard storage, USB serial chip

**URL:** <https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72>\
**Category:** Positioning and Navigation\
**Created:** [September 30, 2026, 7:01am UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72 "2026-09-30T07:01:11Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![whesse99](https://avatars.discourse-cdn.com/v4/letter/w/53a042/32.png) [@whesse99](https://community.sparkpnt.com/u/whesse99)\
**Post date:** [September 30, 2026, 7:01am UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/1 "2026-09-30T07:01:11Z")

</div>

TX2: (1) What is the maximum rate for RTCM3 MSM7 (1077/1087/1097/1127) output — can it sustain 10 or 20 Hz? (2) With “Output GNSS data to USB serial” enabled, what is the USB baud rate, and does it carry MSM7 at that rate without drops? (3) Does the TX2 have any onboard storage? (4) What USB-serial chip does it use?

---

<div class="post-metadata">

**Author:** ![Sparky](https://yyz1.discourse-cdn.com/flex009/user_avatar/community.sparkpnt.com/sparky/32/15_2.png) [@Sparky](https://community.sparkpnt.com/u/Sparky)\
**Post date:** [September 30, 2026, 5:23pm UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/2 "2026-09-30T17:23:12Z")

</div>

Welcome @whesse99 ! Great questions.

1. Generally yes, but it do you want NMEA as well or just MSM7?

 ![image](https://canada1.discourse-cdn.com/flex009/uploads/sparkpnt/original/1X/ceb9753003b4a000bbe1adc0137aa3afb0bc263e.png)

Above is pygpsclient showing RTCM parsing from the TX2, MSM7, 1077/1087/1097/1127 at 20Hz.

1. 115200bps. It appears to not be dropping any data but this is visual inspection only.

2. No, not really.

3. CH342 dual USB to serial IC capable of going up to 921600 or above. Currently the TX2 firmware doesn’t allow modification of the USB serial baud rate, but we could add that if needed.

---

<div class="post-metadata">

**Author:** ![whesse99](https://avatars.discourse-cdn.com/v4/letter/w/53a042/32.png) [@whesse99](https://community.sparkpnt.com/u/whesse99)\
**Post date:** [October 1, 2026, 2:24am UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/3 "2026-10-01T02:24:20Z")

</div>

> [@Sparky](#):
>
> Welcome @whesse99 ! Great questions.
> 
> 1. Generally yes, but it do you want NMEA as well or just MSM7?
> 
> ![image](https://canada1.discourse-cdn.com/flex009/uploads/sparkpnt/original/1X/ceb9753003b4a000bbe1adc0137aa3afb0bc263e.png)
> 
> Above is pygpsclient showing RTCM parsing from the TX2, MSM7, 1077/1087/1097/1127 at 20Hz.
> 
> 1. 115200bps. It appears to not be dropping any data but this is visual inspection only.
> 
> 2. No, not really.
> 
> 3. CH342 dual USB to serial IC capable of going up to 921600 or above. Currently the TX2 firmware doesn’t allow modification of the USB serial baud rate, but we could add that if needed.

Thanks — very helpful. For Q1: MSM7 only (1077/1087/1097/1127 + 1005 at 1 Hz); NMEA off or ≤1 Hz on the second port.

On Q2, my concern is bandwidth: in open sky with all four constellations, a multi-band MSM7 epoch is roughly 1.0–1.4 kB, which at 115200 (≈11.5 kB/s) caps us around 8–10 Hz before the UART saturates. 20 Hz would need ~25–30 kB/s.

Could you add a configurable USB serial baud rate (460800 or 921600)? That would be a deciding factor for us. And if possible, could you run a 10-minute open-sky test at 20 Hz and check for gaps in the MSM epoch times per constellation, rather than message counts?

---

<div class="post-metadata">

**Author:** ![Sparky](https://yyz1.discourse-cdn.com/flex009/user_avatar/community.sparkpnt.com/sparky/32/15_2.png) [@Sparky](https://community.sparkpnt.com/u/Sparky)\
**Post date:** [October 1, 2026, 4:47pm UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/4 "2026-10-01T16:47:21Z")

</div>

Yup. Feature request [here](https://github.com/sparkfun/SparkFun_RTK_Everywhere_Firmware/issues/1186). [Release candidate](https://github.com/sparkfun/SparkFun_RTK_Everywhere_Firmware_Binaries/tree/main/soc/esp32) has the feature.

 ![image](https://canada1.discourse-cdn.com/flex009/uploads/sparkpnt/original/1X/526c1b8e6782f69083d3344f2389db1e733c7322.png)

I’ve limited the baud rates to just 115200 and 921600 so that a user who has lost connectivity has just two bauds to try.

I don’t have a chance at the moment to run the 20 minute test. I encourage you to give it a try.

---

<div class="post-metadata">

**Author:** ![Ryan.F](https://yyz1.discourse-cdn.com/flex009/user_avatar/community.sparkpnt.com/ryan.f/32/21_2.png) [@Ryan.F](https://community.sparkpnt.com/u/Ryan.F)\
**Post date:** [October 1, 2026, 11:37pm UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/5 "2026-10-01T23:37:49Z")

</div>

Welcome @whesse99,

I know there is a good chance you cant share the details, but there is likely a _neat_ backstory to needing MSM7 at 20Hz. I’d love to hear it if you can share 😉

---

<div class="post-metadata">

**Author:** ![whesse99](https://avatars.discourse-cdn.com/v4/letter/w/53a042/32.png) [@whesse99](https://community.sparkpnt.com/u/whesse99)\
**Post date:** [October 2, 2026, 12:42am UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/6 "2026-10-02T00:42:52Z")

</div>

We are creating point clouds from video and gnss and need 20Hz to get the resolution.  
See [https://4d-360.com/](https://4d-360.com/) for detail/demos.  
Just purchased a TX2 in Oz.  
Thanks for your help.  
Walter

---

<div class="post-metadata">

**Author:** ![Ryan.F](https://yyz1.discourse-cdn.com/flex009/user_avatar/community.sparkpnt.com/ryan.f/32/21_2.png) [@Ryan.F](https://community.sparkpnt.com/u/Ryan.F)\
**Post date:** [October 2, 2026, 1:22am UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/7 "2026-10-02T01:22:33Z")

</div>

Wow, what a great reason for 20Hz MSM7 !

I’d love to chat about the registration across frames for the model… if you ever have time for an email.

---

<div class="post-metadata">

**Author:** ![whesse99](https://avatars.discourse-cdn.com/v4/letter/w/53a042/32.png) [@whesse99](https://community.sparkpnt.com/u/whesse99)\
**Post date:** [October 2, 2026, 1:55am UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/8 "2026-10-02T01:55:18Z")

</div>

with the old RTK torch I used IMU sync between its IMU and camera IMU to transfer GNSS time to video frames.  
On the TX2 I will use GNSS Kinematic to sync (that is working now on the RTK torch as well with 3ms difference).  
All good fun.

---

<div class="post-metadata">

**Author:** ![whesse99](https://avatars.discourse-cdn.com/v4/letter/w/53a042/32.png) [@whesse99](https://community.sparkpnt.com/u/whesse99)\
**Post date:** [October 24, 2026, 12:09am UTC](https://community.sparkpnt.com/t/tx2-20hz-usb-baud-onboard-storage-usb-serial-chip/72/9 "2026-10-24T00:09:52Z")

</div>

Update after testing on RC d3.5-Oct 21 2026 (LG290P03AANR02A01S):

- With measurementRateMs = 50 the LG290P itself runs at 20 Hz (PQTMCFGFIXRATE reads 50; on the LG290P USB port at 460800 I see 19.4 GGA/s and MSM7 at 50 ms).
- Over Wi-Fi (TCP server, port 2948) the ESP32 only forwards about 7–8 KB/s: MSM7 GPS+GAL+QZSS+BDS arrives at about 6–7.5 epochs/s, with gaps of 100–350 ms. Turning Bluetooth off made no difference.
- It looks like the LG290P → ESP32 UART is the limit (115200?). Could that link be raised (460800/921600) on the TX2 so 20 Hz MSM7 can go out over Wi-Fi/TCP?
- Separately: setting the rate on the web config page (10 Hz) saved but didn’t reach the LG290P (it stayed at 500 ms); only the CLI plus a direct PQTMCFGFIXRATE,W worked.
- Also seen: through a phone hotspot (2.4 GHz) the TCP stream stalls for 1–6 s at a time even at 10 Hz GPS+GAL, so for now we’ll read the LG290P over USB on the tablet for 20 Hz.

Thanks, Walter
