Jump to content
  • 0

Question on PMD-1208LS: Wrong (?) values?


Question

Posted

Hello,

 

we are using a PMD-1208LS together with a compute module 4 (Raspberry Pi 4). It works, we can do measurement based on the example test-usb1208LS.py.

We are using only DA and AD ports. We are using single ended measurements.

From time to time the measurement returns a value -1024=-0x400, which is then converted to -10 Volts.

We are reading values from multiple channels and all of them return the same value, again and again (even when we restart the test program).

 

When we reboot the Raspberry Pi, the values are correct again.

When we disconnect and re-connect the PMD-1208LS, it is also working again.

 

This is what we are using:

test@test:/usr/local/bin $ uname -a

Linux test 5.15.76-v7l+ #1597 SMP Fri Nov 4 12:14:58 GMT 2022 armv7l GNU/Linux

test@test:/usr/local/bin $

 

Bus 001 Device 006: ID 09db:007a Measurement Computing Corp. PMD-1208LS

Device Descriptor:

  bLength                18

  bDescriptorType         1

  bcdUSB               1.10

  bDeviceClass            0

  bDeviceSubClass         0

  bDeviceProtocol         0

  bMaxPacketSize0         8

  idVendor           0x09db Measurement Computing Corp.

  idProduct          0x007a PMD-1208LS

  bcdDevice            1.02

  iManufacturer           1 MCC

  iProduct                2 USB-1208LS

  iSerial                 3 020A93B3

  bNumConfigurations      1

  Configuration Descriptor:

    bLength                 9

    bDescriptorType         2

   wTotalLength       0x0029

    bNumInterfaces          1

    bConfigurationValue     1

    iConfiguration          4 Cfg1

    bmAttributes         0x80

      (Bus Powered)

    MaxPower              100mA

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       0

      bNumEndpoints           2

      bInterfaceClass         3 Human Interface Device

      bInterfaceSubClass      0

      bInterfaceProtocol      0

      iInterface              5 EP1

        HID Device Descriptor:

          bLength                 9

          bDescriptorType        33

          bcdHID               1.10

          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(Global): Logical Minimum, data= [ 0x00 ] 0

            Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255

            Item(Global): Report Size, data= [ 0x08 ] 8

            Item(Main  ): Collection, data= [ 0x01 ] 1

                            Application

            Item(Local ): Usage, data= [ 0x01 ] 1

                            (null)

            Item(Global): Report Count, data= [ 0x08 ] 8

            Item(Main  ): Input, data= [ 0x02 0x01 ] 258

                            Data Variable Absolute No_Wrap Linear

                            Preferred_State No_Null_Position Non_Volatile Buffered Bytes

            Item(Local ): Usage, data= [ 0x01 ] 1

                            (null)

            Item(Global): Report Count, data= [ 0x08 ] 8

            Item(Main  ): Output, data= [ 0x02 0x01 ] 258

                            Data Variable Absolute No_Wrap Linear

                            Preferred_State No_Null_Position Non_Volatile Buffered Bytes

            Item(Local ): Usage, data= [ 0x01 ] 1

                            (null)

            Item(Global): Report Count, data= [ 0x68 ] 104

            Item(Main  ): Feature, data= [ 0x02 0x01 ] 258

                            Data Variable Absolute No_Wrap Linear

                            Preferred_State No_Null_Position Non_Volatile Buffered Bytes

            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     0x0008  1x 8 bytes

        bInterval              10

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x01  EP 1 OUT

        bmAttributes            3

          Transfer Type            Interrupt

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0008  1x 8 bytes

        bInterval              10

can't get debug descriptor: Resource temporarily unavailable

Device Status:     0x0000

  (Bus Powered)

 

Any idea what it could be? Is there perhaps a firmware version we can check and perhaps update the firmware?

Or can I try something out, when I next time reach this situation?

Is there some way to reset the part which could make this problems?

 

We already tried

 

#!/bin/bash

 

for X in /sys/bus/usb/devices/*; do
    if [ -f $X/idVendor ] && [ $(cat "$X/idVendor") == "09db" ] ; then
        echo "Resetting device"
        echo 0 > $X/authorized
        sleep 1
        echo 1 > $X/authorized
    fi
done

 

but this has not helped.

 

Many thanks!

 

Best regards,

Martin

1 answer to this question

Recommended Posts

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...