matthewwall / weewx-hp3000

weewx driver for fine offset hp3000 temperature/humidity sensors
GNU General Public License v3.0
5 stars 5 forks source link

weewx with HP3000 stops with error #4

Open joe1970 opened 6 years ago

joe1970 commented 6 years ago

Hi Matthew,

First of all thank you very much for you work on the HP3000 driver for weewx. I have purchased a HP3000 branded as Froggit DL5000. The availability of the HP3000 driver for weewx was the main reason for choosing this product.

I am now in the process of installing the software on my home server running Ubuntu 18.04.

I followed the advice given in the other posts and installed posts and installed it from a github clone of weewx using weeusb. I then installed the HP3000 driver and reconfigured weewx as described. So far so good.

If I try to start weewx with "./bin/weewxd weewx.conf" it starts, but exits with error and following console output:

**Traceback (most recent call last): File "./bin/weewxd", line 64, in <module> weewx.engine.main(options, args) File "/home/weewx/bin/weewx/engine.py", line 871, in main engine.run() File "/home/weewx/bin/weewx/engine.py", line 187, in run for packet in self.console.genLoopPackets(): File "/home/weewx/bin/user/hp3000.py", line 452, in genLoopPackets self._station.send_sequence() File "/home/weewx/bin/user/hp3000.py", line 520, in send_sequence self.send_cmd(0x06) File "/home/weewx/bin/user/hp3000.py", line 517, in send_cmd self.write([0x7b, cmd, 0x40, 0x7d]) File "/home/weewx/bin/user/hp3000.py", line 493, in write return self._write(buf) File "/home/weewx/bin/weeusb/usbhid_pyusb1.py", line 83, in _write timeout=timeout) File "/usr/lib/python2.7/dist-packages/usb/core.py", line 1043, in ctrl_transfer self.__get_timeout(timeout)) File "/usr/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 883, in ctrl_transfer timeout)) File "/usr/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 595, in _check raise USBError(_strerror(ret), ret, _libusb_errno[ret]) usb.core.USBError: [Errno 32] Pipe error**

The respective syslog section is:

