Hi,

Has anyone had any luck interfacing weewx (on a rpi) to this weather 
station (which is identical to the Bresser 6 in 1) and if so could you give 
me any pointers ?
https://youshiko.co.uk/collections/digital-weather-stations/products/yc9388

My basic assumption is that this is a Fine Offset clone.

The fundamental problem I'm having is with the USB interface

$ lsusb  -v -d 1941:8021

*Bus 001 Device 004: ID 1941:8021 Dream Link WH1080 Weather Station / USB 
Missile Launcher*
*Device Descriptor:*
*  bLength                18*
*  bDescriptorType         1*
*  bcdUSB               2.00*
*  bDeviceClass            0 *
*  bDeviceSubClass         0 *
*  bDeviceProtocol         0 *
*  bMaxPacketSize0        64*
*  idVendor           0x1941 Dream Link*
*  idProduct          0x8021 WH1080 Weather Station / USB Missile Launcher*
*  bcdDevice            0.00*
*  iManufacturer           1 Silicon Laboratories Inc.*
*  iProduct                2 CCLEL C8488*
*  iSerial                 3 CCLEL c8488*
*  bNumConfigurations      1*
*  Configuration Descriptor:*
*    bLength                 9*
*    bDescriptorType         2*
*    wTotalLength       0x0022*
*    bNumInterfaces          1*
*    bConfigurationValue     1*
*    iConfiguration          0 *
*    bmAttributes         0xc0*
*      Self Powered*
*    MaxPower              100mA*
*    Interface Descriptor:*
*      bLength                 9*
*      bDescriptorType         4*
*      bInterfaceNumber        0*
*      bAlternateSetting       0*
*      bNumEndpoints           1*
*      bInterfaceClass         3 Human Interface Device*
*      bInterfaceSubClass      0 *
*      bInterfaceProtocol      1 Keyboard*
*      iInterface              0 *
*        HID Device Descriptor:*
*          bLength                 9*
*          bDescriptorType        33*
*          bcdHID               1.11*
*          bCountryCode            0 Not supported*
*          bNumDescriptors         1*
*          bDescriptorType        34 Report*
*          wDescriptorLength      36*
*          Report Descriptor: (length is 36)*
*            Item(Global): Usage Page, data= [ 0x00 0xff ] 65280*
*                            (null)*
*            Item(Local ): Usage, data= [ 0x01 ] 1*
*                            (null)*
*            Item(Main  ): Collection, data= [ 0x01 ] 1*
*                            Application*
*            Item(Local ): Usage Minimum, data= [ 0x01 ] 1*
*                            (null)*
*            Item(Local ): Usage Maximum, data= [ 0x08 ] 8*
*                            (null)*
*            Item(Global): Logical Minimum, data= [ 0x00 ] 0*
*            Item(Global): Logical Maximum, data= [ 0xff ] 255*
*            Item(Global): Report Count, data= [ 0x40 ] 64*
*            Item(Global): Report Size, data= [ 0x08 ] 8*
*            Item(Main  ): Input, data= [ 0x02 ] 2*
*                            Data Variable Absolute No_Wrap Linear*
*                            Preferred_State No_Null_Position Non_Volatile 
Bitfield*
*            Item(Local ): Usage Minimum, data= [ 0x01 ] 1*
*                            (null)*
*            Item(Local ): Usage Maximum, data= [ 0x08 ] 8*
*                            (null)*
*            Item(Global): Logical Minimum, data= [ 0x00 ] 0*
*            Item(Global): Logical Maximum, data= [ 0xff ] 255*
*            Item(Global): Report Count, data= [ 0x08 ] 8*
*            Item(Global): Report Size, data= [ 0x08 ] 8*
*            Item(Main  ): Output, data= [ 0x02 ] 2*
*                            Data Variable Absolute No_Wrap Linear*
*                            Preferred_State No_Null_Position Non_Volatile 
Bitfield*
*            Item(Main  ): End Collection, data=none*
*      Endpoint Descriptor:*
*        bLength                 7*
*        bDescriptorType         5*
*        bEndpointAddress     0x81  EP 1 IN*
*        bmAttributes            3*
*          Transfer Type            Interrupt*
*          Synch Type               None*
*          Usage Type               Data*
*        wMaxPacketSize     0x0040  1x 64 bytes*
*        bInterval               1*
*can't get device qualifier: Resource temporarily unavailable*
*can't get debug descriptor: Resource temporarily unavailable*
*Device Status:     0x0001*
*  Self Powered*


