This project aims to add Linux kernel support for some old Yealink phone adapters. The main source code dates back to 2008 but occasionally sees patches to support recent kernel versions.
Source Code Repository: https://github.com/treitmayr/yealink-module
From its README file:
Phone Models
- USB-P1K USB 1.1 hand phone with LCD, keypad and ringer
- USB-P1KH USB 1.1 hand phone with LCD, keypad and ringer
- USB-P4K USB 1.1 speaker phone desktop model
- USB-B2K USB 1.1 telbox, ATA adapter for PSTN
- USB-B3K USB 1.1 telbox, ATA adapter for PSTN
(Caller-ID and PSTN-USB-bridge currently not supported)Kernel Versions
Currently Linux kernel versions >= 2.6.18 and <= 6.1 are supported.
References
For manufacturer documentation might still be found at http://www.yealink.com/ but due to the dated devices this may not be true anymore.
The original development branch can be found at:
https://cvs.savannah.gnu.org/viewcvs/usbb2k-api/yealink-module/The updated sources supporting the P1KH and B3G can be found at:
https://github.com/treitmayr/yealink-moduleMatrix of Supported Features
Function API P1K(H) P4K B2K B3G audio playback alsa ok ok ok ok audio record alsa ok ok ok ok keyboard input ok ok ok ok hookflash input ok ok ok PSTN ring input ok ok LCD sysfs ok ok LED sysfs ok DIALTONE sysfs ok ok ok RINGTONE sysfs ok ok ok BACKLIGHT sysfs ok SPEAKER sysfs ok PSTN sysfs ok LED (USB/PSTN) sysfs ok ok Caller-ID wip PSTN-USB-Bridge wip
Note:
P4K: Ring tones are implemented by switching on the SPEAKER and sending a ring tone pcm via the dsp interface.