Jul 25 18:55:28 marvin weewx[6309]: engine: Initializing weewx version 3.8.0 Jul 25 18:55:28 marvin weewx[6309]: engine: Using Python 2.7.15rc1 (default, Apr 15 2018, 21:51:34) #012[GCC 7.3.0] Jul 25 18:55:28 marvin weewx[6309]: engine: Platform Linux-4.15.0-29-generic-x86_64-with-Ubuntu-18.04-bionic Jul 25 18:55:28 marvin weewx[6309]: engine: Locale is 'LC_CTYPE=en_US.UTF-8;LC_NUMERIC=en_GB.UTF-8;LC_TIME=en_GB.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=en_GB.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_GB.UTF-8;LC_NAME=en_GB.UTF-8;LC_ADDRESS=en_GB.UTF-8;LC_TELEPHONE=en_GB.UTF-8;LC_MEASUREMENT=en_GB.UTF-8;LC_IDENTIFICATION=en_GB.UTF-8' Jul 25 18:55:28 marvin weewx[6309]: engine: Using configuration file /home/weewx/weewx.conf Jul 25 18:55:28 marvin weewx[6309]: engine: Loading station type HP3000 (user.hp3000) Jul 25 18:55:28 marvin weewx[6309]: hp3000: driver version is 0.6 Jul 25 18:55:28 marvin weewx[6309]: hp3000: usb info: pyusb_version=1.0.0 Jul 25 18:55:28 marvin weewx[6309]: hp3000: sensor map: {'outHumidity': 'h_2', 'extraHumid6': 'h_8', 'extraHumid4': 'h_6', 'extraHumid5': 'h_7', 'extraHumid2': 'h_4', 'extraHumid3': 'h_5', 'extraHumid1': 'h_3', 'extraTemp6': 't_8', 'extraTemp4': 't_6', 'extraTemp5': 't_7', 'extraTemp2': 't_4', 'extraTemp3': 't_5', 'extraTemp1': 't_3', 'outTemp': 't_2', 'inHumidity': 'h_1', 'inTemp': 't_1'} Jul 25 18:55:28 marvin weewx[6309]: usbhid: pyusb_version=1.0.0 Jul 25 18:55:28 marvin weewx[6309]: usbhid: Found USB device with VendorID=0x0483 ProductID=0x5750 Jul 25 18:55:28 marvin weewx[6309]: engine: StdConvert target unit is 0x1 Jul 25 18:55:28 marvin baloo_file.desktop[3562]: UdevQt: unhandled device action "bind" Jul 25 18:55:28 marvin upowerd[2317]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:14.0/usb3/3-14/3-14:1.0 Jul 25 18:55:28 marvin weewx[6309]: wxcalculate: The following values will be calculated: barometer=prefer_hardware, windchill=prefer_hardware, dewpoint=prefer_hardware, appTemp=prefer_hardware, rainRate=prefer_hardware, windrun=prefer_hardware, heatindex=prefer_hardware, maxSolarRad=prefer_hardware, humidex=prefer_hardware, pressure=prefer_hardware, inDewpoint=prefer_hardware, ET=prefer_hardware, altimeter=prefer_hardware, cloudbase=prefer_hardware Jul 25 18:55:28 marvin weewx[6309]: wxcalculate: The following algorithms will be used for calculations: altimeter=aaNOAA, maxSolarRad=RS Jul 25 18:55:28 marvin weewx[6309]: engine: Archive will use data binding wx_binding Jul 25 18:55:28 marvin weewx[6309]: engine: Record generation will be attempted in 'hardware' Jul 25 18:55:28 marvin weewx[6309]: engine: Using archive interval of 300 seconds (specified in weewx configuration) Jul 25 18:55:28 marvin weewx[6309]: manager: Created and initialized table 'archive' in database 'weewx.sdb' Jul 25 18:55:28 marvin weewx[6309]: manager: Created daily summary tables Jul 25 18:55:28 marvin weewx[6309]: engine: Using binding 'wx_binding' to database 'weewx.sdb' Jul 25 18:55:28 marvin weewx[6309]: manager: Starting backfill of daily summaries Jul 25 18:55:28 marvin weewx[6309]: restx: StationRegistry: Registration not requested. Jul 25 18:55:28 marvin weewx[6309]: restx: Wunderground: Posting not enabled. Jul 25 18:55:28 marvin weewx[6309]: restx: PWSweather: Posting not enabled. Jul 25 18:55:28 marvin weewx[6309]: restx: CWOP: Posting not enabled. Jul 25 18:55:28 marvin weewx[6309]: restx: WOW: Posting not enabled. Jul 25 18:55:28 marvin weewx[6309]: restx: AWEKAS: Posting not enabled. Jul 25 18:55:28 marvin weewx[6309]: engine: Starting up weewx version 3.8.0 Jul 25 18:55:28 marvin weewx[6309]: engine: Starting main packet loop. Jul 25 18:55:28 marvin weewx[6309]: engine: Caught unrecoverable exception in engine: Jul 25 18:55:28 marvin weewx[6309]: **** [Errno 32] Pipe error Jul 25 18:55:28 marvin weewx[6309]: **** Traceback (most recent call last): Jul 25 18:55:28 marvin weewx[6309]: **** File "/home/weewx/bin/weewx/engine.py", line 871, in main Jul 25 18:55:28 marvin weewx[6309]: **** engine.run() Jul 25 18:55:28 marvin weewx[6309]: **** File "/home/weewx/bin/weewx/engine.py", line 187, in run Jul 25 18:55:28 marvin baloo_file.desktop[3562]: UdevQt: unhandled device action "unbind" Jul 25 18:55:28 marvin weewx[6309]: **** for packet in self.console.genLoopPackets(): Jul 25 18:55:28 marvin upowerd[2317]: unhandled action 'unbind' on /sys/devices/pci0000:00/0000:00:14.0/usb3/3-14/3-14:1.0 Jul 25 18:55:28 marvin weewx[6309]: **** File "/home/weewx/bin/user/hp3000.py", line 452, in genLoopPackets Jul 25 18:55:28 marvin weewx[6309]: **** self._station.send_sequence() Jul 25 18:55:28 marvin weewx[6309]: **** File "/home/weewx/bin/user/hp3000.py", line 520, in send_sequence Jul 25 18:55:28 marvin weewx[6309]: **** self.send_cmd(0x06) Jul 25 18:55:28 marvin weewx[6309]: **** File "/home/weewx/bin/user/hp3000.py", line 517, in send_cmd Jul 25 18:55:28 marvin weewx[6309]: **** self.write([0x7b, cmd, 0x40, 0x7d]) Jul 25 18:55:28 marvin weewx[6309]: **** File "/home/weewx/bin/user/hp3000.py", line 493, in write Jul 25 18:55:28 marvin weewx[6309]: **** return self._write(buf) Jul 25 18:55:28 marvin weewx[6309]: **** File "/home/weewx/bin/weeusb/usbhid_pyusb1.py", line 83, in _write Jul 25 18:55:28 marvin weewx[6309]: **** timeout=timeout) Jul 25 18:55:28 marvin weewx[6309]: **** File "/usr/lib/python2.7/dist-packages/usb/core.py", line 1043, in ctrl_transfer Jul 25 18:55:28 marvin weewx[6309]: **** self.__get_timeout(timeout)) Jul 25 18:55:28 marvin weewx[6309]: **** File "/usr/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 883, in ctrl_transfer Jul 25 18:55:28 marvin weewx[6309]: **** timeout)) Jul 25 18:55:28 marvin weewx[6309]: **** File "/usr/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 595, in _check Jul 25 18:55:28 marvin weewx[6309]: **** raise USBError(_strerror(ret), ret, _libusb_errno[ret]) Jul 25 18:55:28 marvin weewx[6309]: **** USBError: [Errno 32] Pipe error Jul 25 18:55:28 marvin weewx[6309]: **** Exiting.

As it states "usbhid: Found USB device with VendorID=0x0483 ProductID=0x5750" I guess it has recognized the device plugged into a USB port.

But then it somehow breaks and I have no idea why and how to continue from here. Can you give me hint what I can try to make it work?

best regards, Joerg

hyvenglaven commented 5 years ago

@joe1970 did you ever figure out a fix for the Pipe Error? I'm running into the same thing. Thanks!