Running wee_ device works, but the values returned are all defaults not 
what the console is displaying.

$ sudo bin/wee_device --info

*Using configuration file /home/weewx/weewx.conf*
*Using FineOffsetUSB driver version 1.20 (weewx.drivers.fousb)*
*Querying the station...*
*Fine Offset station settings:*
*                    local time: 2020.01.03 17:47:03 GMT*
*                  polling mode: PERIODIC*

*                  abs_pressure: 0*
*                   current_pos: 0*
*                  data_changed: 0*
*                    data_count: 0*
*                     date_time: 2000-00-00 00:00*
*                 hum_in_offset: 0*
*                hum_out_offset: 0*
*                            id: 0*
*                 lux_wm2_coeff: 0*
*                       magic_1: 0xfa*
*                       magic_2: 0x 3*
*                         model: 0*
*                     rain_coef: 0*
*                   read_period: 0*
*                  rel_pressure: 101.8*
*                temp_in_offset: 0*
*               temp_out_offset: 0*
*                      timezone: 0*
*                    unknown_01: 0*
*                    unknown_18: 3*
*                       version: 0*
*                     wind_coef: 0*
*                     wind_mult: 0*

*         max.abs_pressure.date: 2000-00-00 00:00*
*          max.abs_pressure.val: 0*
*             max.dewpoint.date: 2000-160-03 00:00*
*              max.dewpoint.val: 0*

              .... (cut similar)

and the log file shows :

*Jan  3 17:45:28 rpi2 wee_device[2565] INFO weewx.drivers.fousb: driver 
version is 1.20*
*Jan  3 17:45:28 rpi2 wee_device[2565] INFO weewx.drivers.fousb: polling 
mode is PERIODIC*
*Jan  3 17:45:28 rpi2 wee_device[2565] INFO weewx.drivers.fousb: polling 
interval is 60*
*Jan  3 17:45:28 rpi2 wee_device[2565] INFO weewx.drivers.fousb: found 
station on USB bus= device=*
*Jan  3 17:45:28 rpi2 wee_device[2565] INFO weewx.drivers.fousb: unstable 
read: blocks differ for ptr 0x000000*
*Jan  3 17:45:30 rpi2 wee_device[2565] INFO weewx.drivers.fousb: unstable 
read: blocks differ for ptr 0x000000*
*Jan  3 17:45:32 rpi2 wee_device[2565] INFO weewx.drivers.fousb: unstable 
read: blocks differ for ptr 0x000000*
*.... (many similar cut)*
*Jan  3 17:46:53 rpi2 wee_device[2565] INFO weewx.drivers.fousb: unstable 
read: blocks differ for ptr 0x0000e0*
*Jan  3 17:46:55 rpi2 wee_device[2565] INFO weewx.drivers.fousb: unstable 
read: blocks differ for ptr 0x0000e0*
*Jan  3 17:46:57 rpi2 wee_device[2565] INFO weewx.drivers.fousb: unstable 
read: blocks differ for ptr 0x0000e0*
*Jan  3 17:46:59 rpi2 wee_device[2565] INFO weewx.drivers.fousb: unstable 
read: blocks differ for ptr 0x0000e0*
*Jan  3 17:47:01 rpi2 wee_device[2565] INFO weewx.drivers.fousb: unstable 
read: blocks differ for ptr 0x0000e0*
*Jan  3 17:47:03 rpi2 wee_device[2565] ERROR weewx.drivers.fousb: 
unrecognised magic number fa03*


I've cycled through the model numbers in the weewx.conf [FineOffsetUSB] 
settings but this has made no difference.

I should say I was using the latest stable version on a rpi4 but wee_device 
crashes with this on the first usb block read (errno 75, Overflow).  I am 
now using  4.0.0b6 on an rpi2 which at least doesn't crash.

I have attached a laptop running windows with the manufacturers software - 
this works perfectly (but the software is very limited) so at least I know 
the weather station is fully functional

Thanks

Bob

-- 
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/074811f4-1f92-49aa-b658-c2915095cc41%40googlegroups.com.

Reply via email to