I am trying to make weewx work with a Rainwise IP-100. I have tried several different ways using the weewx-ip100 driver created by Matthew Wall on GitHub. I first tried following the readme file that was part of the IP100 driver package, but it didn’t take me long to discover that the commands used there were based on a much older version of weewx than the version 5.1 I installed.
I next tried the instructions provided in the weewx 5.1 documentation rather than those that accompanied the driver package. I first installed weewx 5.1 and assumed that it did install correctly as I was able to bring up a web page based on the simulator using a PC. I next installed the IP100 driver using:
weectl extension install weewx-ip100-master.zip
and confirmed it was installed using the command:
weectl extension list
which resulted in:
ip100 0.4 Capture weather data from Rainwise IP-100
I then tried to link them using the command:
weectl station reconfigure --no-prompt --driver=user.ip100
and it resulted in the following:
Using configuration file /etc/weewx/weewx.conf
Processing configuration file /etc/weewx/weewx.conf
Traceback (most recent call last):
File "/usr/share/weewx/weectl.py", line 75, in <module>
main()
File "/usr/share/weewx/weectl.py", line 67, in main
namespace.func(namespace)
File "/usr/share/weewx/weectllib/__init__.py", line 90, in dispatch
namespace.action_func(config_dict, namespace)
File "/usr/share/weewx/weectllib/station_cmd.py", line 311, in reconfigure_station
weectllib.station_actions.station_reconfigure(config_dict=config_dict,
File "/usr/share/weewx/weectllib/station_actions.py", line 164, in station_reconfigure
config_config(config_dict,
File "/usr/share/weewx/weectllib/station_actions.py", line 207, in config_config
config_driver(config_dict, driver=driver, no_prompt=no_prompt)
File "/usr/share/weewx/weectllib/station_actions.py", line 424, in config_driver
driver_editor, driver_name, driver_version = weecfg.load_driver_editor(final_driver)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/weewx/weecfg/__init__.py", line 452, in load_driver_editor
driver_module = importlib.import_module(driver_module_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 936, in exec_module
File "<frozen importlib._bootstrap_external>", line 1074, in get_code
File "<frozen importlib._bootstrap_external>", line 1004, in source_to_code
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/etc/weewx/bin/user/ip100.py", line 84
print packet
^^^^^^^^^^^^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)
The only line that I thought I could address was the last line which seemed to be the reason for the early exit. Based on that, I edited the "/etc/weewx/bin/user/ip100.py” file to add the parentheses on line 84. I then ran it again only to find a similar error further down. I didn’t keep count, but I suspect there were about a dozen such errors in all. As I reached the end of the file, I was hopeful for success, but after the last error about parentheses was fixed, I had the following last lines
File "/etc/weewx/bin/user/ip100.py", line 9, in <module> Import urllib2
ModulesNotFoundError: No module named ‘urllib2’
I figured I reached a dead end at that point since my programming skills are limited to a working occasionally with bash scripts.
I next tried version python-weewx_4.0.0-1_all.deb, the latest standard release, and version weewx_3.6.0-1_all.deb, the release from about the same time the driver was released, and they both resulted in failure with messages like those below from the oldest version.
apt install /home/user/weewx_3.6.0-1_all.deb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'weewx' instead of '/home/user/weewx_3.6.0-1_all.deb'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
weewx : Depends: python (>= 2.5) but it is not installable
Depends: python-configobj (>= 4.5) but it is not installable
Depends: python-cheetah (>= 2.0) but it is not installable
Depends: python-imaging (>= 1.1.6) but it is not installable
Depends: python-serial (>= 2.3) but it is not installable
Depends: python-usb (>= 0.4) but it is not installable
Recommends: python-dev (>= 2.5) but it is not installable
Recommends: python-pip (>= 0.7) but it is not installable
Recommends: apache2 but it is not going to be installed
Recommends: ftp
E: Unable to correct problems, you have held broken packages.
I recently acquired the IP-100 when there were no suggestions made in response to a post I made here on how to make my older CC-2000 work with weewx several months ago. I made my decision on the IP-100 based on the fact there was a IP-100 driver available for weewx, so I am hoping there is something I am doing wrong, or at least someone will have a suggestion on how to modify what I am doing to make the IP-100 work with one of the versions, hopefully 5.1. Otherwise I am now going to have two devices that won’t work with weewx.