kismetwireless / kismet-packages

Packaging scripts and related configs for distributing Kismet
GNU General Public License v2.0
28 stars 17 forks source link

Kismet_cap_sdr_rtl433/kismet_cap_sdr_rtladsb/kismet_cap_sdr_rtlamr procto problem!! #14

Open jamoram opened 3 months ago

jamoram commented 3 months ago

I compile the packages to run on OpenWrt with the OpenWrt SDK 23.05.3 for Raspberry Pi 3 B. I use this build based on xchwarze's example.

After successfully compiling and installing on the system, the wifi and GPS capture work perfectly. However, when trying to run Kismet_cap_sdr_rtl433/kismet_cap_sdr_rtladsb/kismet_cap_sdr_rtlamr using an SDR dongle, I get this output:

Traceback (most recent call last):
  File "/usr/bin/kismet_cap_sdr_rtladsb", line 5, in <module>
    from KismetCaptureRtladsb.kismet_cap_sdr_rtladsb import main
  File "/usr/lib/python3.11/site-packages/KismetCaptureRtladsb/__init__.py", line 38, in <module>
  File "/usr/lib/python3.11/site-packages/KismetCaptureRtladsb/kismetexternal/__init__.py", line 42, in <module>
  File "/usr/lib/python3.11/site-packages/KismetCaptureRtladsb/kismetexternal/kismet_pb2.py", line 34, in <module>
  File "/usr/lib/python3.11/site-packages/google/protobuf/descriptor.py", line 789, in __new__
TypeError: Descriptors cannot be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
 1. Downgrade the protobuf package to 3.20.x or lower.
 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).

More information: https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates

I tried to delete the python3-protobuf_4.25.1-1_aarch64_cortex-a53.ipk and install the version of protobuf from the opkg repository. I succeeded in seeing the interface on the Kismet web interface, but I cannot activate it. I haven't tried to downgrade the protoc as the output suggests in the compilation, because that involves working around the packages. I want to hear your opinion on this.

best,