mrgmarsh / wfrog

Automatically exported from code.google.com/p/wfrog
GNU General Public License v3.0
0 stars 0 forks source link

wmr200.py driver error on ARM device (raspberry pi) #115

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1.Install latest .deb package
2.Run wfrog with sudo wfrog

What version of the product are you using? On what operating system?
Raspbian, optimised version of Debian "Weezy"

Please provide any additional information below.

Here is the wfrog.log:

2012-08-02 10:59:41,551 INFO [config] Starting wfrog 0.8.2
2012-08-02 10:59:41,555 INFO [config] Loaded settings file 
/etc/wfrog/settings.yaml
2012-08-02 10:59:48,577 INFO [config] Starting wfrog 0.8.2
2012-08-02 10:59:48,591 INFO [config] Loaded settings file 
/etc/wfrog/settings.yaml
2012-08-02 10:59:48,619 INFO [station.wmr200] Thread started
2012-08-02 10:59:48,630 INFO [station.wmr200] USB initialization
2012-08-02 10:59:48,644 INFO [station.wmr200] Oregon Scientific weather station 
found
2012-08-02 10:59:48,647 INFO [station.wmr200] Manufacturer: 0
2012-08-02 10:59:48,656 INFO [station.wmr200] Product: 1
2012-08-02 10:59:48,669 INFO [station.wmr200] Device version: 03.02
2012-08-02 10:59:48,672 INFO [station.wmr200] USB version: 01.10
2012-08-02 10:59:48,695 INFO [station.wmr200] Unloaded other driver from 
interface 0
2012-08-02 10:59:49,586 INFO [config] Starting wfrog 0.8.2
2012-08-02 10:59:49,590 INFO [config] Loaded settings file 
/etc/wfrog/settings.yaml
2012-08-02 10:59:49,611 INFO [renderer.http] Started server on port 7680
2012-08-02 10:59:49,803 ERROR [station.wmr200] WMR200 connect failed: error 
sending control message: Device or resource busy
Traceback (most recent call last):
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 259, in connectDevice
    0xA, [], 0, 0, int(usbTimeout * 1000))
USBError: error sending control message: Device or resource busy
2012-08-02 10:59:49,814 ERROR [station.wmr200] Can't write request record: 
error sending control message: Device or resource busy
Traceback (most recent call last):
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 198, in sendPacket
    timeout = int(usbTimeout * 1000))
USBError: error sending control message: Device or resource busy
2012-08-02 10:59:49,821 ERROR [station.wmr200] WMR200 disconnect failed: could 
not release intf 0: Invalid argument
Traceback (most recent call last):
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 319, in disconnectDevice
    self.devh.releaseInterface()
USBError: could not release intf 0: Invalid argument

It seems like it founds the station (2012-08-02 10:59:48,644 INFO 
[station.wmr200] Oregon Scientific weather station found
) but when tryng to send commands to it t fails.

Using python 2.6 (because wfrog wont work with 2.7).

Original issue reported on code.google.com by Priit.He...@gmail.com on 2 Aug 2012 at 11:05

GoogleCodeExporter commented 9 years ago
Heres the output i see when running sudo wfrog -d

2012-08-02 11:37:34,561 ERROR [station.wmr200] WMR200 connect failed: error 
sending control message: Device or resource busy
Traceback (most recent call last):
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 259, in connectDevice
    0xA, [], 0, 0, int(usbTimeout * 1000))
USBError: error sending control message: Device or resource busy
2012-08-02 11:37:34,578 ERROR [station.wmr200] Can't write request record: 
error sending control message: Device or resource busy
Traceback (most recent call last):
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 198, in sendPacket
    timeout = int(usbTimeout * 1000))
USBError: error sending control message: Device or resource busy
2012-08-02 11:37:34,592 DEBUG [station.wmr200] Command: DF
2012-08-02 11:37:34,599 ERROR [station.wmr200] WMR200 disconnect failed: could 
not release intf 0: Invalid argument
Traceback (most recent call last):
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 319, in disconnectDevice
    self.devh.releaseInterface()
