Giter Club home page Giter Club logo

dektec-dkms's Introduction

Linux DKMS for Dektec device drivers

IMPORTANT: This project is now archived. Starting with version 2024.06.0, the Dektec LinuxSDK includes its own DKMS installation and this specific project is no longer necessary.

About Dektec device drivers

Dektec is a manufacturer of PC add-on cards, USB devices, IP converters and software for the professional digital-television market. Their products are used for test and measurement and to build broadcast infrastructure.

Dektec provides device drivers for Windows and Linux. See their comprehensive download page.

On Windows, WinSDK, the SDK and device drivers package, is a standard binary installer which properly installs and configures the DTAPI and the device drivers. There is nothing to add.

Installing the drivers on Linux

On Linux systems, the Dektec device drivers are provided in source form only, as part of the LinuxSDK package. On lab or production systems where the kernel can be periodically updated, dealing with drivers in source form is not very handy. Most Linux distros have an answer for this: DKMS, Dynamic Kernel Module Support. The source code of the drivers are installed in /usr/src and the drivers are automatically recompiled and reinstalled in case of kernel update.

The Dektec LinuxSDK package now provides its own DKMS installation. After downloading the LinuxSDK archive from the Dektec download page, expand it into some temporary directory. Everything is expanded under a root subdirectory named LinuxSDK.

Important: Before installing the drivers, verify that your system is ready for DKMS. On most distros, this means installing a package named dkms and a few dependencies.

To install the Dektec device drivers into the DKMS build system, use the following command:

sudo LinuxSDK/Drivers/Install

The command installs the drivers source code in /usr/src/dektec-2024.06.0/ (for version 2024.06.0) and builds the drivers for the current kernel in /var/lib/dkms/dektec/2024.06.0/. Each time the kernel will be upgraded, the Dektec device drivers (and all drivers in the DKMS system) will be automatically recompiled.

To remove the Dektec device drivers from the DKMS system, use the following command:

sudo LinuxSDK/Drivers/Uninstall

dektec-dkms's People

Contributors

lelegard avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

dektec-dkms's Issues

DTA-111 not found with latest drivers on Ubuntu 20.04 LTS

Just downloaded the lates GitHub code for dektec-dkms and tsduck and ran an install and tsdektec -a isn't seeing my DTA-111 PCI card (I get no output when I run that command)

If I reboot from an old SSD that I used to run in this PC with Ubuntu 18.04 build and Dektec DKMS build from Jun 2018 - the same card in the same PC is seen fine by tsdektec -a.

Am I doing something wrong? I've followed the readme.

Debian Stretch amd64

This script doesn't work on Debian Stretch amd64 platform. Is it possible to add support for it?

Arch Linux AUR package info for DekTec dkms drivers

I've made an Arch Linux "Arch User Repository (AUR)" package which you can web-search with !aur dektec-drivers-dkms or find here.
Please feel free to add this AUR package with information for the Arch Linux users that want to laborate/test/run DekTec devices.
I'd also like to thank You for this amazing repo which helps make installing the DekTec (dkms) drivers easy!

Instructions for installing this package

With yay:
yay -S dektec-drivers-dkms

Normal method:

git clone https://aur.archlinux.org/dektec-drivers-dkms.git
cd dektec-drivers-dkms
makepkg -si

dkms driver install fails on ubuntu 22.04 with kernel 5.19

Hi, not sure if this is a bug or if I am missing a step. I got a brand new DTU-315 and tested under windows, just works fine.
Then I wanted to try it under ubuntu. Here is my experience with my cmdline:

