AT cmds for Mirage Talon from MangoH Red board AT port

i changed the setting of at!mapuart as suggested, but it is setting to 17,16 after reboot.

Something wrong in setting it?

at!mapuart=17,1
OK
at!mapuart?
!MAPUART: 17,16

OK

please read the AT command guide, when you do AT!MAPUART?, 17 is for UART1 and 16 is for UART2

Followed this link : https://source.sierrawireless.com/resources/legato/howtos/customizeuart/#sthash.8VPN578C.dpbs

where it mentions
AT!MAPUART=a,b

Where

  • a is the service type
  • b is the UART number, either 1 or 2 .

Here’s a code sample setting 17 for the service type and 1 for the UART number:

AT!MAPUART=17,1

but when you do query, the meaning is different.

Oh, i dint realize that !! Ok my bad. Thanks for the input. i got it.

17 is for uart1 while 16 for uart2.

AFter the setting, rebooting the board.

FYI, the diag port on the board is disabled. So get only /dev/ttyUSB0, ttyUSB1, ttyUSB2.
USB0 - debug terminal
USB2 - AT cmd terminal

Followed the below steps :

  1. Started the app, “app start atServerIntegrationTest”
  2. Ran “app runProc atServerIntegrationTest --exe=atServerTest – tty /dev/ttyHS0” , but it just hangs and not come out.
  3. On the host pc running ubuntu, tried to enter at+test cmd from the USB1 port , but does not work

You can use my attached application as reference.
Steps:

  1. enter the following AT commands in AT command port:
    AT!ENTERCND=“A710”
    AT!USBCOMP=1,1,8014D
    at!RESET

  2. compile and download the application

  3. in console type the following:
    app runProc atServerIntegrationTest --exe=atServerTest – tty /dev/ttyGS1

in the new raw data port (check in device manager), type ATE1, you should see the following response:


E TYPE: PARA
E PARAM 0: 1

OK


at+bridge=“OPEN”

+BRIDGE TYPE: PARA
+BRIDGE PARAM 0: OPEN

OK
at+bridge=“ADD”

+BRIDGE TYPE: PARA
+BRIDGE PARAM 0: ADD

OK
ati3

Manufacturer: Sierra Wireless, Incorporated
Model: WP7607-1
Revision: SWI9X07Y_02.28.03.03 000000 jenkins 2019/05/21 03:33:04
IMEI: 359780080500170
IMEI SV: 6
FSN: V2842570321010
+GCAP: +CGSM

OK
AT+KHTTPCFG=0,“116.66.221.43”,80,1

+KHTTPCFG PARAM 0: 0
+KHTTPCFG PARAM 1: 116.66.221.43
+KHTTPCFG PARAM 2: 80
+KHTTPCFG PARAM 3: 1

OK
UART_KHTTP_Demo1.rar (405.8 KB)

Is the port /dev/ttyGS1 or /dev/ttyHS0.

On the Windows pc i do see a raw port that comes up.
On ubuntu i am unable to find this raw port.

When starting the app, using the command suggested in step 2, the app stops.
When read the logread, there is failure in setting the baud rate to 115200, but tries to set to 4089 baud which is not standard and stops the app.

/dev/ttyGS1 is a new port in module

In ubuntu, there should be a new port called /dev/ttyUSB3

Lastly i have no idea what 4089 baud rate is …
In line 1124 of atServerTest.c, it should set the baud rate to 115200.


if (LE_OK != le_tty_SetBaudRate(fd,LE_TTY_SPEED_115200))


yes in the atServerTest.c file, the baud is set to 115200.

in the logread, below, it fails telling cant set to the baud rate 4098. It shud have actually been 115200.

