1. choosing port 80 for the custom server to send/post to is not a smart
choice as this port is already used by the local (RPi) web server
(nginx, apache2, ...). You must choose a unique port e.g. 8000, 8080, ...
2. in weewx.conf you must not assign the port along with the ip address.
the entry should be:
ip_address = 192.168.0.29
only, no colon or port added - it's, however, not needed
below a working [Interceptor] section
# -- start weewx.conf excerpt
[Interceptor]
# This section is for the network traffic interceptor driver.
# The driver to use:
driver = user.interceptor
# Specify the hardware device to capture. Options include:
# acurite-bridge - acurite internet bridge, smarthub, or access
# observer - fine offset WH2600/HP1000/HP1003, ambient WS2902
# lw30x - oregon scientific LW301/LW302
# lacrosse-bridge - lacrosse GW1000U/C84612 internet bridge
# ecowitt-client - any hardware that uses the ecowitt protocol
# wu-client - any hardware that uses the weather underground protocol
device_type = observer
*port = 8000*
iface = eth0
# -- end excerpt weewx.conf
if you use the WLAN interface of the RPi ("WiFi"), then use: iface =
wlan0 instead of iface = eth0
(the last character is a zero !!)
You don't need to enter your IP address here, it's obviously the one of
the RPi
the port (*8000*) should also be the same in the WS View / awnet app
(customized server)
You can of course choose another number, however not 80 !
there (WS View, awnet) the IP address of your RPi has to be entered (NO
http:// in front of the address !! - only the address)
the path has to show at least "/" - an empty path will keep the console
from posting
good luck
On 12.01.2022 04:55, Kruse Ludington wrote:
I have an Ambient WS-2902C with a console publishing to four places
specified in the awnet app: 1. AmbientWeather.net; 2. Wunderground; 3.
Weathercloud; and 4; Customized - to
on port 80 (both on the same network internal network) but the PI is
having trouble loading the interceptor driver with weird error
messages (probably something simple as I am a noob). As per the
Interceptor installation instructions for this model state I should
use device-type=observer and listen (as I am not intercepting), these
are the error messages I am running into from the log -
sudo /etc/init.d/weewx start
then here's the log info:
Jan 11 21:53:24 kruse-pi weewx[4814] INFO __main__: Initializing weewx
version 4.5.1
Jan 11 21:53:24 kruse-pi weewx[4814] INFO __main__: Using Python 3.9.2
(default, Mar 12 2021, 04:06:34) #012[GCC 10.2.1 20210110]
Jan 11 21:53:24 kruse-pi weewx[4814] INFO __main__: Platform
Linux-5.10.63-v7l+-armv7l-with-glibc2.31
Jan 11 21:53:24 kruse-pi weewx[4814] INFO __main__: Locale is
'en_US.UTF-8'
Jan 11 21:53:24 kruse-pi weewx[4814] INFO __main__: PID file is
/var/run/weewx.pid
Jan 11 21:53:24 kruse-pi weewx[4818] INFO __main__: Using
configuration file /etc/weewx/weewx.conf
Jan 11 21:53:24 kruse-pi weewx[4818] INFO __main__: Debug is 1
Jan 11 21:53:24 kruse-pi weewx[4818] DEBUG __main__: Initializing engine
Jan 11 21:53:24 kruse-pi weewx[4818] INFO weewx.engine: Loading
station type Interceptor (user.interceptor)
Jan 11 21:53:24 kruse-pi weewx[4802]: Starting weewx weather system:
weewx.
Jan 11 21:53:24 kruse-pi weewx[4818] INFO user.interceptor: driver
version is 0.53
Jan 11 21:53:24 kruse-pi weewx[4818] INFO user.interceptor: device
type: observer
Jan 11 21:53:24 kruse-pi weewx[4818] INFO user.interceptor: mode is listen
Jan 11 21:53:24 kruse-pi weewx[4818] INFO user.interceptor: listen on
192.168.0.29:80
Jan 11 21:53:24 kruse-pi weewx[4818] ERROR weewx.engine: Import of
driver failed: [Errno 99] Cannot assign requested address ('OSError'>)
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
Traceback (most recent call last):
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
File "/usr/share/weewx/weewx/engine.py", line 119, in setupStation
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
self.console = loader_function(config_dict, self)
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
File "/usr/share/weewx/user/interceptor.py", line 315, in loader
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
return InterceptorDriver(**config_dict[DRIVER_NAME])
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
File "/usr/share/weewx/user/interceptor.py", line 2522, in __init__
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
self._device = self.DEVICE_TYPES.get(self._device_type)(**stn_dict)
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
File "/usr/share/weewx/user/interceptor.py", line 1284, in __init__
Jan 11 21:53:24 kruse-pi weewx[4818] CRITICAL weewx.engine:
super(Observer, self).__init__(
Jan 11