Libblepp should be replaced
Libblepp uses a legacy bluetooth command set that is disallowed on recent Linux kernels when the PC supports extended bluetooth commands.
When a PC issues an extended bluetooth command, no legacy commands will be allowed after that . This wasn't enforced in older kernels, since the bluetooth extended commands weren't supported, but it is enforced now.
When your PC supports the bluetooth extended command set, and you use a recent kernel, some Warble functions will return errors like the one described in . Specifically, that error happens because Libblepp issues the command "LE Set Scan Parameters" (0x08|0x000b), instead of "LE Set Extended Scan Parameters" (0x08|0x0041).
To fix this, there are 2 main alternatives: Implement the extended command set in Libblepp, or switch to another library that doesn't have that issue.
If the first option is chosen, someone would have to implement the corresponding HCI extended commands such as . However, the preferred way of using bluetooth in Linux is using the D-Bus API. I haven't found a C/C++ library that implements the necessary high level functionality required by Warble, but libraries such as  may be a good option for Python support.
I know that this change implies a significant effort, but as people upgrade their PCs and use newer kernels, Libblepp will stop working for more and more users.