Jump to content


Photo
- - - - -

Lexmark x4690 Reverse Engineering


  • Please log in to reply
40 replies to this topic

#21 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 26 April 2009 - 08:12 PM

I passed the evening asking questions on multiple IRC channels, and I really think there's a good chance that the printer is running Linux and not some other form of UNIX using a license other than GNU's GPL. I have just sent Lexmark this mail, hoping it falls in the good hands (I'm dreaming in colors):

Hi,

I recently bought a Lexmark x4690, a wifi printer. I noticed that the printer has an 'LXK' prompt on port 10000, to ease management of the printer. That LXK prompt provides a couple of commands that allow me to know more about the printer, one of which revealed something quite interesting: the firmware running on my Lexmark printer is most likely Linux-based. Here's a sample of the output of the 'ls' command at the LXK prompt:

LXK: ps

  PID  Uid	 VmSize Stat Command
	1 root		512 S   init			
	2 root			SWN [ksoftirqd/0]
	3 root			SW< [events/0]
	4 root			SW< [khelper]
	5 root			SW< [kthread]
	8 root			SW< [kblockd/0]
   11 root			SW  [khubd]
   34 root			SW  [pdflush]
   35 root			SW  [pdflush]
   37 root			SW< [aio/0]
   36 root			SW  [kswapd0]
   38 root			SW  [svcerrd]
   70 root			SW  [mtdblockd]
...

Many of these processes are known to be Linux processes, such as ksoftirqd, so I exclude the possibility that the printer is using firmware based on some other kind of UNIX. As the Linux kernel is licensed under the GPLv2 license, I would have expected the source code to be available from Lexmark, but I could not find it anywhere. The GPLv2 license is clear about this point, and failure to distribute the source code in this case would be a violation of the GPL license.

I would like to know where I can find the source code for the firmware of my printer, thanks.


#22 phr34kc0der

phr34kc0der

    SUPR3M3 31337 Mack Daddy P1MP

  • Members
  • 469 posts
  • Country:
  • Gender:Male

Posted 27 April 2009 - 01:44 PM

You probably know more that i do about gpl violations but some advice can be found here

http://www.fsf.org/l...-violation.html

If it turns out not to not be Linux (and as such, the source code unavailable) is the firmware binary available? Im sure between all of us we could reverse it and find out what we needed to know (btw my reverse engineering skills are very limited but i'm willing to give it a shot :P).

Edited by phr34kc0der, 27 April 2009 - 01:45 PM.


#23 mungewell

mungewell

    SUPR3M3 31337 Mack Daddy P1MP

  • Agents of the Revolution
  • 376 posts
  • Location:Planet Earth

Posted 27 April 2009 - 05:36 PM

I passed the evening asking questions on multiple IRC channels, and I really think there's a good chance that the printer is running Linux and not some other form of UNIX using a license other than GNU's GPL. I have just sent Lexmark this mail, hoping it falls in the good hands (I'm dreaming in colors):


Good try, but I fear that it won't get you any where.... unfortunately.

Regarding the hardware, the Marvelll 88W8638 (i believe) is an ARM SOC, probably the Liberates series but their partnumbers are so screwed up.... On the wireless module the FCC ID is not readable, you can find out a whole load of stuff from the FCC search site.

I have a IOMEGA NAS which runs Linux and IOMEGA claims they are not required to release source, their customer support department also says it does not support linux even though Linux is mentioned on the box as a supported OS. Fuckwitts!
Mungewell

#24 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 27 April 2009 - 09:11 PM

Here is the first reply I got from them:

Dear MarcAndre,

Thank you for contacting us regarding this matter. I appreciate the opportunity to assist you, and I hope my suggestions will provide a resolution.

Here is your Service Request # 1-1473012341

To the best of my knowledge, there are currently no plans to develop Linux drivers to support this model. Thank you for notifying us of this request. I will forward your comments on to our development department, as it is only through input from you, our customers, that we can make these important business decisions.

If you have any more questions or concerns, please contact me at your convenience and I will be happy to assist you. (If I am not available, another representative may reply to your request.)

To respond, please select "Reply" in your e-mail software, and be sure that the past e-mail is included in this reply.

[AOL Users: In order to include the previous e-mail, you must highlight it with your mouse when you are replying.]

If your e-mail client automatically deletes prior e-mail thread information, it will cause a delay while we look up your support history. If this is the case you may want to save the old e-mails as attachments and attach them to the current e-mail.

Sincerely,
Ranjith
Lexmark eSupport Team
http://support.lexmark.com
[THREAD ID:1-OCZRLH]

Please rate your e-mail support experience. Your feedback is extremely valuable to us. Please click the link below to participate in a brief Lexmark Customer Satisfaction Survey.

https://surveys.lexm...survey/s?s=9972


The guy who replied to my email didn't understand what I meant, obviously, and thought I was asking for Linux drivers XD.

@phr34kc0der: yeah, I'm aware of that site you gave a link to, that is my option once the option of asking them to willingly give the source code has been tried.

@mungewell: Did you try contacting the FSF about it?

#25 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 27 April 2009 - 10:01 PM

I just sent back this reply, hoping to get a more satisfying answer:

Hi Ranjith,

Thanks for taking the time to reply to my email. I'm afraid I have been misunderstood, I am talking about the software that the printer itself is running in order to receive printing jobs and accomplish other tasks, not the driver I would need to install on my computer or any other software that is installed on my computer. By firmware I am referring to the embedded operating system that the printer is running. For this kind of software it is common to see Linux being used as it is easy to modify and adapt to different embedded devices such as printers (Linksys routers also run Linux, for instance). The reason why I am telling you this is because I have sufficient reasons to believe that my Lexmark x4690 printer is running a Linux-based firmware (the list of processes that I've sent you in my first mail shows processes that only appear on a Linux system). A Linux-based firmware would be covered by the same license as the original Linux kernel, the GNU General Public License (GPL), which would force Lexmark to comply to it. The GPL states clearly that modified versions of code that is released under the GPL must remain in GPL, and that the modified code must be available, along with many other conditions. Failure to comply to the GPL when using GPL-covered code is a violation of the GPL and is illegal.

A famous case of a violation of the GPL has been seen with Linksys routers running Linux. People have noticed that Linksys routers (the WRT54G, for instance) were running a Linux-based firmware, but that the source code for that firmware was unavailable from Linksys. The issue got resolved when Linksys (which is now owned by Cisco) released the source code for its Linux-based firmware. As I'm finding myself in front of a similar situation, I am ringing the alarm. I went on Lexmark's website and I couldn't even find the firmware in its binary form, even less the source code for it. The firmware revision for my printer is NET.AR.N204.

Can you please forward this email to your superiors or anybody that would be the best suited to help me solve this issue? I want proof that my printer isn't running Linux, otherwise I want the source code for it.

Thanks a lot for your time,

-Marc-Andre



#26 chaostic

chaostic

    rekcah-rebÜ

  • Members
  • 724 posts

Posted 27 April 2009 - 10:34 PM

I passed the evening asking questions on multiple IRC channels, and I really think there's a good chance that the printer is running Linux and not some other form of UNIX using a license other than GNU's GPL. I have just sent Lexmark this mail, hoping it falls in the good hands (I'm dreaming in colors):


Good try, but I fear that it won't get you any where.... unfortunately.

Regaring the hardware, the Marvelll 88W8638 (i believe) is an ARM SOC, probably the Liberates series but their partnumbers are so screwed up.... On the wireless module the FCC ID is not readable, you can find out a whole load of stuff from the FCC search site.

I have a IOMEGA NAS which runs Linux and IOMEGA claims they are not required to release source, their customer support department also says it does not support linux even though Linux is mentioned on the box as a supported OS. Fuckwitts!
Mungewell


That Marvell chip shouldn't be a SOC. Three reasons being that, a) it is on a periphery card, b ) is on a wireless card, c) having two SoCs in a consumer product that does not directly call for it means an increased manufacturing (and development) cost, compared to using a dedicated network/wifi chip. Also, Marvell produces wifi chips.
A Quick search on google for "marvell 88w" (Why didn't I think of that before) show a bunch of hits for it being one of Marvell's Wifi chips. 88e is the ethernet series.

http://markmail.org/...3x7ynowjdf3sw7g

"3 network controllers, 2 of them are based on Marvell 88E8053-NNC chips supporting 10/100/1000 Mbit/sec Base-T (PCIE Gigabit Ethernet), and the third one (wireless LAN adapter) is based on the Marvell 88W 8310-BAN chip supporting up to 54Mbit/sec WiFi-b/g operating speed (IEEE 802.11b/g)."

http://www.murga-lin...af813236ad35d23
Unfortunately, the Marvell 88W-series is one of the few wifi chipsets not supported by a native Linux driver.


And Aghaster, good luck on getting source code.

#27 PurpleJesus

PurpleJesus

    Dangerous free thinker

  • Members
  • 1,578 posts
  • Gender:Male
  • Location:800

Posted 28 April 2009 - 09:20 AM

I just sent back this reply, hoping to get a more satisfying answer:

Hi Ranjith,

Thanks for taking the time to reply to my email. I'm afraid I have been misunderstood, I am talking about the software that the printer itself is running in order to receive printing jobs and accomplish other tasks, not the driver I would need to install on my computer or any other software that is installed on my computer. By firmware I am referring to the embedded operating system that the printer is running. For this kind of software it is common to see Linux being used as it is easy to modify and adapt to different embedded devices such as printers (Linksys routers also run Linux, for instance). The reason why I am telling you this is because I have sufficient reasons to believe that my Lexmark x4690 printer is running a Linux-based firmware (the list of processes that I've sent you in my first mail shows processes that only appear on a Linux system). A Linux-based firmware would be covered by the same license as the original Linux kernel, the GNU General Public License (GPL), which would force Lexmark to comply to it. The GPL states clearly that modified versions of code that is released under the GPL must remain in GPL, and that the modified code must be available, along with many other conditions. Failure to comply to the GPL when using GPL-covered code is a violation of the GPL and is illegal.

A famous case of a violation of the GPL has been seen with Linksys routers running Linux. People have noticed that Linksys routers (the WRT54G, for instance) were running a Linux-based firmware, but that the source code for that firmware was unavailable from Linksys. The issue got resolved when Linksys (which is now owned by Cisco) released the source code for its Linux-based firmware. As I'm finding myself in front of a similar situation, I am ringing the alarm. I went on Lexmark's website and I couldn't even find the firmware in its binary form, even less the source code for it. The firmware revision for my printer is NET.AR.N204.

Can you please forward this email to your superiors or anybody that would be the best suited to help me solve this issue? I want proof that my printer isn't running Linux, otherwise I want the source code for it.

Thanks a lot for your time,

-Marc-Andre

I wonder if you should send a note to Lexmark's Legal department too?

#28 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 28 April 2009 - 10:36 AM

I just sent back this reply, hoping to get a more satisfying answer:

Hi Ranjith,

Thanks for taking the time to reply to my email. I'm afraid I have been misunderstood, I am talking about the software that the printer itself is running in order to receive printing jobs and accomplish other tasks, not the driver I would need to install on my computer or any other software that is installed on my computer. By firmware I am referring to the embedded operating system that the printer is running. For this kind of software it is common to see Linux being used as it is easy to modify and adapt to different embedded devices such as printers (Linksys routers also run Linux, for instance). The reason why I am telling you this is because I have sufficient reasons to believe that my Lexmark x4690 printer is running a Linux-based firmware (the list of processes that I've sent you in my first mail shows processes that only appear on a Linux system). A Linux-based firmware would be covered by the same license as the original Linux kernel, the GNU General Public License (GPL), which would force Lexmark to comply to it. The GPL states clearly that modified versions of code that is released under the GPL must remain in GPL, and that the modified code must be available, along with many other conditions. Failure to comply to the GPL when using GPL-covered code is a violation of the GPL and is illegal.

A famous case of a violation of the GPL has been seen with Linksys routers running Linux. People have noticed that Linksys routers (the WRT54G, for instance) were running a Linux-based firmware, but that the source code for that firmware was unavailable from Linksys. The issue got resolved when Linksys (which is now owned by Cisco) released the source code for its Linux-based firmware. As I'm finding myself in front of a similar situation, I am ringing the alarm. I went on Lexmark's website and I couldn't even find the firmware in its binary form, even less the source code for it. The firmware revision for my printer is NET.AR.N204.

Can you please forward this email to your superiors or anybody that would be the best suited to help me solve this issue? I want proof that my printer isn't running Linux, otherwise I want the source code for it.

Thanks a lot for your time,

-Marc-Andre

I wonder if you should send a note to Lexmark's Legal department too?


I'd like to know how to contact their legal department, if any? I tried googling Lexmark + legal department but only got their solutions to print legal documents.

@chaostic: If it's unsupported natively, then they had to make their own, or they are using a proprietary driver from Marvell, I guess?

#29 chaostic

chaostic

    rekcah-rebÜ

  • Members
  • 724 posts

Posted 28 April 2009 - 01:18 PM

I'd like to know how to contact their legal department, if any? I tried googling Lexmark + legal department but only got their solutions to print legal documents.

@chaostic: If it's unsupported natively, then they had to make their own, or they are using a proprietary driver from Marvell, I guess?


First try sending a note to one of their media relations contacts
http://www.lexmark.c...76_0_en,00.html

Then if they don't positively respond, ask them for the name and address of their legal process server in your state. That will be the most direct route that you can reach Lexmark's Legal department.

As for the drivers, they could have a binary driver that Marvell provides under nda, so even if you do get the source, it would not be included. (Same thing happened with the zipit wireless communicators. Linux core, binary wifi driver)

#30 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 28 April 2009 - 01:32 PM

I'd like to know how to contact their legal department, if any? I tried googling Lexmark + legal department but only got their solutions to print legal documents.

@chaostic: If it's unsupported natively, then they had to make their own, or they are using a proprietary driver from Marvell, I guess?


First try sending a note to one of their media relations contacts
http://www.lexmark.c...76_0_en,00.html

Then if they don't positively respond, ask them for the name and address of their legal process server in your state. That will be the most direct route that you can reach Lexmark's Legal department.

As for the drivers, they could have a binary driver that Marvell provides under nda, so even if you do get the source, it would not be included. (Same thing happened with the zipit wireless communicators. Linux core, binary wifi driver)


Isn't there something in the GPL that prevents binary drivers to be shipped with GPL software? Or is it just my imagination. I'll have to check that.

#31 mungewell

mungewell

    SUPR3M3 31337 Mack Daddy P1MP

  • Agents of the Revolution
  • 376 posts
  • Location:Planet Earth

Posted 28 April 2009 - 01:40 PM

That marvelll chip shouldn't be a SOC.


Totally agree, but it doesn't always work that way in industry. I'm not saying you're wrong, but imagine if the the main printer board does not have enough power to run a wifi perpherial but does has a 'spare' parallel port input. The wifi card might be a re-used design which just spits out print data in the style of a PC parallel port and Lexmark don't need to redesign each print to support Wifi, they just need to make a parallel port available.

The real kicker in this scenario would be that 'we' suspect there is Linux running on the printer/wifi card and yet Lexmark refuse to support Linux on their customers desktops.


@mungewell: Did you try contacting the FSF about it?


Quite honestly, life's too short..... not that I'm putting down your quest. If you've got the time and motivation then good for you. I've got a shitty NAS which just about copes with what I need and no time to follow up on hacking it.
Mungewell.

#32 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 28 April 2009 - 02:10 PM

Following chaostic's advice, I just mailed the person in charge for media contacts (customers):

Hi,

I recently bought a Lexmark x4690, a nice wifi multifunction printer. I am aware that this printer is unsupported by Linux, but I didn't care that much as I can print from my Windows computer. I did, however, take a closer look at it, in an attempt to find what network protocol it is using, in the case that it would be a Linux-supported network printing protocol. I was out of luck, but doing that I found something else: aside from having an embedded web server, the printer has a special 'LXK' prompt on port 10000. I connected to that LXK prompt that seems to be there for printer management reasons, and listed the available commands. one of them, 'ps', prints the currently running processes in the printer's embedded operating system. I had quite a surprise when I saw the first processes in the list:

PID Uid VmSize Stat Command
1 root 512 S init
2 root SWN [ksoftirqd/0]
3 root SW< [events/0]
4 root SW< [khelper]
5 root SW< [kthread]
8 root SW< [kblockd/0]
11 root SW [khubd]
34 root SW [pdflush]
35 root SW [pdflush]
37 root SW< [aio/0]
36 root SW [kswapd0]
38 root SW [svcerrd]
70 root SW [mtdblockd]

... (list goes on)

Many of these processes are process names that you only see in a Linux system. This means that my Lexmark x4690 is running some kind of embedded Linux distribution in order to receive printing jobs and host an embedded web server that can be used to manage and configure the printer over the network. Assuming that my printer is running a Linux-based firmware, I went on Lexmark's website to get the source code for it. I couldn't even find the firmware in its binary form, and even less the source code for it. The firmware revision for my printer is NET.AR.N204. The Linux kernel and most of the software that runs on Linux is covered under the GNU General Public License (GPL) and one of the conditions of that license is that modified versions of GPL-covered source code must remain in GPL, and that the modified source code must be available.

I first tried contacting the Lexmark technical support, but the person who replied to my email misunderstood me and thought I was asking if there was a Linux driver available for the printer. I replied, making it clearer that I am talking about the firmware (the embedded operating system that the printer is running) and not any kind of software that is installed on my computer in order to use the printer. I am waiting for an answer, but I thought I might not be talking to the right person, so this is why I am emailing you. If you feel like my email has ended up in the wrong mailbox, feel free to forward it to somebody else that would know more about it.

I want to get to the right person in order to either get the proof that my printer isn't running Linux-based firmware, or if it is running a Linux-based firmware, I want Lexmark to comply to the GPL (a condition for Lexmark using GPL-covered code) and to distribute the source code for the firmware to customers.

A similar case has been seen a couple of years ago when Linksys customers noticed that the WRT54G routers were running an embedded Linux distribution, but that the source code for it was not available. The issue got solved when Linksys released the source code for all of its GPL-covered software. (here: http://www.linksysby...supportgplcode).

If you are not familiar with the GPL license, here is the version of the GPL that covers the Linux kernel:
http://www.gnu.org/l...ses/gpl-2.0.txt

Thanks a lot for your time,

-Marc-Andre



#33 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 28 April 2009 - 03:24 PM

We're making progress! :):

Dear MarcAndre,

Thank you for continuing using our electronic support to assist you with this issue,and I hope my suggestions will provide a resolution.

Here is your Service Request # 1-1473012341

Thanks you for explaining all these information to us. But the firmware which you are actually referring to, is the firmware for the network card which is built into the printer. This printer has two firmwares on it, Printer Firmware and Internal Network Card (INA) Firmware. So, are you looking for the source code of the printer or the network card?

If you have any more questions or concerns, please contact me at your convenience and I will be happy to assist you. (If I am not available, another representative may reply to your request.)

To respond, please select "Reply" in your e-mail software, and be sure that the past e-mail is included in this reply.

[AOL Users: In order to include the previous e-mail, you must highlight it with your mouse when you are replying.]

If your e-mail client automatically deletes prior e-mail thread information, it will cause a delay while we look up your support history. If this is the case you may want to save the old e-mails as attachments and attach them to the current e-mail.

Sincerely,
Ranjith



#34 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 28 April 2009 - 03:39 PM

And my next reply:

Dear Ranjith,

Thanks a lot for your reply. I am talking about the firmware that supports the embedded web server, the print server, as well as the other services that run on the printer. I guess that this would be the printer firmware, and not the internal network card firmware. If the internal network code firmware is using anything licensed under the GPL then the source code should also be made available, but I can't examine the firmware close enough to be able to tell if it is (my affirmations being based on the LXK prompt on port 10000 that provides a command to list the currently running processes, with many of them being known Linux processes). Closer examination of the firmware in its binary form would enable me to know more about potential GPL software being used, but that firmware (and its source code) is unavailable for download from Lexmark's website. So, I am looking for the source code of the printer firmware.

Thanks a lot for your understanding,

-Marc-Andre



#35 mungewell

mungewell

    SUPR3M3 31337 Mack Daddy P1MP

  • Agents of the Revolution
  • 376 posts
  • Location:Planet Earth

Posted 28 April 2009 - 03:44 PM

This printer has two firmwares on it, Printer Firmware and Internal Network Card (INA) Firmware.


Smug Grin Ensues.... ;-)

#36 mungewell

mungewell

    SUPR3M3 31337 Mack Daddy P1MP

  • Agents of the Revolution
  • 376 posts
  • Location:Planet Earth

Posted 28 April 2009 - 04:01 PM

Hi Aghaster,
I would suspect that it is the network card firmware which handles the network/wifi connections and that it passes the data the the printer firmware in a distilled version.

This would mean that you end goal of printer support could be broken into two parts:
1) A 'output driver' which would send appropriately formatted data through the ether to the printer. For example this could be used by a windows printer printing through a CUPS shared printer.

2) A 'printer driver' that would be able to produce formatted data for the above. It is highly likely that this would be a similar format to other Lemark printers, as engineers tend to be lazy buggers.


