TX2 ttyTHS6 always output "topped"

I use the ttyTHS6 serial port of TX2 and find that after opening the serial port, it will always output “topped”. How can I turn off this output?
jetpack version: 4.3-b134
Thanks.

Is this tested on TX2 devkit? Which JetPack version?

no tested on devkit. The serial port I used before is good. After purchasing a new TX2, the program cannot be swiped. After updating the SDK, such a situation occurs.
The jetpack version is 4.3-b134

hello yichao.jia,

I’m not fully understand your problem, is it possible to attach the logs or snapshot to indicate the issue.
thanks

hi, JerryChang,
Thank you for your reply !
I know why there is “topped”.


Above: The left side is sent to TX2 by other device through ttyTHS6, and the right side is sent to other device by tx2. It can be seen that it should be “charge stopped” from other device to tx2, but “topped” is sent to other device. What could be the problem?
Thanks again.

Looks like the prompt is “charge s”, and the rest is “topped”, which concatenates to a full message charge stopped. My thought is that a certain number of characters are written, but it has not been read, and so it blocks.

Is your application intending to send “charge stopped”, or is the message as a whole unexpected? I’m wondering because the issue is different if you are sending this and it blocks, versus if the sender itself is unexpected. If unexpected, then perhaps this is running also as a serial console.

In the case that you intended this message to send, then be sure that the data sink (data consumer) is reading. Also be sure settings at both sides of the UART are the same in terms of flow control and stop bytes.

hi,
Thanks a lot for your help, and I found a new discovery. Please see my next post

20220902-171248
When the TX2 is powered on,It outputs some system info like the picture above by ttyTHS6, I thought the ttyTHS6 used by others driver, What can I do for closing that?

That port is being used as a serial console. So what you send is a console login responding to “nonsense”. Similarly, it might output content. If you are within Linux (there may be other steps for bootloader stages) you can do this:

sudo systemctl stop nvgetty.service
sudo systemctl disable nvgetty.service

FYI, any UART which can be used in general will be group “dialout”. Any UART with group “tty”. For example, examine this:
ls -l /dev/ttyS* /dev/ttyTHS*

hi, linuxdev
Thank for your reply.
Stopping nvgetty.service won’t work, and It only works on ttyTHS0.

If it is “/dev/ttyTHS6” you are interested in, what do you see from:

ls -l /dev/ttyTHS6
dmesg | grep 'ttyTHS6'

Thank you. but It still doesn’t work.

hello yichao.jia,

In TX2, UART7/UARTG is used by SPE firmware as debug port. you’ll need some modification to enable that.
hence, please see-also Topic 54572 for enabling UART7.
thanks

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.