DIYmall VK-162 GMOUSE GPS Module

Hello,

I have several of these USB devices, the vendor calls them by this name:
DIYmall VK-162 GMOUSE GPS Module

Problem is I can’t get them to work with the AML-S905X-CC using this image fully updated:
2022-09-22-raspbian-bullseye-arm64-lite+aml-s905x-cc.img

The device works on my laptop running Ubuntu 22.04. When I run usb-devices on my laptop, it has this to say about the device:

T:  Bus=01 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#=  7 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=02(commc) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=1546 ProdID=01a7 Rev=01.00
S:  Manufacturer=u-blox AG - www.u-blox.com
S:  Product=u-blox 7 - GPS/GNSS Receiver
C:  #Ifs= 2 Cfg#= 1 Atr=c0 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=01 Driver=cdc_acm
E:  Ad=83(I) Atr=03(Int.) MxPS=  64 Ivl=255ms
I:  If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=ff Driver=cdc_acm
E:  Ad=01(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms

From the above I can see the Vendor ID is 1546 and the Product ID is 01a7 and the driver is cdc_acm

On the Libre board, when I run usb-devices, the device is not listed at all. I see these messages in dmesg

[279530.834198] usb 1-1.3: new full-speed USB device number 5 using xhci-hcd
[279530.936122] usb 1-1.3: New USB device found, idVendor=1546, idProduct=01a7, bcdDevice= 1.00
[279530.936166] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[279530.936187] usb 1-1.3: Product: u-blox 7 - GPS/GNSS Receiver
[279530.936204] usb 1-1.3: Manufacturer: u-blox AG - www.u-blox.com
[279531.075548] cdc_acm 1-1.3:1.0: ttyACM0: USB ACM device
[279531.075787] usbcore: registered new interface driver cdc_acm
[279531.075806] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[279531.379676] usb 1-1-port3: disabled by hub (EMI?), re-enabling...
[279531.380063] usb 1-1.3: USB disconnect, device number 5
[279531.634253] usb 1-1.3: new full-speed USB device number 6 using xhci-hcd
[279531.942189] usb 1-1.3: new full-speed USB device number 7 using xhci-hcd
[279532.171584] usb 1-1-port3: attempt power cycle
[279532.794173] usb 1-1.3: new full-speed USB device number 9 using xhci-hcd
[279532.794344] usb 1-1.3: Device not responding to setup address.
[279533.002186] usb 1-1.3: device not accepting address 9, error -71
[279533.002807] usb 1-1-port3: unable to enumerate USB device
[281234.514899] usb 1-1.3: new full-speed USB device number 10 using xhci-hcd
[281234.594944] usb 1-1.3: device descriptor read/64, error -71
[281234.782911] usb 1-1.3: new full-speed USB device number 11 using xhci-hcd
[281234.862963] usb 1-1.3: device descriptor read/64, error -71
[281234.971578] usb 1-1-port3: attempt power cycle
[281235.594882] usb 1-1.3: new full-speed USB device number 13 using xhci-hcd
[281235.595061] usb 1-1.3: Device not responding to setup address.
[281235.802886] usb 1-1.3: device not accepting address 13, error -71
[281235.803573] usb 1-1-port3: unable to enumerate USB device
[284480.339630] usb 1-1.3: new full-speed USB device number 14 using xhci-hcd
[284480.419813] usb 1-1.3: Device not responding to setup address.
[284480.627635] usb 1-1.3: device not accepting address 14, error -71
[284480.856897] usb 1-1-port3: attempt power cycle
[284481.479605] usb 1-1.3: new full-speed USB device number 17 using xhci-hcd
[284481.479806] usb 1-1.3: Device not responding to setup address.
[284481.687592] usb 1-1.3: device not accepting address 17, error -71
[284481.688345] usb 1-1-port3: unable to enumerate USB device
[286732.599919] usb 1-1.3: new full-speed USB device number 19 using xhci-hcd
[286732.679961] usb 1-1.3: device descriptor read/64, error -71
[286732.788555] usb 1-1-port3: attempt power cycle
[286733.411914] usb 1-1.3: new full-speed USB device number 21 using xhci-hcd
[286733.412043] usb 1-1.3: Device not responding to setup address.
[286733.619906] usb 1-1.3: device not accepting address 21, error -71
[286733.620558] usb 1-1-port3: unable to enumerate USB device
[334615.242843] usb 1-1-port3: attempt power cycle
[334616.014841] usb 1-1-port3: unable to enumerate USB device
[335337.298024] usb 1-1.3: new full-speed USB device number 26 using xhci-hcd
[335337.378047] usb 1-1.3: device descriptor read/64, error -71
[335337.566018] usb 1-1.3: new full-speed USB device number 27 using xhci-hcd
[335337.646055] usb 1-1.3: device descriptor read/64, error -71
[335337.754620] usb 1-1-port3: attempt power cycle
[335338.527350] usb 1-1-port3: unable to enumerate USB device

It would appear that the OS is trying to use the correct driver, but something is wrong and I’m not entirely sure what.

Things I’ve tried:

unplugging / re-plugging the device.

rebooting

Loading the same driver that my Ubuntu laptop uses:

modprobe cdc_acm

lsmod | grep cdc_acm
cdc_acm                32768  0

Wrote product ID and vendor ID to the driver new_id file per this topic here: linux - Forcing driver to device match - Stack Overflow

echo "1546 01a7" > /sys/bus/usb/drivers/cdc_acm/new_id

After the above steps, I see messages like this from dmesg when I unplug / plug the device:

[  160.665599] usbcore: registered new interface driver cdc_acm
[  160.665633] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[  161.782389] rc rc1: two consecutive events of type space
[  266.702302] usb 1-1-port3: attempt power cycle
[  267.474295] usb 1-1-port3: unable to enumerate USB device

Any help with getting this device working would be very appreciated.

What are you using the power your board?

I’m using a voltage step-down adapter. It takes 12v input, and outputs 5v 3a onto a USB micro b cable.

Can’t find the exact one I have anymore, it’s brand is “KREE”. These listings below are basically identical to what I’m using.

It should be a power issue. Measure the voltage of the 5V pin on the board GPIO header with an oscilloscope. If it drops below 5V, your device could experience issues.

I suppose I could try one of these out…

What amperage input can the board handle? I’m surprised the 5v3a isn’t enough.

I ordered a few of these. I plan to just remove the USB input and solder this directly to the board.

https://www.temu.com/goods_snapshot.html?goods_id=601099513224035

The MicroUSB connector or cable could be low quality resulting in significant voltage drop.

If it’s not a PSU with integrated cable to the MicroUSB connector, that is highly likely to be the culprit.

The regulators hooked up now do have an integrated cable to the MicroUSB connector.

I’m planning to put these connectors (link below) onto these 5v10a step-down regulators (link below). I realize the board has a 2a fuse on the power input. I don’t think the GPS unit would cause more than 2a to be drawn in total. I think the problem is as you said, a voltage drop. That could be due to exactly as you described. Too thin of wire, or too long of wire, poor connector, etc. These regulators I linked below have thicker wire. And, I can solder that thicker wire directly to these USB MicroB connectors. This will eliminate the wire size issue, and also hopefully the regulator supplies 5v with ease since it’s rated for 10a. I’ll reply here to share how it goes.

https://www.amazon.com/diymore-Micro-Connector-Plastic-Cover/dp/B09WTH2ZJQ

https://www.temu.com/goods_snapshot.html?goods_id=601099513224035

The last parts finally came in today.

I ran 16GA speaker wire from a 12v source through a 5A fuse and then to the DC-to-DC stepdown regulator which is rated for 5V 10A output. The stepdown regulator has 16GA wire coming out of it for inputs and outputs. These were far too large to fit into the little MicroUSB B DIY connectors, so I soldered 18GA wire to the stepdown regulator’s outputs, and then ran the 18GA into the USB connector and soldered it onto the correct pads. The two 18GA wires fit into the little USB plug barely, but it all went together and actually looks pretty nice.

Hooking it all up, the Libre Computer board fires up no issues. Connecting my USB GPS dongle works fine, I’m seeing data now! And after a minute or two, it had a position fix!

Will try to post pictures…

1 Like

Absolutely not overkill at all. The board consumes between 1 and 5 watts or 0.2 to 1 amps. You put an 18 AWG… :sweat_smile:

Hey, it fixed the problem. :slight_smile:

I did want to ask you @librecomputer how you could tell it was a power problem. I did a lot of internet searching and did not even get a hint that it was this.

These are not desktops with 100W+ power supplies so when USB devices start having issues, it’s generally a power problem first.

1 Like