Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

Scanner's HP Laser MFP 137fnw

Linux Kernel, Network, and Services configuration.
Message
Author
brian_p
Posts: 196
Joined: 2015-11-05 10:32
Has thanked: 1 time
Been thanked: 5 times

Re: Scanner's HP Laser MFP 137fnw

#16 Post by brian_p »

Nope, it is searched by the SANE -> see the above posts -> the libsane-smfp.so.1.0.1 is correctly installed, and SANE can find the library, but it can't load/initialize it ->because the required plugin interface functions are missing.
Thank you for focusing my attention. I did what I should have previous done and
installed the ULD scanner driver on my i386 machine. The backend is linked from
/usr/lib/sane, which SANE does search.

Code: Select all

$ SANE_DEBUG_DLL=5 scanimage -L 2>&1 | grep smfp > scanner.txt
$ cat scanner.txt
[dll] add_backend: adding backend `smfp'
[dll] load: searching backend `smfp' in `/usr/lib/i386-linux-gnu/sane:/usr/lib/sane'
[dll] load: trying to load `/usr/lib/i386-linux-gnu/sane/libsane-smfp.so.1'
[dll] load: couldn't open `/usr/lib/i386-linux-gnu/sane/libsane-smfp.so.1' (No such file or directory)
[dll] load: trying to load `/usr/lib/sane/libsane-smfp.so.1'
[dll] load: dlopen()ing `/usr/lib/sane/libsane-smfp.so.1'
[dll] init: initializing backend `smfp'
[dll] init: backend `smfp' is version 1.0.1
[dll] sane_exit: calling backend `smfp's exit function
Perhaps the difference between my output and capcia's isn't important?

More puzzling is

Code: Select all

$ readelf --dyn-syms /usr/lib/i386-linux-gnu/sane/libsane-hpaio.so.1.0.0 | grep hpaio_init
   202: 00004580   101 FUNC    GLOBAL DEFAULT   12 sane_hpaio_init
This is a known working backend on this system.
--
Brian.

LE_746F6D617A7A69
Posts: 932
Joined: 2020-05-03 14:16
Has thanked: 7 times
Been thanked: 68 times

Re: Scanner's HP Laser MFP 137fnw

#17 Post by LE_746F6D617A7A69 »

brian_p wrote:Perhaps the difference between my output and capcia's isn't important?
Your result means, that plugin interface in i386 version of the backend is correctly implemented.

EDIT: removed old content, because It turns out that I'm an idiot... /EDIT
Last edited by LE_746F6D617A7A69 on 2020-06-08 15:32, edited 2 times in total.
Bill Gates: "(...) In my case, I went to the garbage cans at the Computer Science Center and I fished out listings of their operating system."
The_full_story and Nothing_have_changed

brian_p
Posts: 196
Joined: 2015-11-05 10:32
Has thanked: 1 time
Been thanked: 5 times

Re: Scanner's HP Laser MFP 137fnw

#18 Post by brian_p »

Code: Select all

brian@test:~$ readelf --dyn-syms /usr/lib/sane/libsane-smfp.so.1.0.1 | grep sane                                        
   482: 00081000   171 FUNC    GLOBAL DEFAULT   10 sane_smfp_cancel                                                     
   940: 00080e80   178 FUNC    GLOBAL DEFAULT   10 sane_smfp_get_select_fd                                              
  1112: 00081320    42 FUNC    GLOBAL DEFAULT   10 sane_smfp_get_option_desc                                            
  1336: 000812e0    63 FUNC    GLOBAL DEFAULT   10 sane_smfp_control_option                                             
  1797: 00081230   172 FUNC    GLOBAL DEFAULT   10 sane_smfp_get_parameters                                             
  2148: 00080dc0     5 FUNC    GLOBAL DEFAULT   10 sane_smfp_exit                                                       
  2546: 00081350    33 FUNC    GLOBAL DEFAULT   10 sane_smfp_close                                                      
  3024: 00080f40   185 FUNC    GLOBAL DEFAULT   10 sane_smfp_set_io_mode                                                
  3031: 00081500   244 FUNC    GLOBAL DEFAULT   10 sane_smfp_init                                                       
  3203: 00081180   171 FUNC    GLOBAL DEFAULT   10 sane_smfp_start                                                      
  3358: 00081440   178 FUNC    GLOBAL DEFAULT   10 sane_smfp_get_devices                                                
  3854: 00081380   185 FUNC    GLOBAL DEFAULT   10 sane_smfp_open                                                       
  3863: 000810b0   193 FUNC    GLOBAL DEFAULT   10 sane_smfp_read                                                       
  4153: 00080dd0   166 FUNC    GLOBAL DEFAULT   10 sane_samsung_strstatus                                               
brian@test:~$
--
Brian.

LE_746F6D617A7A69
Posts: 932
Joined: 2020-05-03 14:16
Has thanked: 7 times
Been thanked: 68 times

Re: Scanner's HP Laser MFP 137fnw

#19 Post by LE_746F6D617A7A69 »

The result reported by brian_p have triggered my attention: how it is possible that i386 version works with sane?

So, I have downloaded full sane project from gitlab, and I've analysed the code again.
The scanimage is using libdll.a (backends-master/backend/dll.c) to load backends, and the backend functions names to be dlopen()-ed are dynamically constructed, based on backend type. Only native SANE backends have static function names: sane_xxxx().
The scanimage uses the dll wrapper to call backend functions using default SANE functions names (previously I've only checked that it calls the sane_init() function -> I've missed the fact that there is a name-wrapper)

The function names in HP ULD backend are correct -> so I must apologize for accusing HP of lacking QA, the SMFP interface is valid

I have also installed the HP drivers on 2 machines: Debian10 64 bit and Debian9 32bit -> in both cases the HP backend driver is correctly loaded and initialized by SANE.

Conclusion:
1. There's something wrong with the capcla's OS -> we have to investigate this case again.
2. I'm an idiot, who have wasted a lot of time for useless research...

Regards.
Bill Gates: "(...) In my case, I went to the garbage cans at the Computer Science Center and I fished out listings of their operating system."
The_full_story and Nothing_have_changed

brian_p
Posts: 196
Joined: 2015-11-05 10:32
Has thanked: 1 time
Been thanked: 5 times

Re: Scanner's HP Laser MFP 137fnw

#20 Post by brian_p »

... definitely the "driverless" solution might work in this case.
Another success for sane-airscan! :D Message #10 at https://bugs.launchpad.net/hplip/+bug/1882390.
--
Brian.

LE_746F6D617A7A69
Posts: 932
Joined: 2020-05-03 14:16
Has thanked: 7 times
Been thanked: 68 times

Re: Scanner's HP Laser MFP 137fnw

#21 Post by LE_746F6D617A7A69 »

brian_p wrote:Another success for sane-airscan!
That's really fantastic - but still, I would like to see the results for the ULD HP drivers -> because they seem to work with the latest version of Debian system -> ofc, that would require to find a person or a compny who have actually tested this ... (and I don't have the HW to test... )

Regards.
Bill Gates: "(...) In my case, I went to the garbage cans at the Computer Science Center and I fished out listings of their operating system."
The_full_story and Nothing_have_changed

dim459
Posts: 1
Joined: 2020-09-13 16:56

Re: Scanner's HP Laser MFP 137fnw

#22 Post by dim459 »

Well, I had the same issues with this device in Kubuntu 18.04, it was detected and added as a network printer (via wifi), but it wasn't always printing properly (often printed not requested pages with hieroglyphics, wrong driver I guess) and of course the scanner wasn't recognized at all.
The solution was as follows (I guess there won't be any or significant differences in debian), if of course the device is already connected to your network via wifi (preferably with a static ip).
Step 1
Download the driver from HP :
https://support.hp.com/us-en/drivers/se ... =true&sku=
Step 2
Unzip the driver, after that a folder named uld is created.
Open a terminal in that location, or cd to the uld folder and install the driver (well the following sudo command has to do with ubuntu, I guess you can run a root terminal in debian)

Code: Select all

sudo ./install.sh
Step 3
After finishing with driver installation, open a browser and go to :
http://localhost:631/
From the web interface either add the printer, or modify it (if already added). The whole purpose is to provide manually the correct ppd file. Follow the steps required (at some point requires username and password) and manually provide the ppd file. The location in Kubuntu was /usr/share/ppd/uld-hp/HP_Laser_MFP_13x_Series.ppd and the last section of course is the ppd file.
Step 4
Copy the libsane-smfp.so file to the correct location (as far as sudo is concerned, same as above), I hope the directories are the same, or find the right ones in your debian installation.

Code: Select all

sudo cp /usr/lib64/sane/libsane-smfp* /usr/lib/x86_64-linux-gnu/sane/
Step 5
Download and install the sane-airscan deb file, choosing your distro, from the following location (I had to download the deb, adding the repository didn't work, since it wasn't retrieving the right key) :
https://software.opensuse.org//download ... ne-airscan
Step 6
Reboot your pc.

After these steps printer and scanner are working perfectly in my Kubuntu 18.04 installation.
I hope this helps, and please feel free to modify-complete-comment the above, especially if there are differences in the relative debian directories, or same packages are pre-required (for instance in my description I take for granted that the sane related packages are already installed, since they are pre-installed in Kubuntu).
By the way this device is not expected to be supported by hplip. It's actually a Samsung device released under the HP brand and it uses the SPL (Samsung Printing Language).

Post Reply