]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/hantek-6xxx/api.c
ols: add feature to support >256K memory
[libsigrok.git] / src / hardware / hantek-6xxx / api.c
index d94ee45d3fecdf196a494ea1aa569dc243f2328b..20d35a2b3aa30be70925e6a03cd4f258a13e6d4c 100644 (file)
@@ -61,20 +61,39 @@ static const char *acdc_coupling[] = {
 
 static const struct hantek_6xxx_profile dev_profiles[] = {
        {
+               /* Windows: "Hantek6022BE DRIVER 1": 04b4:6022 */
                0x04b4, 0x6022, 0x1d50, 0x608e, 0x0001,
                "Hantek", "6022BE", "fx2lafw-hantek-6022be.fw",
                ARRAY_AND_SIZE(dc_coupling), FALSE,
        },
+       {
+               /* Windows: "Hantek6022BE DRIVER 2": 04b5:6022 */
+               0x04b5, 0x6022, 0x1d50, 0x608e, 0x0001,
+               "Hantek", "6022BE", "fx2lafw-hantek-6022be.fw",
+               ARRAY_AND_SIZE(dc_coupling), FALSE,
+       },
        {
                0x8102, 0x8102, 0x1d50, 0x608e, 0x0002,
                "Sainsmart", "DDS120", "fx2lafw-sainsmart-dds120.fw",
                ARRAY_AND_SIZE(acdc_coupling), TRUE,
        },
        {
+               /* Windows: "Hantek6022BL DRIVER 1": 04b4:602a */
                0x04b4, 0x602a, 0x1d50, 0x608e, 0x0003,
                "Hantek", "6022BL", "fx2lafw-hantek-6022bl.fw",
                ARRAY_AND_SIZE(dc_coupling), FALSE,
        },
+       {
+               /* Windows: "Hantek6022BL DRIVER 2": 04b5:602a */
+               0x04b5, 0x602a, 0x1d50, 0x608e, 0x0003,
+               "Hantek", "6022BL", "fx2lafw-hantek-6022bl.fw",
+               ARRAY_AND_SIZE(dc_coupling), FALSE,
+       },
+       {
+               0xd4a2, 0x5660, 0x1d50, 0x608e, 0x0004,
+               "YiXingDianZi", "MDSO", "fx2lafw-yixingdianzi-mdso.fw",
+               ARRAY_AND_SIZE(dc_coupling), FALSE,
+       },
        ALL_ZERO
 };
 
@@ -228,11 +247,12 @@ static GSList *scan(struct sr_dev_driver *di, GSList *options)
                                devices = g_slist_append(devices, sdi);
                                devc = sdi->priv;
                                if (ezusb_upload_firmware(drvc->sr_ctx, devlist[i],
-                                               USB_CONFIGURATION, prof->firmware) == SR_OK)
+                                               USB_CONFIGURATION, prof->firmware) == SR_OK) {
                                        /* Remember when the firmware on this device was updated. */
                                        devc->fw_updated = g_get_monotonic_time();
-                               else
-                                       sr_err("Firmware upload failed.");
+                               } else {
+                                       sr_err("Firmware upload failed, name %s.", prof->firmware);
+                               }
                                /* Dummy USB address of 0xff will get overwritten later. */
                                sdi->conn = sr_usb_dev_inst_new(
                                                libusb_get_bus_number(devlist[i]), 0xff, NULL);