You might be able to infer some information by using the 'dump to file' mode of CUPS where print data is just dropped onto a file on disk rather than sent to the printer. You can then share this 'CUPS' printer with a windows box and tell the windows machine that it is a raw queue for a Lemark x4690 printer. The windows printer should then produce the nicely formated data for the printer.

There's a little write up on how to do this here (yes, I've been doing some hacking on a label printer using the same technique):
http://etc.nkadesign...LabelPrinterRaw

Mungewell.

#37 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 28 April 2009 - 10:09 PM

Hi Aghaster,
I would suspect that it is the network card firmware which handles the network/wifi connections and that it passes the data the the printer firmware in a distilled version.

This would mean that you end goal of printer support could be broken into two parts:
1) A 'output driver' which would send appropriately formatted data through the ether to the printer. For example this could be used by a windows printer printing through a CUPS shared printer.

2) A 'printer driver' that would be able to produce formatted data for the above. It is highly likely that this would be a similar format to other Lemark printers, as engineers tend to be lazy buggers.


You might be able to infer some information by using the 'dump to file' mode of CUPS where print data is just dropped onto a file on disk rather than sent to the printer. You can then share this 'CUPS' printer with a windows box and tell the windows machine that it is a raw queue for a Lemark x4690 printer. The windows printer should then produce the nicely formated data for the printer.

