That worked with getting the driver to load. Here is the error I get once I have it running:
weewx@raspberrypi:~ $ sudo PYTHONPATH=/usr/share/weewx python /usr/share/weewx/user/interceptor.py --device=wu-client --mode=sniff --iface=eth0 --filter="src 192.168.50.9 and dst port 80" [sudo] password for weewx: Exception in thread ServerThread: Traceback (most recent call last): File "/usr/lib/python3.9/threading.py", line 954, in _bootstrap_inner self.run() File "/usr/lib/python3.9/threading.py", line 892, in run self._target(*self._args, **self._kwargs) File "/usr/share/weewx/user/interceptor.py", line 435, in run_server self._server.run() File "/usr/share/weewx/user/interceptor.py", line 491, in run self.decode_ip_packet(0, pkt, ts) File "/usr/share/weewx/user/interceptor.py", line 518, in decode_ip_packet (_timestamp, _pktlen, _fmt_bytes(data))) File "/usr/share/weewx/user/interceptor.py", line 338, in _fmt_bytes return ' '.join(['%02x' % ord(x) for x in data]) File "/usr/share/weewx/user/interceptor.py", line 338, in <listcomp> return ' '.join(['%02x' % ord(x) for x in data]) TypeError: ord() expected string of length 1, but int found On Monday, April 24, 2023 at 5:48:52 PM UTC-7 vince wrote: > Tom - buried in his messages were this - note it is a non-privileged > installation, so it might very well be what you noted as a potential > installation user error. > > weewx@raspberrypi:~ $ pip3 list --verbose | grep pcap > pypcap 1.3.0 /home/weewx/.local/lib/python3.9/site-packages > pip > > And earlier he did install as a non-privileged user, not as root > > weewx@raspberrypi:~ $ pip3 install pypcap > Looking in indexes: https://pypi.org/simple, > https://www.piwheels.org/simple > Collecting pypcap > Using cached pypcap-1.3.0.tar.gz (140 kB) > Building wheels for collected packages: pypcap > Building wheel for pypcap (setup.py) ... done > Created wheel for pypcap: > filename=pypcap-1.3.0-cp39-cp39-linux_aarch64.whl size=429390 > sha256=9518b4a7995ae893c438017a17dbf0d5722b7e338063ba1c94c9187b4c80551a > Stored in directory: > /home/weewx/.cache/pip/wheels/dd/3f/d4/51ab4f449c379dc65a12d7451f302cc9b388ff44bbc4a61530 > Successfully built pypcap > Installing collected packages: pypcap > Successfully installed pypcap-1.3.0 > > So Michael - you might try "sudo pip3 install pypcap" so it works for root > too...... > > On Monday, April 24, 2023 at 5:28:45 PM UTC-7 vince wrote: > >> Tom - what's happening is he's not finding the pcap python module when >> running as root, but 'is' finding it when running as a non-privileged user, >> so my guess (guess) is there are multiple python interpreters installed, >> although he has so many old variants of a pip installed (or attempted >> install) pcap that it's really confusing. >> >> A vanilla 32-bit raspios running his exact commands works fine, so >> there's definitely something in his setup that is hosed up. >> >> On Monday, April 24, 2023 at 5:19:49 PM UTC-7 Tom Keffer wrote: >> >>> I'm not following this exchange closely, so it's entirely possible I >>> don't know what's going on. >>> >>> What I will note is that both the shell path and PYTHONPATH are >>> completely different if the python interpreter is run with "sudo". If you >>> installed pypcap using pip, this could make you vulnerable. >>> >>> But, my comment may be completely irrelevant. >>> >>> On Mon, Apr 24, 2023 at 4:06 PM Michael <m.j.za...@gmail.com> wrote: >>> >>>> >>>> 2023-02-21-raspios-bullseye-arm64.img >>>> >>>> >>>> weewx@raspberrypi:~ $ uname -a >>>> Linux raspberrypi 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr 3 17:24:16 BST >>>> 2023 aarch64 GNU/Linux >>>> weewx@raspberrypi:~ $ which python >>>> /usr/bin/python >>>> weewx@raspberrypi:~ $ sudo which python >>>> [sudo] password for weewx: >>>> /usr/bin/python >>>> weewx@raspberrypi:~ $ echo $PATH >>>> >>>> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games >>>> weewx@raspberrypi:~ $ sudo bash -c 'echo $PATH' >>>> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin >>>> weewx@raspberrypi:~ $ >>>> On Monday, April 24, 2023 at 4:00:50 PM UTC-7 vince wrote: >>>> >>>>> Lets see the following: >>>>> >>>>> - uname -a >>>>> >>>>> >>>>> - which python >>>>> - sudo which python >>>>> >>>>> >>>>> - echo $PATH >>>>> - sudo bash -c 'echo $PATH' >>>>> >>>>> >>>>> It looks like you're running a 64-bit os perhaps ? Which one >>>>> specifically ? >>>>> >>>>> Other than some odd 32-bit vs. 64-bit thing happening, I can only >>>>> conclude that you have multiple python3 instances installed and root's >>>>> $PATH is picking up the wrong one unless the commands above return >>>>> something really odd... >>>>> >>>>> On Monday, April 24, 2023 at 3:21:01 PM UTC-7 Michael wrote: >>>>> >>>>>> weewx@raspberrypi:~ $ dpkg -l | grep pcap >>>>>> ii libpcap0.8:arm64 1.10.0-2 >>>>>> arm64 system interface for user-level packet capture >>>>>> ii libpcap0.8-dev:arm64 1.10.0-2 >>>>>> arm64 development library and header files for libpcap0.8 >>>>>> weewx@raspberrypi:~ $ pip3 list --verbose | grep pcap >>>>>> pypcap 1.3.0 >>>>>> /home/weewx/.local/lib/python3.9/site-packages pip >>>>>> weewx@raspberrypi:~ $ python3 -c 'import pcap' >>>>>> weewx@raspberrypi:~ $ sudo python3 -c 'import pcap' >>>>>> [sudo] password for weewx: >>>>>> >>>>>> Traceback (most recent call last): >>>>>> File "<string>", line 1, in <module> >>>>>> ModuleNotFoundError: No module named 'pcap' >>>>>> >>>>>> On Monday, April 24, 2023 at 3:14:33 PM UTC-7 vince wrote: >>>>>> >>>>>>> From a clean RaspiOS that works.... >>>>>>> >>>>>>> pi@pi4jr:~ $ dpkg -l | grep pcap >>>>>>> ii libpcap0.8:armhf 1.10.0-2 >>>>>>> armhf system interface for user-level packet capture >>>>>>> >>>>>>> pi@pi4jr:~ $ pip3 list --verbose | grep pcap >>>>>>> pypcap 1.3.0 /usr/local/lib/python3.9/dist-packages pip >>>>>>> >>>>>>> pi@pi4jr:~ $ python3 -c 'import pcap' >>>>>>> pi@pi4jr:~ $ echo $? >>>>>>> 0 >>>>>>> >>>>>>> pi@pi4jr:~ $ sudo python3 -c 'import pcap' >>>>>>> pi@pi4jr:~ $ echo $? >>>>>>> 0 >>>>>>> >>>>>>> On Monday, April 24, 2023 at 12:51:47 PM UTC-7 Michael wrote: >>>>>>> >>>>>>>> weewx@raspberrypi:/usr/share/weewx/user $ python --version >>>>>>>> Python 3.9.2 >>>>>>>> weewx@raspberrypi:/usr/share/weewx/user $ python3 --version >>>>>>>> Python 3.9.2 >>>>>>>> weewx@raspberrypi:/usr/share/weewx/user $ ^C >>>>>>>> weewx@raspberrypi:/usr/share/weewx/user $ sudo >>>>>>>> PYTHONPATH=/usr/share/weewx python >>>>>>>> /usr/share/weewx/user/interceptor.py >>>>>>>> --device=wu-client --mode=sniff --iface=eth0 --filter="src >>>>>>>> 192.168.50.9 and >>>>>>>> dst port 80" >>>>>>>> Traceback (most recent call last): >>>>>>>> File "/usr/share/weewx/user/interceptor.py", line 2671, in >>>>>>>> <module> >>>>>>>> device = >>>>>>>> InterceptorDriver.DEVICE_TYPES.get(options.device_type)( >>>>>>>> File "/usr/share/weewx/user/interceptor.py", line 728, in __init__ >>>>>>>> super(WUClient, self).__init__( >>>>>>>> File "/usr/share/weewx/user/interceptor.py", line 427, in __init__ >>>>>>>> self._server = Consumer.SniffServer( >>>>>>>> File "/usr/share/weewx/user/interceptor.py", line 466, in __init__ >>>>>>>> import pcap >>>>>>>> ModuleNotFoundError: No module named 'pcap' >>>>>>>> weewx@raspberrypi:/usr/share/weewx/user $ >>>>>>>> >>>>>>>> On Monday, April 24, 2023 at 12:48:18 PM UTC-7 vince wrote: >>>>>>>> >>>>>>>>> Again, your python is messed up or you have python (2) and python3 >>>>>>>>> installed. >>>>>>>>> >>>>>>>>> This worked on a clean raspios. Same as your command just with an >>>>>>>>> absolute path to interceptor.py >>>>>>>>> >>>>>>>>> sudo PYTHONPATH=/usr/share/weewx python >>>>>>>>> /usr/share/weewx/user/interceptor.py --device=wu-client --mode=sniff >>>>>>>>> --iface=eth0 --filter="src 192.168.50.9 and dst port 80" >>>>>>>>> >>>>>>>>> Try 'python --version' to verify it reports the same thing as >>>>>>>>> 'python3 --version'. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Monday, April 24, 2023 at 10:45:31 AM UTC-7 Michael wrote: >>>>>>>>> >>>>>>>>>> sudo PYTHONPATH=/usr/share/weewx python interceptor.py >>>>>>>>>> --device=wu-client --mode=sniff --iface=eth0 --filter="src >>>>>>>>>> 192.168.50.9 and >>>>>>>>>> dst port 80" >>>>>>>>>> Traceback (most recent call last): >>>>>>>>>> File "/usr/share/weewx/user/interceptor.py", line 2671, in >>>>>>>>>> <module> >>>>>>>>>> device = >>>>>>>>>> InterceptorDriver.DEVICE_TYPES.get(options.device_type)( >>>>>>>>>> File "/usr/share/weewx/user/interceptor.py", line 728, in >>>>>>>>>> __init__ >>>>>>>>>> super(WUClient, self).__init__( >>>>>>>>>> File "/usr/share/weewx/user/interceptor.py", line 427, in >>>>>>>>>> __init__ >>>>>>>>>> self._server = Consumer.SniffServer( >>>>>>>>>> File "/usr/share/weewx/user/interceptor.py", line 466, in >>>>>>>>>> __init__ >>>>>>>>>> import pcap >>>>>>>>>> ModuleNotFoundError: No module named 'pcap' >>>>>>>>>> >>>>>>>>>> On Monday, April 24, 2023 at 10:36:39 AM UTC-7 vince wrote: >>>>>>>>>> >>>>>>>>>>> On Monday, April 24, 2023 at 9:34:36 AM UTC-7 Michael wrote: >>>>>>>>>>> >>>>>>>>>>> I am trying to install WeeWx on my Raspi with Interceptor with a >>>>>>>>>>> WU-Client coming from 192.168.50.9. So far I am ending up with the >>>>>>>>>>> following error message when trying to run the driver directly and >>>>>>>>>>> no >>>>>>>>>>> results in WeeWx. >>>>>>>>>>> >>>>>>>>>>> Activateing packet capture failed. Error returned by packet >>>>>>>>>>> capture library was b'socket: Operation not permitted' >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> [...omitting waaaaay too many lines.....] >>>>>>>>>>> >>>>>>>>>>> Your last command was: >>>>>>>>>>> >>>>>>>>>>> weewx@raspberrypi:/usr/share/weewx/user $ >>>>>>>>>>> PYTHONPATH=/usr/share/weewx python interceptor.py >>>>>>>>>>> --device=wu-client >>>>>>>>>>> --mode=sniff --iface=eth0 --filter="src 192.168.50.9 and dst port >>>>>>>>>>> 80" >>>>>>>>>>> >>>>>>>>>>> You need to do that as root. Preface that last command with sudo >>>>>>>>>>> so it runs as root. >>>>>>>>>>> >>>>>>>>>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "weewx-user" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to weewx-user+...@googlegroups.com. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/weewx-user/e244366f-a6e4-4fc9-ab5b-abe8ad959951n%40googlegroups.com >>>> >>>> <https://groups.google.com/d/msgid/weewx-user/e244366f-a6e4-4fc9-ab5b-abe8ad959951n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>> . >>>> >>> -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/b4057e3d-f929-4991-bff9-e56f262c0dban%40googlegroups.com.