From nobody Thu Mar 10 12:37:08 2022 X-Original-To: freebsd-arm@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id F1DD41A09D23 for ; Thu, 10 Mar 2022 12:37:21 +0000 (UTC) (envelope-from archimedes.gaviola@gmail.com) Received: from mail-ed1-x534.google.com (mail-ed1-x534.google.com [IPv6:2a00:1450:4864:20::534]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4KDpVT1X7hz54Dl for ; Thu, 10 Mar 2022 12:37:21 +0000 (UTC) (envelope-from archimedes.gaviola@gmail.com) Received: by mail-ed1-x534.google.com with SMTP id c20so6750162edr.8 for ; Thu, 10 Mar 2022 04:37:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=gaHDX++Y3m9I6tNVSpculdjPqZWT2vtYoIGcUKxo42w=; b=j3wi7qzQL3wgTjNHgZMo0kCN8OslKJdEfCy+eY9iaC9bQ4V+rj7Y259ZolyjgvNcv4 0w/Z6IZ1nARxMIfg8CH7vKFzsCy1Y5ljNAtRTWVfku81aIFHidSNOYDBTFfKMH+94uB+ F2lJZkTWPWy4ctr4/jbcsk0GD1SsxJ2KhejwWGM99HMfdM0cmt6aobVGUa3yXPLyue1f yPtqTiOa+u+LdKw+86U0oD+k86Iz1/XG6T5EPCa6Z4r1SDB33Tajk5d8/X/tYqzWwalA MQhMYQbR+mM3c5Nhnzi6+4cpO6mD3fh/pb+fqM1qSBj5Lxa72Wij5TGOjAuzfLuvB2Y5 oncA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=gaHDX++Y3m9I6tNVSpculdjPqZWT2vtYoIGcUKxo42w=; b=h8vlYR8AKmi+hbIOZVzM5sRpkW8gAoTnVD1Qrwcrg6W7z1ELihhkusWNsCxU2HA7QK 2YAdnaWNVLEwsOQGx4d4DWMf4N0WSs4TYxdS941Srjg/dRfqmc/1oNB4HnhAv4IYqmv4 1JSm2qUmX5H6pxDb0402WC54LmSYEcvVK2TybMJzHwKKRyLCVv25TIgLi1QAk2dzBbIo 1MuMk7N/vyu3P22mBVNTWI/0SiJJ4YAInZ9otNKkQfTPHyyKs5nCzu0lz5bl1JdR1fPI Au/2P5rSV3pTSSIDpqlS0OYSQ0jnYIDtVt7EH9+OA9Uil30ZarYX79pp26TrGk0qR5V6 nFUQ== X-Gm-Message-State: AOAM530KAt6vCrBmSN7DzJNYcTqUN4lIY8DJggYAmmC3xAzvp4VIPKGP f2SYdf9KttB5uJ8fEAYp8LMiWwQ63LPPKQ4Cbi0zW9yz1bXT+A== X-Google-Smtp-Source: ABdhPJx5t4E0MpEAwJZDRIsjSrsDYxt9Py3El3Gu7RQHSIEKJ5OKi80qMXwxvHXWJD2x49ilFIRS50utVoq6wuzo5hQ= X-Received: by 2002:a05:6402:35cb:b0:416:465b:7aa2 with SMTP id z11-20020a05640235cb00b00416465b7aa2mr4015178edc.343.1646915840020; Thu, 10 Mar 2022 04:37:20 -0800 (PST) List-Id: Porting FreeBSD to ARM processors List-Archive: https://lists.freebsd.org/archives/freebsd-arm List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arm@freebsd.org MIME-Version: 1.0 References: <7c67118e-f6ec-c87d-9a81-3ee6a5952f49@selasky.org> <60f98b10-dcdc-cdf4-3d7a-fe9fd4dff223@selasky.org> In-Reply-To: <60f98b10-dcdc-cdf4-3d7a-fe9fd4dff223@selasky.org> From: Archimedes Gaviola Date: Thu, 10 Mar 2022 20:37:08 +0800 Message-ID: Subject: Re: Raspberry Pi 3B USB Printing Issue To: Hans Petter Selasky Cc: freebsd-arm@freebsd.org Content-Type: multipart/alternative; boundary="0000000000009e946405d9dc79a7" X-Rspamd-Queue-Id: 4KDpVT1X7hz54Dl X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20210112 header.b=j3wi7qzQ; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of archimedesgaviola@gmail.com designates 2a00:1450:4864:20::534 as permitted sender) smtp.mailfrom=archimedesgaviola@gmail.com X-Spamd-Result: default: False [-3.99 / 15.00]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36:c]; FREEMAIL_FROM(0.00)[gmail.com]; MID_RHS_MATCH_FROMTLD(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; NEURAL_HAM_SHORT(-0.99)[-0.992]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; TAGGED_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20210112]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-arm@freebsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2a00:1450:4864:20::534:from]; MLMMJ_DEST(0.00)[freebsd-arm]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] X-ThisMailContainsUnwantedMimeParts: N --0000000000009e946405d9dc79a7 Content-Type: text/plain; charset="UTF-8" On Thu, Mar 10, 2022 at 3:47 PM Hans Petter Selasky wrote: > On 3/10/22 00:24, Archimedes Gaviola wrote: > > On Thu, Mar 10, 2022 at 4:14 AM Hans Petter Selasky > wrote: > > > >> On 3/9/22 18:55, Archimedes Gaviola wrote: > >>> Hi, > >>> > >>> I have an Epson printer connected to one of the USB ports of my RPi 3B. > >> The > >>> printer is detected as a ugen(4) driver and then I have a text file - > >>> myfile3.txt which contains 10 lines of repeating sentences. > >>> > >>> freebsd@generic:~ % dmesg | grep EPSON > >>> ugen1.4: at usbus1 > >>> > >>> freebsd@generic:~ % cat myfile3.txt > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> The quick brown fox jumps over the lazy dog. > >>> > >>> freebsd@generic:~ % cat myfile3.txt > /dev/usb/1.4.1 > >>> > >>> I print the file successfully through device file redirection with cat > >>> command as described above. However, there were times that printing > >> seemed > >>> to suspend and withhold especially when my RPi 3B system got idle for > >> some > >>> period of time. Suspended or withhold in such a way that out of the 10 > >>> lines there were only 2-3 lines to be printed in the paper. So, the > only > >>> remedy I have for now is to reboot the system to be able to get back to > >>> normal printing. I'm using the 14.0-CURRENT #0 > main-n253384-45c23c2608e: > >>> Thu Feb 24 09:18:58 UTC 2022 and my RPi 4B does not manifest this > >> behavior > >>> using this same 14.0-CURRENT version. Any idea what's going on? > >>> > >>> I found these sysctl knobs thinking if some tweaks would help but not > >> sure > >>> what are the exact settings beyond these defaults. > >>> > >>> hw.usb.timings.port_resume_delay: 40 > >>> hw.usb.timings.port_powerup_delay: 300 > >>> hw.usb.timings.port_reset_recovery: 10 > >>> hw.usb.timings.port_root_reset_delay: 200 > >>> hw.usb.timings.port_reset_delay: 50 > >>> > >>> (Resend this message without dmesg and sysctl outputs as files are > quite > >>> big, sorry I didn't notice it.) > >>> > >> > >> Hi, > >> > >> Why are you not using /dev/ulpt ? > >> > >> /dev/usb/1.4.1 is the raw BULK endpoint. > >> > > > > > > Hi Hans, > > > > The ulpt(4) driver isn't detected with this Epson printer. Only my other > > printer which is an Xprinter brand is able to get detected with ulpt(4). > > > > Hi, > > Is it correctly detected if you the VID and PID to > /usr/src/sys/dev/usb/serial/ulpt.c ? > Hi Hans, Not sure how to make the current ugen(4) driver into ulpt(4). Is there a need to disable ugen(4) and recompile the kernel and let ulpt(4) driver loaded and enabled? As far as vendor ID and product ID of this Epson printer are concerned, these are 0x04b8 and 0x0200 respectively. I checked it with usbconfig below. I checked also /usr/src/sys/dev/usb/usbdevs file and it seems only the vendor ID is present but no product ID on these particular model which is TM-U220B. root@generic:~ # usbconfig -u 1 -a 4 dump_device_desc ugen1.4: at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (10mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0110 bDeviceClass = 0x0000 bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0008 idVendor = 0x04b8 idProduct = 0x0202 bcdDevice = 0x0200 iManufacturer = 0x0001 iProduct = 0x0002 iSerialNumber = 0x0003 <20160118193053218M03C> bNumConfigurations = 0x0001 > > When you use the printer via the BULK endpoint, there might be a missing > flush packet, to flush all the printed text. This happens when the > payload length is a multiple of the wMaxPacketSize. > Okay this is noted but what I found lately in usbdump are the presence of ioerrors ERR=IOERROR in capturing the ugen1.4.1 device while printing were the printed outputs are intermittent. This time I'm going to use the word "intermittent" as I don't have any idea when this occurs. It just behaves anytime without any warnings or notices to the system not even logs in the dmesg. On the other hand, normal printing will prompts with ERR=0 with complete outputs. root@generic:~ # usbdump -d ugen1.4.1 -v 19:14:11.861532 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:14:12.147498 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:14:23.491555 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:14:23.777222 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:14:32.325817 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:14:32.612222 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:18:46.334624 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:18:46.620474 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:18:53.975846 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:18:54.262223 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:21:38.505907 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:21:38.792224 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:22:06.235833 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:22:06.521723 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:22:16.344551 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:22:16.630472 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:22:31.625887 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:22:31.911723 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:22:40.325843 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:22:40.612223 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:23:53.484761 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:23:53.514428 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0, frame[0] WRITE 128 bytes 19:23:57.055902 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:23:57.084227 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:00.244450 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:00.274206 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:03.974541 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:04.004203 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 144 bytes 19:24:06.975851 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:07.004209 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:09.605790 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:09.633980 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:12.385923 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:12.413760 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:15.224542 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:15.253771 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:18.174530 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:18.203756 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:21.125927 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:21.153752 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 136 bytes 19:24:24.275854 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:24.303756 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 144 bytes 19:24:27.485857 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:27.772223 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:24:36.194633 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:36.223750 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:39.115831 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:39.143771 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 144 bytes 19:24:41.855851 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:41.883758 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:44.215882 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:44.243755 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:47.634603 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:47.663751 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:50.324493 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:50.353755 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:52.864637 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:52.893756 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 144 bytes 19:24:54.944528 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:54.973743 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:24:57.254498 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:24:57.537227 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 1264 bytes 19:25:06.024607 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:06.053747 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:08.214550 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:08.243749 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 144 bytes 19:25:10.355858 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:10.383752 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:12.435851 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:12.463752 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:14.574555 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:14.603740 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:17.814561 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:17.844015 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:19.924529 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:19.954029 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:28.075867 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:28.104036 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 144 bytes 19:25:30.195823 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:30.224035 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:32.574567 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:32.604028 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:34.624522 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:34.654016 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 128 bytes 19:25:36.895889 usbus1.4 SUBM-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=1264,IVAL=0 frame[0] WRITE 1264 bytes 19:25:36.924007 usbus1.4 DONE-BULK-EP=00000001,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=IOERROR frame[0] WRITE 144 bytes 86 packets captured 41546 packets received by filter 0 packets dropped by kernel What could be these ioerrors? As I am also firm that my Epson printer's status is good and this only happens in RPi 3B but not RPi 4B. My RPi 4B using the same printer and ugen(4) driver is very stable. Thanks, Archimedes --0000000000009e946405d9dc79a7 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Thu, Mar 10, 2022 at 3:47 PM Hans = Petter Selasky <hps@selasky.org&g= t; wrote:
On 3/1= 0/22 00:24, Archimedes Gaviola wrote:
> On Thu, Mar 10, 2022 at 4:14 AM Hans Petter Selasky <hps@selasky.org> wrote:
>
>> On 3/9/22 18:55, Archimedes Gaviola wrote:
>>> Hi,
>>>
>>> I have an Epson printer connected to one of the USB ports of m= y RPi 3B.
>> The
>>> printer is detected as a ugen(4) driver and then I have a text= file -
>>> myfile3.txt which contains 10 lines of repeating sentences. >>>
>>> freebsd@generic:~ % dmesg | grep EPSON
>>> ugen1.4: <EPSON EPSON UB-U03II> at usbus1
>>>
>>> freebsd@generic:~ % cat myfile3.txt
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>> The quick brown fox jumps over the lazy dog.
>>>
>>> freebsd@generic:~ % cat myfile3.txt=C2=A0 > /dev/usb/1.4.1<= br> >>>
>>> I print the file successfully through device file redirection = with cat
>>> command as described above. However, there were times that pri= nting
>> seemed
>>> to suspend and withhold especially when my RPi 3B system got i= dle for
>> some
>>> period of time. Suspended or withhold in such a way that out o= f the 10
>>> lines there were only 2-3 lines to be printed in the paper. So= , the only
>>> remedy I have for now is to reboot the system to be able to ge= t back to
>>> normal printing. I'm using the 14.0-CURRENT #0 main-n25338= 4-45c23c2608e:
>>> Thu Feb 24 09:18:58 UTC 2022 and my RPi 4B does not manifest t= his
>> behavior
>>> using this same 14.0-CURRENT version. Any idea what's goin= g on?
>>>
>>> I found these sysctl knobs thinking if some tweaks would help = but not
>> sure
>>> what are the exact settings beyond these defaults.
>>>
>>> hw.usb.timings.port_resume_delay: 40
>>> hw.usb.timings.port_powerup_delay: 300
>>> hw.usb.timings.port_reset_recovery: 10
>>> hw.usb.timings.port_root_reset_delay: 200
>>> hw.usb.timings.port_reset_delay: 50
>>>
>>> (Resend this message without dmesg and sysctl outputs as files= are quite
>>> big, sorry I didn't notice it.)
>>>
>>
>> Hi,
>>
>> Why are you not using /dev/ulpt<N> ?
>>
>> /dev/usb/1.4.1 is the raw BULK endpoint.
>>
>
>
> Hi Hans,
>
> The ulpt(4) driver isn't detected with this Epson printer. Only my= other
> printer which is an Xprinter brand is able to get detected with ulpt(4= ).
>

Hi,

Is it correctly detected if you the VID and PID to
/usr/src/sys/dev/usb/serial/ulpt.c ?

Hi= Hans,

Not sure how to make the current ugen(4) dr= iver into ulpt(4). Is there a need to disable ugen(4) and recompile the ker= nel and let ulpt(4) driver loaded and enabled? As far as vendor ID and prod= uct ID of this Epson printer are concerned, these are=C2=A0 0x04b8 and=C2=A0 =20 0x0200 respectively.=20 I checked it with usbconfig below. I checked also /usr/src/sys/dev/usb/usbdevs file and it seems only the vend= or ID is present but no product ID on these particular model which is TM-U2= 20B.

root@generic:~ # usbconfig -u 1 -a 4 dump= _device_desc
ugen1.4: <EPSON EPSON UB-U03II> at usbus1, cfg=3D0 md= =3DHOST spd=3DFULL (12Mbps) pwr=3DON (10mA)

=C2=A0 bLength =3D 0x001= 2
=C2=A0 bDescriptorType =3D 0x0001
=C2=A0 bcdUSB =3D 0x0110
=C2= =A0 bDeviceClass =3D 0x0000 =C2=A0<Probed by interface class>
=C2= =A0 bDeviceSubClass =3D 0x0000
=C2=A0 bDeviceProtocol =3D 0x0000
=C2= =A0 bMaxPacketSize0 =3D 0x0008
=C2=A0 idVendor =3D 0x04b8
=C2=A0 idPr= oduct =3D 0x0202
=C2=A0 bcdDevice =3D 0x0200
=C2=A0 iManufacturer =3D= 0x0001 =C2=A0<EPSON>
=C2=A0 iProduct =3D 0x0002 =C2=A0<EPSON U= B-U03II>
=C2=A0 iSerialNumber =3D 0x0003 =C2=A0<20160118193053218M= 03C>
=C2=A0 bNumConfigurations =3D 0x0001
=C2=A0

When you use the printer via the BULK endpoint, there might be a missing flush packet, to flush all the printed text. This happens when the
payload length is a multiple of the wMaxPacketSize.
Okay this is noted but what I found lately in usbdump are the prese= nce of ioerrors=20 ERR=3DIOERROR in capturing the ugen1.4.1 device while printing were the printed outputs a= re intermittent. This time I'm going to use the word "intermittent= " as I don't have any idea when this occurs. It just behaves anyti= me without any warnings or notices to the system not even logs in the dmesg= . On the other hand, normal printing will prompts with ERR=3D0 with complet= e outputs.

root@generic:~ # usbdump -d ugen1.4.1 -v
19= :14:11.861532 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D12= 64,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:14:12.147498 usbus1.4 = DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3D0
=C2= =A0frame[0] WRITE 1264 bytes
19:14:23.491555 usbus1.4 SUBM-BULK-EP=3D000= 00001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 = bytes
19:14:23.777222 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D= 1,SLEN=3D0,IVAL=3D0,ERR=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:14:32.= 325817 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL= =3D0
=C2=A0frame[0] WRITE 1264 bytes
19:14:32.612222 usbus1.4 DONE-BU= LK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3D0
=C2=A0fram= e[0] WRITE 1264 bytes
19:18:46.334624 usbus1.4 SUBM-BULK-EP=3D00000001,S= PD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes19:18:46.620474 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN= =3D0,IVAL=3D0,ERR=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:18:53.975846= usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0=C2=A0frame[0] WRITE 1264 bytes
19:18:54.262223 usbus1.4 DONE-BULK-EP= =3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3D0
=C2=A0frame[0] = WRITE 1264 bytes
19:21:38.505907 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3D= FULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:= 21:38.792224 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,I= VAL=3D0,ERR=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:22:06.235833 usbus= 1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2= =A0frame[0] WRITE 1264 bytes
19:22:06.521723 usbus1.4 DONE-BULK-EP=3D000= 00001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3D0
=C2=A0frame[0] WRITE = 1264 bytes
19:22:16.344551 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,N= FR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:22:16.= 630472 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D= 0,ERR=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:22:31.625887 usbus1.4 SU= BM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0fram= e[0] WRITE 1264 bytes
19:22:31.911723 usbus1.4 DONE-BULK-EP=3D00000001,S= PD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3D0
=C2=A0frame[0] WRITE 1264 by= tes
19:22:40.325843 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,= SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:22:40.612223 = usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR= =3D0
=C2=A0frame[0] WRITE 1264 bytes
19:23:53.484761 usbus1.4 SUBM-BU= LK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] = WRITE 1264 bytes
19:23:53.514428 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3D= FULL,NFR=3D1,SLEN=3D0,IVAL=3D0,
=C2=A0frame[0] WRITE 128 bytes
19:23= :57.055902 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,= IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:23:57.084227 usbus1.4 DON= E-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
= =C2=A0frame[0] WRITE 128 bytes
19:24:00.244450 usbus1.4 SUBM-BULK-EP=3D0= 0000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 126= 4 bytes
19:24:00.274206 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR= =3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes
1= 9:24:03.974541 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1= 264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:04.004203 usbus1.4= DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR=
=C2=A0frame[0] WRITE 144 bytes
19:24:06.975851 usbus1.4 SUBM-BULK-EP= =3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE= 1264 bytes
19:24:07.004209 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,= NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes19:24:09.605790 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN= =3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:09.633980 usbu= s1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOE= RROR
=C2=A0frame[0] WRITE 128 bytes
19:24:12.385923 usbus1.4 SUBM-BUL= K-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] W= RITE 1264 bytes
19:24:12.413760 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DF= ULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 byt= es
19:24:15.224542 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,S= LEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:15.253771 u= sbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3D= IOERROR
=C2=A0frame[0] WRITE 128 bytes
19:24:18.174530 usbus1.4 SUBM-= BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0= ] WRITE 1264 bytes
19:24:18.203756 usbus1.4 DONE-BULK-EP=3D00000001,SPD= =3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128= bytes
19:24:21.125927 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR= =3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:21.15= 3752 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,= ERR=3DIOERROR
=C2=A0frame[0] WRITE 136 bytes
19:24:24.275854 usbus1.4= SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0f= rame[0] WRITE 1264 bytes
19:24:24.303756 usbus1.4 DONE-BULK-EP=3D0000000= 1,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRIT= E 144 bytes
19:24:27.485857 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,= NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:27= .772223 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL= =3D0,ERR=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:36.194633 usbus1.4= SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0f= rame[0] WRITE 1264 bytes
19:24:36.223750 usbus1.4 DONE-BULK-EP=3D0000000= 1,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRIT= E 128 bytes
19:24:39.115831 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,= NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:39= .143771 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL= =3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 144 bytes
19:24:41.855851 usb= us1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
= =C2=A0frame[0] WRITE 1264 bytes
19:24:41.883758 usbus1.4 DONE-BULK-EP=3D= 00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[= 0] WRITE 128 bytes
19:24:44.215882 usbus1.4 SUBM-BULK-EP=3D00000001,SPD= =3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
= 19:24:44.243755 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D= 0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes
19:24:47.6346= 03 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0=
=C2=A0frame[0] WRITE 1264 bytes
19:24:47.663751 usbus1.4 DONE-BULK-E= P=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0fr= ame[0] WRITE 128 bytes
19:24:50.324493 usbus1.4 SUBM-BULK-EP=3D00000001,= SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes<= br>19:24:50.353755 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN= =3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes
19:24:52.8= 64637 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL= =3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:52.893756 usbus1.4 DONE-BU= LK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2= =A0frame[0] WRITE 144 bytes
19:24:54.944528 usbus1.4 SUBM-BULK-EP=3D0000= 0001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 b= ytes
19:24:54.973743 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1= ,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes
19:24= :57.254498 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,= IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:24:57.537227 usbus1.4 DON= E-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3D0
=C2=A0= frame[0] WRITE 1264 bytes
19:25:06.024607 usbus1.4 SUBM-BULK-EP=3D000000= 01,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 byt= es
19:25:06.053747 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,S= LEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes
19:25:0= 8.214550 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IV= AL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:25:08.243749 usbus1.4 DONE-= BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
= =C2=A0frame[0] WRITE 144 bytes
19:25:10.355858 usbus1.4 SUBM-BULK-EP=3D0= 0000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 126= 4 bytes
19:25:10.383752 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR= =3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes
1= 9:25:12.435851 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1= 264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:25:12.463752 usbus1.4= DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR=
=C2=A0frame[0] WRITE 128 bytes
19:25:14.574555 usbus1.4 SUBM-BULK-EP= =3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE= 1264 bytes
19:25:14.603740 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,= NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes19:25:17.814561 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN= =3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:25:17.844015 usbu= s1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOE= RROR
=C2=A0frame[0] WRITE 128 bytes
19:25:19.924529 usbus1.4 SUBM-BUL= K-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] W= RITE 1264 bytes
19:25:19.954029 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DF= ULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 byt= es
19:25:28.075867 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,S= LEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:25:28.104036 u= sbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3D= IOERROR
=C2=A0frame[0] WRITE 144 bytes
19:25:30.195823 usbus1.4 SUBM-= BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0= ] WRITE 1264 bytes
19:25:30.224035 usbus1.4 DONE-BULK-EP=3D00000001,SPD= =3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 128= bytes
19:25:32.574567 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR= =3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:25:32.60= 4028 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,= ERR=3DIOERROR
=C2=A0frame[0] WRITE 128 bytes
19:25:34.624522 usbus1.4= SUBM-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0f= rame[0] WRITE 1264 bytes
19:25:34.654016 usbus1.4 DONE-BULK-EP=3D0000000= 1,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL=3D0,ERR=3DIOERROR
=C2=A0frame[0] WRIT= E 128 bytes
19:25:36.895889 usbus1.4 SUBM-BULK-EP=3D00000001,SPD=3DFULL,= NFR=3D1,SLEN=3D1264,IVAL=3D0
=C2=A0frame[0] WRITE 1264 bytes
19:25:36= .924007 usbus1.4 DONE-BULK-EP=3D00000001,SPD=3DFULL,NFR=3D1,SLEN=3D0,IVAL= =3D0,ERR=3DIOERROR
=C2=A0frame[0] WRITE 144 bytes

86 packets capt= ured
41546 packets received by filter
0 packets dropped by kernel

What could be these ioerrors? As I am also firm that my Epson printer's status is good and this only = happens in RPi 3B but not RPi 4B. My RPi 4B using the same printer and ugen= (4) driver is very stable.

Thanks,
Archimedes=C2= =A0
--0000000000009e946405d9dc79a7--