There's a little write up on how to do this here (yes, I've been doing some hacking on a label printer using the same technique):
http://etc.nkadesign...LabelPrinterRaw

Mungewell.


Yeah, you are probably right, it makes more sense that way. I'll wait to see his reply. I'll take a look at the dump to file mode of CUPS, it would probably be a good thing to reverse engineer the HBN3 protocol (the network printing protocol used by Lexmark printers).

#38 mungewell

mungewell

    SUPR3M3 31337 Mack Daddy P1MP

  • Agents of the Revolution
  • 376 posts
  • Location:Planet Earth

Posted 29 April 2009 - 12:05 PM

1) A 'output driver' which would send appropriately formatted data through the ether to the printer. For example this could be used by a windows printer printing through a CUPS shared printer.


So HBN3 seems to mean 'Lexmark "Host Based Networking"', of which there is also a HBN1 variant. Didn't find any more info though....
Mungewell.

#39 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 29 April 2009 - 02:48 PM

1) A 'output driver' which would send appropriately formatted data through the ether to the printer. For example this could be used by a windows printer printing through a CUPS shared printer.


So HBN3 seems to mean 'Lexmark "Host Based Networking"', of which there is also a HBN1 variant. Didn't find any more info though....
Mungewell.


Thanks for the definition of the acronym :P I've seen HBN3 referred at some places on Lexmark's website, but it seems to be a proprietary protocol.

