pls8x RemoteWakeUp/Event/USB | Thales IoT Developer Community
December 19, 2019 - 8:59pm, 1712 views
Hello everyone !
I'm trying to use the remote wake up.
What I'm trying to do is to send a signal on GPIO1 when the ****m receive data and then wake the computer using the GPIO1
The GPIO1 is connected to a computer and is configured as key input in linux.
Using "AT^SCFG="RemoteWakeUp/Event/URC" GPIO1 " I can validate that the gpio1 is correctly setup and does wakeup the computer on a URC event.
So I tried to configure the ****m using USB as well with: "AT^SCFG="RemoteWakeUp/Event/USB", GPIO1" and "AT^SCFG=\"RemoteWakeUp/Ports\", rmnet0"
But this does nothing.
My expectation is that when there is usb data available for the TE (the computer) is should send a signal to GPIO1. Am I correct ?
The pls8x doc say the following : "Configure line that shall be toggled to wake up the TE when a Remote Wakeup Event occurs on USB."
So when does a Remote Wakeup Event occurs on USB ?
also
Is there an other way to send a signal on GPIO1 ? We use the ****m in WWAN **** (the cdc-eth driver in linux) when we receive data ?
What we want is to let the computer sleep all the time except when we receive data.
Thank you !
this is the current output of AT^SCGF? (I remove the cfg for URC in this one)
^SCFG: "Audio/Loop","0" ^SCFG: "Audio/SvTone","0" ^SCFG: "Call/ECC","0" ^SCFG: "Call/Speech/Codec","2" ^SCFG: "GPIO/****/Antenna","off" ^SCFG: "GPRS/Auth","2" ^SCFG: "GPRS/AutoAttach","enabled" ^SCFG: "MEop****/CFUN","1","1" ^SCFG: "MEop****/DTM/****","0" ^SCFG: "MEop****/ExpectDTR","current","acm1","acm2","acm3","acm4","rmnet0","rmnet1","asc0" ^SCFG: "MEop****/ExpectDTR","powerup","acm1","acm2","acm3","acm4","rmnet0","rmnet1","asc0" ^SCFG: "MEop****/NonBlock/Cops","0" ^SCFG: "MEop****/PingRsp","1" ^SCFG: "MEop****/PowerMgmt/LCI","disabled" ^SCFG: "MEop****/Prov/Cfg","0" ^SCFG: "MEop****/Prov/Iccid1","0","" ^SCFG: "MEop****/Prov/Iccid2","0","" ^SCFG: "MEop****/PwrSave","disabled","0","50" ^SCFG: "MEop****/PwrSave/Delay/USB","10" ^SCFG: "MEShutdown/OnIgnition","off" ^SCFG: "MEShutdown/Timer","off" ^SCFG: "Misc/CId","" ^SCFG: "Radio/Band","5456495" ^SCFG: "Radio/CNS","0" ^SCFG: "Radio/Mtpl","0" ^SCFG: "Radio/OutputPowerReduction","4" ^SCFG: "RemoteWakeUp/Event/ASC","none" ^SCFG: "RemoteWakeUp/Event/URC","none" ^SCFG: "RemoteWakeUp/Event/USB","GPIO1" ^SCFG: "RemoteWakeUp/Ports","current","acm1","acm2","acm3","acm4","rmnet0","rmnet1","asc0" ^SCFG: "RemoteWakeUp/Ports","powerup","acm1","acm2","acm3","acm4","rmnet0","rmnet1","asc0" ^SCFG: "RemoteWakeUp/Pulse","10" ^SCFG: "SIM/CS","SIM_1" ^SCFG: "SIM/Retry","on" ^SCFG: "SMS/AutoAck","0" ^SCFG: "SMS/Format","3GPP","3GPP2" ^SCFG: "Tcp/IPv6Priv","1" ^SCFG: "Tcp/IRT","3" ^SCFG: "Tcp/Loop","disabled" ^SCFG: "Tcp/MR","10" ^SCFG: "Tcp/OT","6000" ^SCFG: "Tcp/TLS/Version","MIN","***" ^SCFG: "Tcp/UnreachRsp","1" ^SCFG: "Tcp/WithURCs","on" ^SCFG: "URC/DstIfc","mdm" ^SCFG: "URC/Ringline","local" ^SCFG: "URC/Ringline/ActiveTime","2"
Alexandre Leblanc
Hello,
And does your device support USB Suspend/Resume (USB Specification Revision 2.0). Then VUSB_IN line is always kept enabled.
The solution with GPIO is for legacy USB applications not supporting USB Suspend/Resume. Then to wake up the host application while the USB interface is in detached state (i.e., VUSB_IN = 0) the GPIO line can be used.
The first solution should work if you set "none" as <RemWakeLine>.
Regards,
Bartłomiej
I just realise our modem is connected on an internal usb hub 1.1. compliant so no USB Suspend/Resume for us. We will be force to use the legacy soluction.
So using the GPIO, is it mandatory to have the USB interface in detached state ?
Alexandre Leblanc
Hello Alexandre,
yes, in my opinion it makes sense that it will work only when USB is in detached state. Imagine it works even if USB is active - in that case GPIO1 would blink all the time, with every byte received by module.
Hence, please check if you get expected behavior when USB will be detached.
Best regards,
Adam
hum, I've been testing different configuration for the remote wake up and nothing seems to be working. What would a typical configuration look like ? My goal is to use the modem to wake up the host computer via the GPIO1 pin when the modem receive data.
So far I've tried to set the modem using this configuration AT^SCFG=\"RemoteWakeUp/Event/USB\", GPIO1 but nothing seems to work.
I've also tried to use "AT^SCFG=\"RemoteWakeUp/Event/USB\"none" with no luck so far. (USB hub is usb1.1 compliant, host computer is usb2 compliant)
unbinding the driver does not seem to have any effect. (modem is solder to board) so there is no way to detach the physical VUSB_IN line that provide the 5V
Q1 , is there a way to generate a URC when the modem receive data ? (since RemoteWakeUp/Event/URC works with the modem driver binded or not) even if that means receiving URC all the time ...
Any guidance?
Alexandre Leblanc
Hello,
If USB suspend is not for you, you should be able to use for example GPIO line as you try to do. As I understand it did work for you for URC and GPIO1 line was triggered. In that case "RemoteWakeUp/Pulse" setting is most probably fine.
You have written that host computer USB is connected via USB hub to the module. Would it be possible to connect it directly, at least for test?
How about you set GPIO1 both for "RemoteWakeUp/Event/URC" and "RemoteWakeUp/Event/USB". If "RemoteWakeUp/Ports" was not changed from the last listing (all were included) it should work.
It's not possible to generate URC on each data packet received on wwan.
Regards,
Bartłomiej