Cp210x driver?

I am trying to connect a USB serial logging cable from a weather station ( Davis Weatherlink cable ) and the OS is missing the driver.

After plugging in the cable, dmesg returns these 2 lines:

[ 1917.999902] usb 2-1: USB disconnect, device number 2
[ 1938.976526] usb 2-1: new full-speed USB device number 4 using uhci_hcd

lsusb returns these lines:

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 05ac:8241 Apple, Inc. Built-in IR Receiver
Bus 002 Device 004: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

That 3rd line is the cable, so the system sees it but can’t do anything with it.

Doing some searches preliminarily indicates that the CP210x drivers should have been included in kernel builds for quite some time, but it isn’t in OSMC.

I have been trying to build it, but not having much luck for a whole host of reasons.

I have downloaded the source from here:
https://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx

Attempting to build it, returns an error:
make[1]: *** /lib/modules/4.2.3-13-osmc/build: No such file or directory. Stop.

I am pretty stumped at this point.

Any help or suggestions would be very much appreciated.

You need the kernel headers.

I forgot to mention that I think I did that part by running:

sudo apt-get install linux-headers-$(Linux-headers-4.2.3) build-essential

Update: I installed these headers:

sudo apt-get install atv-headers-4.2.3-13-osmc

Unfortunately, make still throws the same error.

sudo make -f Makefile

make -C /lib/modules/4.2.3-13-osmc/build M= modules
make[1]: *** /lib/modules/4.2.3-13-osmc/build: No such file or directory. Stop.
Makefile:4: recipe for target ‘all’ failed
make: *** [all] Error 2

Another update:

I had to create the symbolic link for the build folder like this:
sudo ln -s /usr/src/atv-headers-4.2.3-13-osmc/ /lib/modules/4.2.3-13-osmc/build

That got me past the original make error, but now I get this error:
make[2]: *** No rule to make target ‘arch/x86/entry/syscalls/syscall_32.tbl’, needed by ‘arch/x86/entry/syscalls/…/…/include/generated/asm/syscalls_32.h’. Stop.

Not entirely sure, but running make as the osmc user ( instead of using sudo ) did the trick and it’s now installed!

Great – to keep this driver enabled across updates, you should look at getting it included in OSMC. If you list the CONFIG_ options needed, I can look at getting it included.

I would love to offer up anything you need, but kind of blindly stumbled through it.

Where might I locate the CONFIG options?

They are kernel configuration options. I’ll see if I can find them for your driver and include it.

Sam