Tag Archives: patch

Pulseview/Sigrok: Use Hantek 6022bl with 16 channels (Linux/debian)

Hi,

there are several ways to get all 16 channels of a Hantek 6022bl working.

Methode one:
– copy fx2lafw-sigrok-fx2-16ch.fw to fx2lafw-saleae-logic.fw. But for me this is NOT RELIABLE:
This must be done each time you connect the Hantek to the PC!
Backup firmware

1
cp /usr/share/sigrok-firmware/fx2lafw-saleae-logic.fw /usr/share/sigrok-firmware/fx2lafw-saleae-logic.fw.bak

Copy 16 Channel firmware over fx2lafw-saleae-logic.fw

1
cp /usr/share/sigrok-firmware/fx2lafw-sigrok-fx2-16ch.fw /usr/share/sigrok-firmware/fx2lafw-saleae-logic.fw

Load firmware to the device

1
2
3
sigrok-cli --scan
  .....
  fx2lafw:conn=1.15 - Saleae Logic [S/N: Saleae Logic] with 16 channels: D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 D15

Then ( I ) have to copy the old firmware back

1
cp /usr/share/sigrok-firmware/fx2lafw-saleae-logic.fw.bak /usr/share/sigrok-firmware/fx2lafw-saleae-logic.fw

And pulsview can be started. As I said really applicable.
Methode two:
– Changing the eeprom Hantek 6022bl => To difficult, see this link

In my opinion the best way is to build an own package. But be aware that the full speed of 24Mhz is not reachable with 16 channels.

1
michael@debdev ~ # mkdir fx2lafw-build

Add Source repository to

1
deb-src http://archive.ubuntu.com/ubuntu noble main restricted universe multiverse

to

1
/etc/apt/sources.list.d/official-package-repositories.list

Update repository

1
2
michael@debdev ~ # sudo apt update
michael@debdev ~ # sudo apt install build-essential fakeroot sigrok-cli sigrok-firmware-fx2lafw pulseview

1
2
michael@debdev ~ # cd fx2lafw-build
michael@debdev ~/fx2lafw-build # apt-get source  libsigrok

Install build depedencies

1
2
michael@debdev ~/fx2lafw-build # cd libsigrok-0.5.2
michael@debdev ~/fx2lafw-build/libsigrok-0.5.2 # sudo apt-get build-dep libsigrok

Apply the patch to src/hardware/fx2lafw/api.c

1
michael@debdev ~/fx2lafw-build/libsigrok-0.5.2 #  cp src/hardware/fx2lafw/api.c src/hardware/fx2lafw/api.c.org

Modifing src/hardware/fx2lafw/api.c. Open for edit, go to line 74 and replace

1
0, NULL, NULL},

with

1
DEV_CAPS_16BIT, NULL, NULL},

To create a patch for further usage use:

1
michael@debdev ~/fx2lafw-build/libsigrok-0.5.2 #  diff -Nuar  ~/software/fx2lafw-build-org/libsigrok-0.5.2/src/hardware/fx2lafw/api.c src/hardware/fx2lafw/api.c > ~/fx2lafw.patch > ~/hantek-6022bl-16ch.patch

This creates a file like this

1
2
3
4
5
6
7
8
9
10
11
--- src/hardware/fx2lafw/api.c  2019-12-25 21:29:19.000000000 +0100
+++ src/hardware/fx2lafw/api.c  2025-03-31 20:30:26.463457393 +0200
@@ -71,7 +71,7 @@
         */
        { 0x0925, 0x3881, "Saleae", "Logic", NULL,
                "fx2lafw-saleae-logic.fw",
-               0, NULL, NULL},
+               DEV_CAPS_16BIT, NULL, NULL},
 
        /*
         * Default Cypress FX2 without EEPROM, e.g.:

which can be later applied by

1
michael@debdev ~/fx2lafw-build/libsigrok-0.5.2 # patch -p1 src/hardware/fx2lafw/api.c < ~/hantek-6022bl-16ch.patch

then update the change log

1
2
3
4
5
6
7
michael@debdev ~/fx2lafw-build/libsigrok-0.5.2 #  dch -i
 
libsigrok (0.5.2-5.1ubuntu1) UNRELEASED; urgency=medium
 
  * Build for 16 channel support.
 
 -- Michael Albert <michael@albert-hetzles.de>  Wed, 19 Mar 2025 21:17:34 +0100

Start build

1
2
3
michael@debdev ~/fx2lafw-build/libsigrok-0.5.2 #  dpkg-source --commit
michael@debdev ~/fx2lafw-build/libsigrok-0.5.2 #  dpkg-buildpackage -us -uc
michael@debdev ~/fx2lafw-build/libsigrok-0.5.2 #  cd ..

Remove sigrok and pulseview

1
2
3
4
michael@debdev ~/fx2lafw-build # sudo apt autoremove pulseview and sigrok
michael@debdev ~/fx2lafw-build # sudo apt autoremove libsigrok4
michael@debdev ~/fx2lafw-build # sudo apt autoclean
michael@debdev ~/fx2lafw-build # sudo apt autoremove

Install libsigrok4 and libsigrokcxx4, may be you must adjust the version

1
2
3
michael@debdev ~/fx2lafw-build # ls -l *.deb
michael@debdev ~/fx2lafw-build # sudo dpkg -i libsigrok4t64_0.5.2-5.1ubuntu1_amd64.deb
michael@debdev ~/fx2lafw-build # sudo dpkg -i libsigrokcxx4t64_0.5.2-5.1ubuntu1_amd64.de

And install sigrok again

1
michael@debdev ~/fx2lafw-build # sudo apt install sigrok-cli sigrok-firmware-fx2lafw pulseview

Be aware that the manual installation of deb package could break some update dependencies. If happens: simply remove libsigrok4, update your system and rebuild and install a new libsigrok4.

Michael

VMWare vSphere: Update VCSA Appliance from command line

Hi,

I will show you how you can update a VCSA Appliance from command line rather then from webfrontend.

I assume you have configured a proxy server when you do not have a direct internet connection.

Login to the appliance at the console or by ssh.

First of all check the state of the lookup service by lsdoctor

Run the lsdoctor tool to recognized some certificate issues. Certificate issues are often the problem when an update fails.

1
2
3
4
Command> shell
root@vCenter [ ~/lsdoctor-master ]# python lsdoctor.py -l
2021-12-13T12:52:04 INFO generateReport: Listing lookup service problems found in SSO domain...
2021-12-13T12:52:04 INFO generateReport: No issues detected in the lookup service entries

Continue reading VMWare vSphere: Update VCSA Appliance from command line

VMware: Patching an standalone ESXi Host

Hi

Continue reading VMware: Patching an standalone ESXi Host

Creating and applying a patch with diff and patch

Hi,

this post describes to save and apply changes to an source file.
Continue reading Creating and applying a patch with diff and patch