Difference between revisions of "Velleman PS3005D/Info"

From sigrok
Jump to navigation Jump to search
(add lsusb output)
 
(add a brief protocol description)
Line 1: Line 1:
== Protocol ==
The protocol is Serial or Serial over USB, 9600 8N1, (almost fully) ASCII based. No line termination, CRC or checksum characters are used.
The PC sends a request string which is then responded by the power supply.
{| border="0" style="font-size: smaller" class="alternategrey sigroktable"
|-
! Request
! Example output
! Remarks
|-
| *IDN?
| VELLEMANPS3005DV2.0
| Request identification from device. It's unknown what other versions / brands (e.g. Korad KA3005P) return here.
|-
| STATUS?
| (byte)
| Request the actual status. The output is a single byte with the actual status encoded in bits. At least the Velleman PS3005D V2.0 is a bit buggy here. The only reliable bits are: 0x40 (Output mode: 1:on, 0:off), 0x20 (OVP and/or OCP mode: 1:on, 0:off) and 0x01 (CV/CC mode: 1:CV, 0:CC)
|-
| VSET1?
| 12.34
| Request the voltage as set by the user.
|-
| VSET1:12.34
| (none)
| Set the maximum output voltage.
|-
| VOUT1?
| 12.34
| Request the actual voltage output.
|-
| ISET1?
| 0.125
| Request the current as set by the user.
|-
| ISET1:0.125
| (none)
| Set the maximum output current.
|-
| IOUT1?
| 0.125
| Request the actual output current.
|-
| OUT1
| (none)
| Enable the power output.
|-
| OUT0
| (none)
| Disable the power output.
|-
| OVP1
| (none)
| Enable the "Over Voltage Protection", the PS will switch off the output when the voltage raises above the actual level.
|-
| OVP0
| (none)
| Disable the "Over Voltage Protection".
|-
| OCP1
| (none)
| Enable the "Over Current Protection", the PS will switch off the output when the current raises above the actual level.
|-
| OCP0
| (none)
| Disable the "Over Current Protection".
|}
Remarks:
# The digit 1 in the V... and I... requests indicates the values are meant for channel one. In future (or "higher"?) models this may be two for a second channel and so on.
# Voltage ("00.00" to "31.00" V) and current ("0.000" to "5.100" A) output values have a fixed length with fixed dot position. The values won't become negative.
== lsusb ==
== lsusb ==



Revision as of 02:21, 3 January 2014

Protocol

The protocol is Serial or Serial over USB, 9600 8N1, (almost fully) ASCII based. No line termination, CRC or checksum characters are used.

The PC sends a request string which is then responded by the power supply.

Request Example output Remarks
*IDN? VELLEMANPS3005DV2.0 Request identification from device. It's unknown what other versions / brands (e.g. Korad KA3005P) return here.
STATUS? (byte) Request the actual status. The output is a single byte with the actual status encoded in bits. At least the Velleman PS3005D V2.0 is a bit buggy here. The only reliable bits are: 0x40 (Output mode: 1:on, 0:off), 0x20 (OVP and/or OCP mode: 1:on, 0:off) and 0x01 (CV/CC mode: 1:CV, 0:CC)
VSET1? 12.34 Request the voltage as set by the user.
VSET1:12.34 (none) Set the maximum output voltage.
VOUT1? 12.34 Request the actual voltage output.
ISET1? 0.125 Request the current as set by the user.
ISET1:0.125 (none) Set the maximum output current.
IOUT1? 0.125 Request the actual output current.
OUT1 (none) Enable the power output.
OUT0 (none) Disable the power output.
OVP1 (none) Enable the "Over Voltage Protection", the PS will switch off the output when the voltage raises above the actual level.
OVP0 (none) Disable the "Over Voltage Protection".
OCP1 (none) Enable the "Over Current Protection", the PS will switch off the output when the current raises above the actual level.
OCP0 (none) Disable the "Over Current Protection".

Remarks:

  1. The digit 1 in the V... and I... requests indicates the values are meant for channel one. In future (or "higher"?) models this may be two for a second channel and so on.
  2. Voltage ("00.00" to "31.00" V) and current ("0.000" to "5.100" A) output values have a fixed length with fixed dot position. The values won't become negative.


lsusb

This is the lsusb output on Linux:

$ lsusb -vvv
Bus 004 Device 006: ID 0416:5011 Winbond Electronics Corp.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            2 Communications
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x0416 Winbond Electronics Corp.
  idProduct          0x5011
  bcdDevice            3.00
  iManufacturer           1
  iProduct                2 USB Virtual COM
  iSerial                 3 NT2009101400
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           67
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xc0
      Self Powered
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      2 Abstract (modem)
      bInterfaceProtocol      1 AT-commands (v.25ter)
      iInterface              0
      CDC Header:
        bcdCDC               1.10
      CDC Call Management:
        bmCapabilities       0x00
        bDataInterface          1
      CDC ACM:
        bmCapabilities       0x00
      CDC Union:
        bMasterInterface        0
        bSlaveInterface         1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0000
  (Bus Powered)