By the way, I just got a reply from the person for media contacts:

Marc,

Thank you for contacting us about your product purchase. I have done some investigation in regards to your statements and found that the printer and the printers internal network card are coded using a Linux based set of codes. The gpl codes you mentioned are available on our ftp site and can be downloaded at this location: ftp.lexmark.com/swlab/gpl/index.html

Please understand that although the product itself is running Linux based code on board for its internal functions, we do not have print drivers for the X4600 series printer to print from a Linux system. As of today, we market two inkjet models with Linux drivers available on our website; those are the Z2300 series and the X2600 series.

I am sincerely sorry that this information was not provided to you sooner. I will work our inkjet teams to better understand this situation should other customers inquire.

Thanks,

Daniel Lavoie
Lexmark Inkjet Technical Support Lead


They're giving the source code! :D

For my printer model: ftp.lexmark.com/swlab/gpl
For all other source code from Lexmark, it seems to all be in this place: ftp.lexmark.com

#40 Aghaster

Aghaster

    The Frenchman

  • Agents of the Revolution
  • 2,093 posts
  • Country:
  • Gender:Male
  • Location:Quebec, Canada

Posted 29 April 2009 - 05:42 PM

I've just sent a reply, in order to try to make them put a link to the source code on their website:

Hi Daniel,

