Hi, I have code that builds to different FX30 modems and with different versions of legato. The name for the uart seems to change from device to device and legato version.
How can I work out what dev name I should be using per device/legato version? I need to build it into my build system.
I have now got ttyHS0, ttyHSL0 and ttyMSM0
I thought it was just the legato version that determined this, but now I am not sure.
I am building for FX30S modems with wp85, wp76xx and wp77 modules…
Yes, but what is that list… what version of what FW causes the change in naming? I know that the following guide suggest a change to the MSMx naming Linux 4.14 Migration Guide - Legato Docs… but what about the other naming differences… HS0 and HSL0?
I found this in the latest user guide (update 2 weeks ago)… which suggest something has gone wrong with port mappings… I have never put it into the mode 15… so not sure how it has gone wrong…
o set:
AT!MAPUART=[,]
where:
• can be:
0—UART disabled
1—AT Command service (Note: Not available for UART 2)
2—Diagnostic Message service
3—Reserved
4—NMEA service
5–13—Reserved
14—RS-485 Linux application (Note: Not available for UART 2)
Note: Option 14 is only available in release FX30S 3G R14.0.2.001 or
later. Option 14 uses /dev/ttyHSL0 driver. As well, RS-485 will be enabled
automatically upon startup.
1**5—RS232 with Hardware Flow control: ** · Linux application (UART 1)
**Note: Option 15 is only available in release FX30S 3G R14.0.2.001 or ** later. Option 15 uses /dev/ttyHS0 driver. However, option 17 uses /dev/
**ttyHSLx driver, where x is the UART number. As well, RS232 with flow ** control will be enabled automatically upon startup.
16—Linux console
17—Customer Linux application
• can be:
1—UART 1 (Default if UART number is not specified)
2—UART 2
Value returned: OK
Example:
AT!MAPUART=17,1
OK
Yes I know that is what the documentation I linked above says. But that is NOT what is happening on my module. It is going to AT!MAPUART=17,1 → /dev/ttyHS0 when it should rather be AT!MAPUART=17,1 → /dev/ttyHSL0 according to the docs… so something is not right on my module.
I have tried flashing the stock image… no change. I have tried factory resetting… no change…
Is it possible the config on the device has been changed/ corrupted. Can I get it back to the factory state… How do I achieve that?
I have two running… one is correct and using HSL0… but this one is somehow got itself stuck on HS0… I am sure it used to work with HSL0… I wonder if all the attempts of getting FW download to work has caused some conflicts with version changes etc…
Also it is notable that if I configure “UART1” with the AT service, Linux console or DM port… I get no data from the device over the serial port… I used to get debug message if set to LINUX console… it is now dead…
So I think something has happened to the mapping in LINUX…
all version (modem, legato, yocto) are different…
You need to isolate different factors to see which component makes the problem…
I guess the yocto version “SWI9X07Y_02.37.10.02” is working fine to enumerate the correct UART device node.
And it should be given by your distributor as mentioned here: