Can someone please tell me why the FreePBX install script won’t install Dahdi, I know it’s a kernel mismatch, but is it the kernel that FreePBX is trying to install or the kernel that Debian is running?
root@LLBC-PBX:/tmp# bash /tmp/sng_freepbx_debian_install.sh --dahdi
2025-08-19 16:54:20 - Performing version check…
Perfect! You’re already running the latest version.
2025-08-19 16:54:21 - Starting installation.
2025-08-19 16:54:21 - Starting FreePBX 17 installation process for LLBC-PBX Linux LLBC-PBX 6.1.0-38-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.147-1 (2025-08-02) x86_64 GNU/Linux
2025-08-19 16:54:21 - Please refer to the /var/log/pbx/freepbx17-install-2025.08.19-16.54.20.log to know the process…
2025-08-19 16:54:21 - Making sure installation is sane
2025-08-19 16:54:22 - Setting up default configuration
2025-08-19 16:54:23 - Installing software-properties-common …
2025-08-19 16:54:30 - software-properties-common installed successfully…
2025-08-19 16:54:30 - Setting up repositories
2025-08-19 16:54:43 - Setting up Sangoma repository
2025-08-19 16:54:44 - You are installing FreePBX 17 on kernel 6.1.0-38.
2025-08-19 16:54:44 - Please note that if you have plan to use DAHDI then:
2025-08-19 16:54:44 - Ensure that you either choose DAHDI option so script will configure DAHDI
2025-08-19 16:54:44 - OR
2025-08-19 16:54:44 - Ensure you are running a DAHDI supported Kernel. Current latest supported kernel version is 6.1.0-37.
2025-08-19 16:54:44 - Making sure we allow only proper kernel upgrade and version installation
2025-08-19 16:54:45 - Aborting freepbx installation as detected kernel version 6.1.0-38 is not supported by freepbx dahdi module 6.1.0-37
2025-08-19 16:54:45 - Exiting script
root@LLBC-PBX:/tmp#
@Santhosh If we re-install DAHDI driver for new Kernel 6.1.0-38 dahdi is not going to works ?
Or what about copy dahdi old kernel modules to new kernel directory ? /lib/modules/6.1.0-37-amd/kernel/drivers/
The DAHDI source code must be compiled specifically for the running kernel, as it includes kernel modules that depend on exact kernel version compatibility.
While it may be possible to manually compile DAHDI against kernel 6.1.0-38, the build could fail if the source isn’t yet compatible with that version.
Simply copying DAHDI modules from an older kernel (e.g., 6.1.0-37) into the new kernel’s module directory will not work, as the kernel will refuse to load modules built for a different version.
The recommended approach is to downgrade to a supported kernel version (like 6.1.0-37), boot into that version, and then proceed with the DAHDI installation.
Is there a version of Debian 12 that I can download and install with the compatible Kernel for DAHDI? It seems like downgrading the Kernel is a risky move that may break the system in the future.
Also I would like to add that this is a fresh install of Debian 12 and I have followed Sangomas’ instrustions to a T and this is where it has gotten me. Is Sangoma going to update the DAHDI module anytime soon to work with Kernal version 6.1.0-38?
Sangoma might want to consider DKMS, as used for state of the art GPU drivers. Note that there are key management issues to take into account, as it requires the target system to contain a secret signing key, if you enable boot loader security (a requirement for dual boot systems with Windows as one of them).
This compiles the module automatically, on a kernel update. It does require development tools on the target system.
I have successfully downgraded the Debian Kernel to 6.1.0-37, and all seems to be working without issue. I was able to install FreePBX with the --dahdi argument, and all is good.
Is there anything that I need to do to ensure that the Kernel doesn’t upgrade itself, or will FreePBX lock the kernel from being updated?
Since my old post “FreePBX 17 Install on Debian 12 (kernel 6.1.0-25-amd64) Fails with –dahdi switch” has been invoked, I would like to contribute a response to this topic. I did not post this information previously because the topic expired before I thought to do so.
I ended up opening a paid support case with Sangoma. The technician I worked with advised me…
“Its important to note, you shouldn’t use the dahdi config module. It is very buggy and has known issues which can create an outage. The known issue is after updates the module loses all config which brings the board down causing an outage. Its recommended to remove the dahdi config module and use “wancfg_dahdi” to configure the board. Then simply make a Dahdi trunk in the webUI.”
I then asked him to make the changes for me because I wasn’t confident that I could apply them correctly. This is what he did…
“Now the commands I ran where the following:
Command: wancfg_dahdi Command: update-rc.d wanrouter defaults
The first command there configures the board. The second command ensures it will start on boot.”
This worked in subsequent testing and the system has been operational as a warm spare since that time. I have not been installing Debian updates because it isn’t clear to me that the kernel lock is in place as I know it would have been if the script had performed the setup. I have not heard whether or not engineering has fixed the defective config module.