HP DJ4100 Scanner Not Detected

Hi everyone,

This is my first topic on this forum. I’ve recently switched from using Ubuntu 24.10 to Clear Linux OS.

I’ve run into a bit of a roadblock while trying to set up my HP 4100 Series multifunction printer and scanner. Using CUPS, I managed to get the printer working perfectly. However, I’m struggling with the scanner setup. I installed the GNOME scanning software, but unfortunately, it doesn’t recognize the scanner.

I’m running Clear Linux version 42790 on my device which is an HP product: 550-132nl (X6Z04EA#ABZ).

Any suggestions?

Thanks!

CL does provide the hplip package needed for hp printing GitHub - clearlinux-pkgs/hplip
however, based on the .spec file, it’s built without a lot of the options which eg: fedora uses. Here’s a comparison

I recommend making a github issue at Issues · clearlinux/distribution · GitHub to possiblly add --enable-scan-build and maybe a few other options.

HPLIP takes some work to setup, and it’s not always clear which scanner models require proprietary binary components that we don’t ship. Have you tried using hp-setup to configure the scanner or scanimage -L to try to detect it directly via sane?

I’d start at Step 4 of this guide to try to dig deeper:
https://www.cyberciti.biz/faq/how-to-install-networked-hp-printer-and-scanner-on-ubuntu-linux/

If you can’t get it working with our open-source-only build of hplip, it might be worth downloading and installing the official package from HP (HP Linux Imaging and Printing | hp's Developer Portal) as shown earlier in that guide.

Several of these options are defaults; our build does include scanner support, for example.

I’m adding sane-airscan to the hardware-printing bundle. Once it’s in a release, you should be able to run airscan-discover to try to find your scanner.

I used CUPS to configure the printer and performed a test print, which was successful. Afterwards, I installed Document Scanner from Flathub and started it, but the scanner was not detected. This morning, I uninstalled the printer and used hp-setup to reinstall it. Due to time constraints, I wasn’t able to check if the scanner works. I will update you this evening.

I have just returned, and now the app is listing it. However, when I press ‘acquire images,’ it returns ‘Unable to connect to the scanner.’ From the app settings, it doesn’t seem possible to choose the paper tray. Now I’ll start learning how to install sane-airscan, unfortunately, I’m not very familiar with command-line instructions.

org.gnome.SimpleScan is already in the distro. If you can wait a couple of days for a new release to come out, then sane-airscan will be in there too. It’s at least easier to debug natively-installed vs. Flatpak, especially when trying to connect to an external device.

When I installed ClearLinux 42100 (because if I try to install directly from 42790, the installer triggers a Kernel Panic during startup), I didn’t find SimpleScan preinstalled. I had to download it from Flatpak. I’ll wait a few days, thanks again.

It’s provided by the desktop-apps bundle, and shows up in the menu under GNOME/GTK/Graphics/Scanning, or just launch the menu and start typing ‘scan’, for example. Or launch from the command line as ‘simple-scan’.

During installation, I didn’t choose to add any ‘additional bundles,’ so it wasn’t preinstalled. At this point, I’ll uninstall it from Flatpak and install it via swupd.

Forget what I said, I just checked.

swupd bundle-list

  • desktop-apps

Thanks @btwarden
now in simple-scan i can scan directly

One last thing, I’ve noticed that launching SimpleScan requires administrative rights each time. Is it possible to remove this requirement since the scanner is already listed? Unfortunately, without entering the password, I cannot scan.

I did some testing here. I believe it’s prompting for administrative rights in order to scan USB for devices. If I cancel that prompt, my wireless scanner still shows up. If you’re connected via USB, you’ll need to add yourself to the scanner group (see /usr/lib/udev/rules.d/60-libsane.rules) to access your device.

When I did that (sudo usermod -a -G scanner $(whoami) and reboot), I still got the prompt for the sake of discovery, but should be able to access a USB-connected scanner. I don’t know if there’s a way to configure simple-scan to use a specific scanner by default vs. trying to discover them every time.

Hi, I’m doing a bit of troubleshooting. My scenario is that, since it’s a multifunction device, it works both as a scanner and a printer. To print, I need to use the hplip software, while to scan, I use airscan-discover. This is why in the list on Simple Scan, I see two entries: one with the printer model and the other with the wsd prefix. Using the scanner with the second entry, I can indeed scan without administrative rights. However, if I remove the first entry, I can’t print anymore.

Sure, there are multiple printing and scanning protocols, such as LPR, IPP, eSCL, and WSD, and many devices support 2-4 protocols across multiple interfaces (and the print interfaces may support multiple languages). In addition to the common protocols, hplip provides both printing and scanning interfaces in a way that looks more uniform, though under the hood it’s still two completely different drivers for the different functions, just with the same name. You can certainly leave both hplip and WSD enabled and just select the WSD interface when you need to scan – it would be nice if simple-scan supported some persistent configuration there.

But the permissions issue comes down to USB. You can see it if you run sane-find-scanner as a user and then as root. And you can find the group for the USB devices it complains about with ls -lR /dev/bus/usb/. I mentioned adding yourself to the scanner group, but if the HP device presents as a single USB device, it might have the group lp instead, so just add yourself to that group as well.

All of this is moot if you’re only connected to the device wirelessly, though, as that isn’t affected by device permissions.

While searching here and there, I found this:

$ scanimage -L
which: no avahi-browse in (/usr/local/bin:/usr/bin/haswell:/usr/bin:/opt/3rd-party/bin)
device `airscan:w0:HP DeskJet 4100 series' is a WSD HP DeskJet 4100 series ip=192.168.1.3
device `hpaio:/net/DeskJet_4100_series?ip=192.168.1.3' is a Hewlett-Packard DeskJet_4100_series all-in-one

On this forum, they suggest the solution: Comment out hpaio in /etc/sane.d/dll.d/hplip

But while searching /etc/, I can’t find this folder.

Right, because this is a stateless distribution, we don’t dump stuff in /etc by default. If it really bugs you, you could try:

# Disable all *extra* SANE backends
$ sudo mkdir -p /etc/sane.d/dll.d

# Enable the airscan backend as an extra (excluding epsonscan2 and hpaio, for example)
$ sudo ln -s ../../../usr/share/defaults/sane/dll.d/airscan /etc/sane.d/dll.d/airscan

Or if you want to make sure that absolutely no other scanner drivers are used:

$ sudo mkdir -p /etc/sane.d

# *Only* enable the airscan backend, completely disabling any other backends
$ echo airscan | sudo tee /etc/sane.d/dll.conf

…because sane configuration files or directories in /etc will overrule the defaults we provide in /usr/share/defaults/sane.

1 Like

Thank you very much, I used the first command because the second one had no effect.