Thanks a lot for your quick understanding of my situation. This situation could have been easily avoided if there was a link to the source code provided on Lexmark's website, so that when people search for their printer model, they can easily find that the printer is using gpl-covered code and a link to the source code. I was unable to find anything that would even mention that the printer is using gpl-covered code anywhere in the documents that came with my printer and on Lexmark's website. Customers looking for the source code should be able to easily find confirmation that their printer is using gpl-covered code, and also where to get the source code that they have the right to obtain. A good example of access to gpl code made easy is Linksys' GPL code center. If it wasn't of that LXK prompt on port 10000, I would have never suspected that my printer is running Linux, and I wouldn't have emailed you in order to (possibly) get the source code, based on my assumptions.

The GPL (http://www.gnu.org/l...ses/gpl-2.0.txt) says something about it in section 3 b ) :

3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,

b ) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,

c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.


In other words, you can either distribute the source code with the printer, or accompany the printer with a written offer on where to obtain the source code from. As the source code is not provided with the printer, and that there is no mention of where the source code can be obtained either in the documents that come with the printer or on Lexmark's website, section 3 of the GPL isn't respected as it should.

Would it be possible to add a link to the source code on Lexmark's website?

Thanks for your time,

-Marc-Andre






BinRev is hosted by the great people at Lunarpages!