root@swi-mdm9x28-wp:~# logread -f
Jan 6 05:41:56 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | supervisor.c HandleRebootExpiry() 534 | Expired reboot timer
Jan 6 05:42:08 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | app.c app_Create() 3207 | Creating app ‘atServerIntegrationTest’
Jan 6 05:42:08 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | app.c app_Start() 3420 | Starting app ‘atServerIntegrationTest’
Jan 6 05:42:08 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | app.c CreateFileLink() 2104 | Created file link ‘/legato/systems/current/apps/atServerIntegrationTest/read-only/lib/libComponent_atServerTestComp.so’ to '/legato/systems/current/apps
Jan 6 05:42:08 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | app.c CreateFileLink() 2104 | Created file link ‘/legato/systems/current/apps/atServerIntegrationTest/read-only/bin/atServerTest’ to '/legato/systems/current/appsWriteable/atServerIn
Jan 6 05:43:03 swi-mdm9x28-wp user.warn Legato: -WRN- | supervisor[2840]/supervisor T=main | proc.c GetWatchdogAction() 359 | atServerTest@0 watchdogAction ‘’ in proc section
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxCoreDumpFileBytes to value 8192.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxFileBytes to value 90112.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxLockedMemoryBytes to value 8192.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxFileDescriptors to value 256.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxMQueueBytes to value 512.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxThreads to value 20.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxQueuedSignals to value 100.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | proc.c proc_Start() 1390 | Starting process ‘atServerTest@0’ with pid 3300
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[3300]/supervisor T=main | proc.c proc_Start() 1355 | Execing ‘atServerTest’
Jan 6 05:43:03 swi-mdm9x28-wp user.warn Legato: -WRN- | UNKNOWN[3300]/framework T=main | LE_FILENAME le_fdMonitor_Create() 667 | FD Monitor object name ‘atServerTest.atServerTestComp.le_atServer’ truncated to ‘atServerTest.atServerTestComp.l’.
Jan 6 05:43:03 swi-mdm9x28-wp user.warn Legato: -WRN- | UNKNOWN[3300]/framework T=main | LE_FILENAME le_fdMonitor_Create() 667 | FD Monitor object name ‘atServerTest.atServerTestComp.le_mcc’ truncated to ‘atServerTest.atServerTestComp.l’.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | atServerTest@0[3300]/atServerTestComp T=main | atServerTest.c _atServerTestComp_COMPONENT_INIT() 1229 | ============== AT server test starts =================
Jan 6 05:43:03 swi-mdm9x28-wp user.err Legato: =ERR= | atServerTest@0[3300]/framework T=main | LE_FILENAME le_tty_SetBaudRate() 284 | TEJASWI Started this @ function setBaudrate in tty.c file
Jan 6 05:43:03 swi-mdm9x28-wp user.err Legato: =ERR= | atServerTest@0[3300]/framework T=main | LE_FILENAME le_tty_SetBaudRate() 290 | TEJASWI Started this @222 after function setBaudrate in tty.c file
Jan 6 05:43:03 swi-mdm9x28-wp user.err Legato: =ERR= | atServerTest@0[3300]/framework T=main | LE_FILENAME le_tty_SetBaudRate() 309 | TEJASWI : value of Output speed = 4105 input speed = 4105
Jan 6 05:43:03 swi-mdm9x28-wp user.err Legato: =ERR= | atServerTest@0[3300]/framework T=main | LE_FILENAME le_tty_SetBaudRate() 329 | Speed rate was not setted, 17/4098 not supported
Jan 6 05:43:03 swi-mdm9x28-wp user.err Legato: =ERR= | atServerTest@0[3300]/atServerTestComp T=main | atServerTest.c TtyLink() 1126 | Failed to configure TTY baud rate
Jan 6 05:43:03 swi-mdm9x28-wp user.emerg Legato: EMR | atServerTest@0[3300]/atServerTestComp T=main | atServerTest.c TtyLink() 1167 | Failed to connect to /dev/ttyGS1
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | proc.c proc_SigChildHandler() 2051 | Process ‘atServerTest@0’ (PID: 3300) has exited with exit code 1.
Jan 6 05:43:03 swi-mdm9x28-wp user.warn Legato: -WRN- | supervisor[2840]/supervisor T=main | app.c app_SigChildHandler() 4015 | Process ‘atServerTest@0’ in app ‘atServerIntegrationTest’ faulted: Ignored.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | app.c app_StopComplete() 4686 | app ‘atServerIntegrationTest’ has stopped.
Jan 6 05:43:03 swi-mdm9x28-wp user.info Legato: INFO | supervisor[2840]/supervisor T=main | apps.c DeactivateAppContainer() 374 | Application ‘atServerIntegrationTest’ has stopped.

you can install my .update as I don’t see problem with my program.

Jul 29 13:11:55 swi-mdm9x28-wp user.info Legato: INFO | atServerTest@0[18417]/atServerTestComp T=main | atServerTest.c _atServerTestComp_COMPONENT_INIT() 1634 | ============== AT server test starts =================
Jul 29 13:11:55 swi-mdm9x28-wp user.info Legato: INFO | atServerTest@0[18417]/atServerTestComp T=main | atServerTest.c OpenPort() 1438 | Opening serial /dev/ttyGS1 at 115200 bps^M
Jul 29 13:11:55 swi-mdm9x28-wp user.info Legato: INFO | atServerTest@0[18417]/atServerTestComp T=main | atServerTest.c OpenPort() 1471 | set serial at 115200 bps (default)^M
Jul 29 13:11:55 swi-mdm9x28-wp user.info Legato: INFO | atServerDaemon[1353]/atServer T=main | le_atServer.c le_atServer_Open() 2838 | created device
atServerIntegrationTest.wp76xx.update (66.3 KB)

Great. Can you share me the source of this app.

Was using the Default one obtained in 19.02 legato.

didn’t i already share with you above?

appreciate the patience u have got in answering silly questions.
Thanks, for now the attached app works.

Will get the attached source and check with what i have.

2 questions

  1. on ubuntu i dont get another port /dev/ttyUSB3 which is the raw port, while on windows i get it and able to communicate too. Is there any driver that needs to be installed on the ubuntu ?

  2. the diag port is not enabled in the mangoh red board. Does that mean i cant use swiflash tool to install or update any .spk image on this ?

  1. you need to go to source.sierrawireless and download the latest GobiSerial driver and install it in your ubuntu.

  2. I am not sure as i never have one module that does not have the diag port.
    You might give a try on swiflash.

Was able to install GobiSerial driver and get working on ubuntu.

Thank you.

Was able to get user AT cmds working from Ubuntu PC after installing GobiSerial Drivers.

Just wanted to know if i want to get GobiSerial driver up on the Qualcomm platform, is there support provided for the same.
I dont see any GobiSerial Driver cmng up, while i see only GobiNet.

Do you mean you want to connect the USB of the mangOH board with WP76 module to another Qualcomm platform with ARM core?
If so, you need to cross compile the GobiSerial driver with the correct toolchain and run the driver in the qualcomm platform.

thank, got the gobiserial.c file. Able to communicate.

i was able to write sample AT application to get custom at commands working.

Is it possible to auto run the below command during boot up and run in background ?
I did write a script in the /etc/rcS.d but it does not run it.

Command,

apps runProc atServerIntegrationTest --exe=atserverTest – tty /dev/ttyGS1

you can write a unsandboxed legato application to call this line by system() API.
Another method is you modify your application to make it automatically run during power on (set start:auto in .adef file), and hardcoded the port to be /dev/ttyGS1 in the source code.