Markus, Here are some things we can try..
1. For USB High speed support, make sure you are running kernel 2.6.15 or higher. Depending on the printer (ie: CLJ2550, CLJ2840, LJ3050, LJ3055), older kernels may only work with USB Full speed. 2. In case the printer is confused or hung, power-cycle printer. 3. Some inexpensive USB hubs do not work well with 1284.4/MLC. Try with USB cable plugged directly into PC, no USB hub. 4. If the printer is enumerating as USB High speed, try Full speed. Either set bios to use Full speed or use USB 1.1 hub. If still getting dot4init errors, get the following info so we can try to reproduce the problem. 1. What kind of mother board is used? 2. What USB chip set is used? 3. Distro? lspci -v | grep HCI Hope this helps! A Markus Huschka wrote:
Hi Aaron,applied the patch and it worked, but it seems that it doesn't solve my problem:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Sep 9 11:17:46 vaio-z1 hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 144 Sep 9 11:17:46 vaio-z1 hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 144 Sep 9 11:17:46 vaio-z1 hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 144 Sep 9 11:17:46 vaio-z1 hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 144 Sep 9 11:20:31 vaio-z1 hpiod: unable to read Dot4ReverseReply header: Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 252 Sep 9 11:20:31 vaio-z1 hpiod: invalid DOT4InitReply retrying command... io/hpiod/dot4.cpp 339 Sep 9 11:20:35 vaio-z1 hpiod: unable to read Dot4ReverseReply header: Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 252 Sep 9 11:20:35 vaio-z1 hpiod: invalid DOT4InitReply: cmd=0, result=20 , revision=0 io/hpiod/dot4.cpp 350 Sep 9 11:20:36 vaio-z1 hp_color_LaserJet_2550_series?serial=00CNHHK03579: INFO: open print channel failed; will retry in 30 seconds... Sep 9 11:21:10 vaio-z1 hpiod: unable to read Dot4ReverseReply header: Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 252 Sep 9 11:21:10 vaio-z1 hpiod: invalid DOT4InitReply retrying command... io/hpiod/dot4.cpp 339 Sep 9 11:21:14 vaio-z1 hpiod: unable to read Dot4ReverseReply header: Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 252 Sep 9 11:21:14 vaio-z1 hpiod: invalid DOT4InitReply: cmd=0, result=20 , revision=0 io/hpiod/dot4.cpp 350 Sep 9 11:21:15 vaio-z1 hp_color_LaserJet_2550_series?serial=00CNHHK03579: INFO: open print channel failed; will retry in 30 seconds... Sep 9 11:21:33 vaio-z1 hpiod: device cleanup uri=hp:/usb/hp_color_LaserJet_2550_series?serial=00CNHHK03579------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Still the printer doesn't start to print anything.... Aaron J Albright wrote:Markus, Sorry, correct file attached. A Markus Huschka wrote:Hi Aaron, did you attach the correct file? It has a different name (hplip-0.9.11-1.patch vs. hpiod-1.6.7-1.patch) and is an update to data/xml/models.xml. So maybe thats the reason why I can't execute the patch: ===================================================================== patch -p1 < hplip-0.9.11-1.patch can't find file to patch at input line 4 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |diff -uNr hplip-0.9.11.old/data/xml/models.xml hplip-0.9.11.new/data/xml/models.xml |--- hplip-0.9.11.old/data/xml/models.xml 2006-05-08 12:27:06.000000000 -0700 |+++ hplip-0.9.11.new/data/xml/models.xml 2006-05-10 15:46:29.413942616 -0700 -------------------------- File to patch: ===================================================================== Thanks, Markus Aaron J Albright wrote:Markus, Can you try again but with this patch? Thanks. tar xzvf hplip-1.6.7.tar.gz > > cp hpiod-1.6.7-1.patch hplip-1.6.7/io/hpiod > > cd hplip-1.6.7/io/hpiod > > patch -p1 < hpiod-1.6.7-1.patch > > cd ../.. > > ./configure --prefix=/usr > > make > > make install Aaron Markus Huschka wrote:Hi, I got my new printer, a Color LaserJet 2550LN, and tried to print using hplip 1.6.7 and cups 1.2.2. It's connected via USB to my gentoo box. Everything seems to work except that I'm not able to print using hplip. I can check the printerstatus with hp-toolbox and all information about cartridges, printerstatus, etc are shown correctly, but it's impossible to print a testpage or any other document. If I try to print I get thefollowing errors in /var/log/messages and the printer never starts to print:----------------------------------------------------------------------------------------------------------------------------------------------------------Aug 28 15:35:27 lumpen hpiod: unable to read Dot4ReverseReply header: Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 245 Aug 28 15:35:27 lumpen hpiod: invalid DOT4InitReply retrying command... io/hpiod/dot4.cpp 332 Aug 28 15:35:31 lumpen hpiod: unable to read Dot4ReverseReply header: Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 245 Aug 28 15:35:31 lumpen hpiod: invalid DOT4InitReply: cmd=0, result=20 , revision=74 io/hpiod/dot4.cpp 343 Aug 28 15:35:32 lumpen hp_color_LaserJet_2550_series?serial=00CNHHK03579: INFO: open print channel failed; will retry in 30 seconds...----------------------------------------------------------------------------------------------------------------------------------------------------------When starting hp-toolbox these messages appear in /var/log/messages:----------------------------------------------------------------------------------------------------------------------------------------------------------Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137 Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137 Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137 Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137 Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4, hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137----------------------------------------------------------------------------------------------------------------------------------------------------------The printer works fine using the usb:// backend or MS Windows XP and hasthe most recent firmware installed. How can this problem be solved? If you need any other infos, log-files, etc. tell me! Thanks for your help!------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642_______________________________________________ HPLIP-Help mailing list HPLIP-Help@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hplip-help------------------------------------------------------------------------diff -uNr hplip-0.9.11.old/data/xml/models.xml hplip-0.9.11.new/data/xml/models.xml --- hplip-0.9.11.old/data/xml/models.xml 2006-05-08 12:27:06.000000000 -0700 +++ hplip-0.9.11.new/data/xml/models.xml 2006-05-10 15:46:29.413942616 -0700@@ -7797,6 +7797,32 @@ </r0> </model>+<model name="PSC_950xi"> + <id>MFG:Hewlett-Packard;MDL:PSC 900 Series;SKU:PSC 950;CMD:2,PCL,PML;CLASS:PRINTER;DESCRIPTION:Hewlett-Packard PSC 900 Series;1284.3M:f7f,f7f;1284.4DL:4d,4e,1;SERN:MY15U31143WP;VSTATUS:$AU0$AU0,ff,DN,PENF,CUT,K0,C0,SM,NR,KP066,CP095;AiO:00;DW-PCL;</id>+ <icon>PSC_900_Series.png</icon> + <support type="2"/> + <case-model> + </case-model> + <io support="2" mode="1" control="0" mfp-mode="2" scan-port="0"/> + <align type="9"/> + <clean type="3"/> + <color-cal type="0"/> + <status type="1"/> + <scan type="1"/> + <fax type="0"/> + <pcard type="1"/> + <copy type="0"/> + <tech class="DJ9xx" type="2"/> + <embedded-server type="0"/> + <panel-check type="1"/> + <linefeed-cal type="0"/> + <pq-diag type="0"/> + <r0> + <agent1 kind="3" type="1" sku="15 (C6615DN)"/> + <agent2 kind="3" type="2" sku="78 (C6578AN / C6578DN)"/> + </r0> +</model> + <model name="Photosmart_2570_series"> <id></id> <icon>psc_2300_series.png</icon>------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security?Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimohttp://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ HPLIP-Help mailing list HPLIP-Help@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hplip-help------------------------------------------------------------------------ diff -uNr old/device.cpp new/device.cpp --- old/device.cpp 2006-08-28 12:24:04.192691635 -0700 +++ new/device.cpp 2006-08-28 12:22:47.078508175 -0700 @@ -448,11 +448,20 @@ hd = FD[fd].pHD;len = usb_control_msg(hd, + USB_ENDPOINT_OUT | USB_TYPE_CLASS | USB_RECIP_OTHER, /* bmRequestType */+ 0x02, /* bRequest */ + 0, /* wValue */ + 0, /* wIndex */ + NULL, 0, LIBUSB_CONTROL_REQ_TIMEOUT); + +#if 0+ len = usb_control_msg(hd, USB_ENDPOINT_IN | USB_TYPE_CLASS | USB_RECIP_OTHER, /* bmRequestType */0x02, /* bRequest */ 0, /* wValue */ 0, /* wIndex */ NULL, 0, LIBUSB_CONTROL_REQ_TIMEOUT); +#endifif (len < 0){ diff -uNr old/dot4.cpp new/dot4.cpp --- old/dot4.cpp 2006-08-28 12:23:54.154974760 -0700 +++ new/dot4.cpp 2006-08-28 12:22:33.824184882 -0700 @@ -88,6 +88,13 @@ { /* Got a valid data packet handle it. This can happen when ReadData timeouts and p2hcredit=1. */ pC = (Dot4Channel *)pDev->pChannel[i]; + + if (pC->GetP2HCredit() <= 0) + { + syslog(LOG_ERR, "invalid data packet credit=%d: %s %d\n", pC->GetP2HCredit(), __FILE__, __LINE__); + return 0; + } + size = ntohs(pCmd->h.length) - sizeof(DOT4Header); if (size > (MAX_RECEIVER_DATA - pC->rcnt)) { @@ -459,7 +466,7 @@ /* Read data from peripheral. */ int Dot4Channel::Dot4ReverseData(int fd, int sockid, unsigned char *buf, int length, int timeout) { - int len, size, total; + int len, size, total, i; DOT4Header *pPk;pPk = (DOT4Header *)buf;@@ -517,6 +524,43 @@ Dot4ExecReverseCmd(fd, buf); continue; /* try again for data packet */ } + else if ((pPk->psid == pPk->ssid) && ((i = Dot4Socket2Channel(pPk->psid)) >= 0)) + { + /* Got a valid data packet for another channel handle it. This can happen when ReadData timeouts and p2hcredit=1. */ + Dot4Channel *pC = (Dot4Channel *)pDev->pChannel[i]; + unsigned char *pBuf; + + if (pC->GetP2HCredit() <= 0) + { + syslog(LOG_ERR, "invalid data packet credit=%d: %s %d\n", pC->GetP2HCredit(), __FILE__, __LINE__); + goto bugout; + } + + if (size > (MAX_RECEIVER_DATA - pC->rcnt)) + { + syslog(LOG_ERR, "invalid data packet size=%d: %s %d\n", size, __FILE__, __LINE__); + goto bugout; + }+ + total = 0;+ pBuf = &pC->rbuf[pC->rcnt]; + while (size > 0) + { + if ((len = pDev->Read(fd, pBuf+total, size)) < 0) + { + syslog(LOG_ERR, "unable to read Dot4ReverseData: %m %s %d\n", __FILE__, __LINE__); + goto bugout; + } + size-=len; + total+=len; + } + + pC->rcnt += total; + if (pPk->credit)+ pC->SetH2PCredit(pC->GetH2PCredit() + pPk->credit); /* note, piggy back credit is 1 byte wide */ + pC->SetP2HCredit(pC->GetP2HCredit()-1); /* one data packet was read, decrement credit count */+ continue; /* try again for data packet */ + } else { DOT4Cmd *pCmd = (DOT4Cmd *)buf; diff -uNr old/mlc.cpp new/mlc.cpp --- old/mlc.cpp 2006-08-28 12:23:44.212244284 -0700 +++ new/mlc.cpp 2006-08-28 12:22:28.770823225 -0700 @@ -83,6 +83,13 @@ { /* Got a valid data packet handle it. This can happen when ReadData timeouts and p2hcredit=1. */ pC = (MlcChannel *)pDev->pChannel[i]; + + if (pC->GetP2HCredit() <= 0) + { + syslog(LOG_ERR, "invalid data packet credit=%d: %s %d\n", pC->GetP2HCredit(), __FILE__, __LINE__); + return 0; + } + size = ntohs(pCmd->h.length) - sizeof(MLCHeader); if (size > (MAX_RECEIVER_DATA - pC->rcnt)) { @@ -467,7 +474,7 @@ /* Read data from peripheral. */ int MlcChannel::MlcReverseData(int fd, int sockid, unsigned char *buf, int length, int timeout) { - int len, size, total; + int len, size, total, i; MLCHeader *pPk;pPk = (MLCHeader *)buf;@@ -502,7 +509,7 @@if (size > length){ - syslog(LOG_ERR, "invalid MlcReverseData size: size=%d, buf=%d\n", size, length); + syslog(LOG_ERR, "invalid MlcReverseData size: size=%d, buf=%d %s %d\n", size, length, __FILE__, __LINE__); goto bugout;} @@ -516,7 +523,7 @@{ if ((len = pDev->Read(fd, buf+total, size)) < 0) { - syslog(LOG_ERR, "unable to read MlcReverseData command: %m\n"); + syslog(LOG_ERR, "unable to read MlcReverseData command: %m %s %d\n", __FILE__, __LINE__); goto bugout; } size-=len; @@ -525,10 +532,48 @@ MlcExecReverseCmd(fd, buf); continue; /* try again for data packet */ } + else if ((pPk->hsid == pPk->psid) && ((i = MlcSocket2Channel(pPk->hsid)) >= 0)) + { + /* Got a valid data packet for another channel handle it. This can happen when ReadData timeouts and p2hcredit=1. */ + MlcChannel *pC = (MlcChannel *)pDev->pChannel[i]; + unsigned char *pBuf; + + if (pC->GetP2HCredit() <= 0) + { + syslog(LOG_ERR, "invalid data packet credit=%d: %s %d\n", pC->GetP2HCredit(), __FILE__, __LINE__); + goto bugout; + } + + if (size > (MAX_RECEIVER_DATA - pC->rcnt)) + { + syslog(LOG_ERR, "invalid data packet size=%d: %s %d\n", size, __FILE__, __LINE__); + goto bugout; + }+ + total = 0;+ pBuf = &pC->rbuf[pC->rcnt]; + while (size > 0) + { + if ((len = pDev->Read(fd, pBuf+total, size)) < 0) + { + syslog(LOG_ERR, "unable to read MlcReverseData: %m %s %d\n", __FILE__, __LINE__); + goto bugout; + } + size-=len; + total+=len; + } + + pC->rcnt += total; + if (pPk->credit)+ pC->SetH2PCredit(pC->GetH2PCredit() + pPk->credit); /* note, piggy back credit is 1 byte wide */ + pC->SetP2HCredit(pC->GetP2HCredit()-1); /* one data packet was read, decrement credit count */+ continue; /* try again for data packet */ + } else { MLCCmd *pCmd = (MLCCmd *)buf; - syslog(LOG_ERR, "invalid MlcReverseData state: unexpected packet hsid=%x, psid=%x, cmd=%x\n", pPk->hsid, pPk->psid, pCmd->cmd);+ syslog(LOG_ERR, "invalid MlcReverseData state: exp hsid=%x, act hsid=%x, psid=%x, length=%d, credit=%d, status=%x, cmd=%x %s %d\n", sockid, + pPk->hsid, pPk->psid, ntohs(pPk->length), pPk->credit, pPk->status, pCmd->cmd, __FILE__, __LINE__);goto bugout; } } @@ -545,7 +590,7 @@ { if ((len = pDev->Read(fd, buf+total, size)) < 0) { - syslog(LOG_ERR, "unable to read MlcReverseData: %m\n"); + syslog(LOG_ERR, "unable to read MlcReverseData: %m %s %d\n", __FILE__, __LINE__); goto bugout; } size-=len;------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ HPLIP-Help mailing list HPLIP-Help@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hplip-help
smime.p7s
Description: S/MIME Cryptographic Signature
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ HPLIP-Help mailing list HPLIP-Help@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hplip-help