USBError: could not release intf 0: Invalid argument
Exception in thread Thread-3:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/threading.py", line 484, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib/wfrog/wfdriver/wfdriver.py", line 117, in run
    self.station.run(gen, self.enqueue_event)
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 349, in run
    self.logData()
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 439, in logData
    self.sendCommand(0xD0)
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 210, in sendCommand
    self.sendPacket([0x01, command, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00])
  File "/usr/lib/wfrog/wfdriver/station/wmr200.py", line 196, in sendPacket
    self.devh.controlMsg(usb.TYPE_CLASS + usb.RECIP_INTERFACE,
AttributeError: 'NoneType' object has no attribute 'controlMsg'

Original comment by Priit.He...@gmail.com on 2 Aug 2012 at 11:43

GoogleCodeExporter commented 9 years ago
Heres a line from a dmesg:

usb 1-1.3: usbfs: process 4905 (wfrog) did not claim interface 0 before use

Maybe the usbhid driver is newer than the one wfrog would work with?

Original comment by Priit.He...@gmail.com on 2 Aug 2012 at 12:13

GoogleCodeExporter commented 9 years ago
I am using wfrog with Raspberry pi and it works. I am using driver wmrs200.py 
though, so the situation is not exactly identical, but I still think it prooves 
that wfrog works in Raspberry and the USB driver is fine.

There has been several issues with USB in raspberry. Maybe your power supply is 
not stabil enough as it seems from teh logs that USB connection is lost.

Original comment by schuckl...@gmail.com on 20 Aug 2012 at 7:14

GoogleCodeExporter commented 9 years ago
It might not be a hardware issue. A colleague at work had USB & Ethernet 
problems using  debian and raspbian distributions. Now he is using archlinux 
(same hardware) and everything works fine... 

Original comment by jordi.pu...@gmail.com on 20 Aug 2012 at 7:22

GoogleCodeExporter commented 9 years ago
I had to create a file /etc/modprobe.d/blacklist-wm200.conf and add:

options usbhid quirks=0x0fde:0xca01:0x4

to get my wmr200 up and running. Though I used an old laptop and not a Pi 
(still waiting for it to arrive)

Original comment by torkels...@gmail.com on 28 Sep 2012 at 5:42

GoogleCodeExporter commented 9 years ago
I was having the same problem to fix it I pull the batteries out of weather 
station and pulled the plug for 2 min. The with the USB cable plugged into both 
the Raspberry Pi and the weather station I reconnected the power and replace 
the batteries. Then I restarted wfrog with "sudo wfrog --brackend".

Original comment by mark.wri...@gmail.com on 18 Nov 2012 at 6:58

GoogleCodeExporter commented 9 years ago
Did this fix the problem permanently or does it come back again?

Original comment by Priit.He...@gmail.com on 19 Nov 2012 at 7:31

GoogleCodeExporter commented 9 years ago
Hello,

i tried the workaround with Python 2.6 and modprobe. After that i took out the 
batteries, but the failure is still there. I'll hope you can solve the problem.

Thanks

Michael

Original comment by deep_fl...@gmx.de on 26 Nov 2012 at 1:30

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
same problem here
someone has solved the problem ?
please

Original comment by Stephane...@gmail.com on 31 Dec 2012 at 5:29

GoogleCodeExporter commented 9 years ago
Get it working by adding
usbhid.quirks=0x0fde:0xca01:0x4
to the boot command line (/boot/cmdline.txt)

Original comment by Stephane...@gmail.com on 6 Jan 2013 at 9:31

GoogleCodeExporter commented 9 years ago
Hi, 

I install wfrog on Raspberry PI with a wmr200.

Package installed:
python2.6 (2.6.8-1.1) ...
libyaml-0-2:armhf (0.1.4-2) ...
python-yaml (3.10-4) ...
python-cheetah (2.4.4-3) ...
python-pygooglechart (0.3.0-1) ...
python-lxml (2.3.2-1) ...
python-usb (0.4.3-1) ...
python-serial (2.5-2.1) ...
wfrog (0.8.2-1) ...

wfrog -d
Traceback (most recent call last):
  File "/usr/bin/wfrog", line 138, in <module>
    component.run(config_file, settings)
  File "/usr/lib/wfrog/wflogger/wflogger.py", line 132, in run
    self.configure(config_file, settings_file)
  File "/usr/lib/wfrog/wflogger/wflogger.py", line 94, in configure
    (config, self.context) = self.configurer.configure(options, self, config_file, settings_file)
  File "/usr/lib/wfrog/wfcommon/config.py", line 123, in configure
    self.logger.info("Starting wfrog " + wfrog_version)
  File "/usr/lib/python2.7/logging/__init__.py", line 1148, in info
    self._log(INFO, msg, args, **kwargs)
  File "/usr/lib/python2.7/logging/__init__.py", line 1267, in _log
    self.handle(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 1277, in handle
    self.callHandlers(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 1317, in callHandlers
    hdlr.handle(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 744, in handle
    rv = self.filter(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 607, in filter
    for f in self.filters:
AttributeError: 'RotatingFileHandler' object has no attribute 'filters'

Original comment by cyrilleg...@gmail.com on 30 Apr 2013 at 9:36

GoogleCodeExporter commented 9 years ago
cyrilleg:   your issue is likely due to the incorrect python executing the 
script.  Try

#python2.6 /usr/bin/wfrog -d 

Original comment by cgsel...@gmail.com on 24 Mar 2014 at 10:41

GoogleCodeExporter commented 9 years ago
Hi, I had exactly the same error on X86 PC with Ubuntu server 14.04 before I 
loaded in kernel the module usbhid

after that wfrog worked fine in root mode but I still have this error if launch 
in user mode

hope it might help you
regards

Original comment by Phane.Ph...@gmail.com on 8 Jun 2015 at 7:24