[   62.793005] usb 1-2: new high-speed USB device number 5 using xhci_hcd
[   63.029537] usb 1-2: New USB device found, idVendor=1297, idProduct=030f, bcdDevice= 1.00
[   63.029544] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   63.029547] usb 1-2: Product: WestBridge 
[   63.029550] usb 1-2: Manufacturer: Cypress
[   63.029551] usb 1-2: SerialNumber: 0000000004BE
[  701.548201] usb 1-2: USB disconnect, device number 5
[  704.375505] usb 1-2: new high-speed USB device number 6 using xhci_hcd
[  704.612328] usb 1-2: New USB device found, idVendor=1297, idProduct=030f, bcdDevice= 1.00
[  704.612335] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  704.612339] usb 1-2: Product: WestBridge 
[  704.612341] usb 1-2: Manufacturer: Cypress
[  704.612343] usb 1-2: SerialNumber: 0000000004BE
[  738.593150] usb 1-2: USB disconnect, device number 6
[  749.467280] usb 3-2: USB disconnect, device number 3
[  752.919224] usb 3-2: new high-speed USB device number 4 using xhci_hcd
[  753.069652] usb 3-2: New USB device found, idVendor=1297, idProduct=030f, bcdDevice= 1.00
[  753.069660] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  753.069663] usb 3-2: Product: WestBridge 
[  753.069665] usb 3-2: Manufacturer: Cypress
[  753.069667] usb 3-2: SerialNumber: 0000000004BE
^C
stulluk ~ $  ^C
stulluk ~ $  sudo apt install --reinstall ./dektec-dkms_2023.08.0_all.deb 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'dektec-dkms' instead of './dektec-dkms_2023.08.0_all.deb'
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 7 not upgraded.
Need to get 0 B/5.287 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 /home/stulluk/dektec-dkms_2023.08.0_all.deb dektec-dkms all 2023.08.0 [5.287 kB]
(Reading database ... 269365 files and directories currently installed.)
Preparing to unpack .../dektec-dkms_2023.08.0_all.deb ...
Unpacking dektec-dkms (2023.08.0) over (2023.08.0) ...
Setting up dektec-dkms (2023.08.0) ...

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
'make' KERNELDIR=/lib/modules/5.19.0-50-generic/build............................................
Signing module:
 - /var/lib/dkms/dektec/2023.08.0/5.19.0-50-generic/x86_64/module/Dtu.ko
 - /var/lib/dkms/dektec/2023.08.0/5.19.0-50-generic/x86_64/module/DtPcieNw.ko
 - /var/lib/dkms/dektec/2023.08.0/5.19.0-50-generic/x86_64/module/DtaNw.ko
 - /var/lib/dkms/dektec/2023.08.0/5.19.0-50-generic/x86_64/module/Dta.ko
 - /var/lib/dkms/dektec/2023.08.0/5.19.0-50-generic/x86_64/module/DtPcie.ko
Secure Boot not enabled on this system.
cleaning build area...

Dta.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.19.0-50-generic/updates/dkms/

DtaNw.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.19.0-50-generic/updates/dkms/

Dtu.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.19.0-50-generic/updates/dkms/

DtPcie.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.19.0-50-generic/updates/dkms/

DtPcieNw.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.19.0-50-generic/updates/dkms/

depmod...
N: Download is performed unsandboxed as root as file '/home/stulluk/dektec-dkms_2023.08.0_all.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
stulluk ~ $  uname -a
Linux u22 5.19.0-50-generic #50-Ubuntu SMP PREEMPT_DYNAMIC Mon Jul 10 18:24:29 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
stulluk ~ $  
stulluk ~ $  
stulluk ~ $  ls -lah /lib/modules/5.19.0-50-generic/updates/dkms/
total 14M
drwxr-xr-x 2 root root 4,0K Eki  3 17:04 .
drwxr-xr-x 3 root root 4,0K Eki  3 17:04 ..
-rw-r--r-- 1 root root 1,9M Eki  3 17:04 Dta.ko
-rw-r--r-- 1 root root  78K Eki  3 17:04 DtaNw.ko
-rw-r--r-- 1 root root 2,5M Eki  3 17:04 DtPcie.ko
-rw-r--r-- 1 root root  95K Eki  3 17:04 DtPcieNw.ko
-rw-r--r-- 1 root root 8,6M Eki  3 17:04 Dtu.ko
stulluk ~ $  lsmod | grep -i dtu
stulluk ~ $  sudo modprobe Dtu 
modprobe: ERROR: could not insert 'Dtu': Exec format error
stulluk ~ $  file //lib/modules/5.19.0-50-generic/updates/dkms/Dtu.ko 
//lib/modules/5.19.0-50-generic/updates/dkms/Dtu.ko: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), BuildID[sha1]=6fdd89ad1db515500ab5ca097ef7bcaa38f9a8fd, not stripped
stulluk ~ $  
stulluk ~ $  dpkg -l | grep -i linux-headers
ii  linux-headers-5.19.0-50-generic                   5.19.0-50.50                                amd64        Linux kernel headers for version 5.19.0 on 64 bit x86 SMP
stulluk ~ $  

So, do I need to rebuild the DEB package from scratch ? Or, is there a bug somewhere ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.