Debian ARM และ Brother DCP195C พร้อม CUPS


5

ฉันต้องการได้รับ acces กับเครื่องพิมพ์ DCP 195C (พี่ชาย) ของฉันผ่าน LAN เพื่อจุดประสงค์นี้ฉันได้ซื้อราสเบอร์รี่ปี่และติดตั้ง CUPS ไว้ CUPS ทำงานได้ดีและทุกอย่างก็ราบรื่นเช่นกัน ปัญหาของฉันคือฉันไม่สามารถติดตั้งไดรเวอร์ที่พี่ชายมอบให้ (สำหรับ x86 และ x64 เท่านั้น) บน pi ของฉัน มีตัวเลือกที่ฉันพลาดติดตั้งไดรเวอร์บน pi ของฉันหรือไม่?

คำตอบ:


3

สั้น: คุณต้องแตกไฟล์ ppd ออกจากไดรเวอร์ linux

ยาว:

FIRST

SECOND

  • เปิดเว็บอินเตอร์เฟสของถ้วยผ่านhttps://192.168.1.2:631/admin [แทนที่ ip ด้วย pi ของ]
  • คลิก "เพิ่มเครื่องพิมพ์" เลือก "Brother DCP-195C (Brother DCP-195C)" และกด "ดำเนินการต่อ"
  • แก้ไขข้อมูลที่จะเกิดขึ้นหากจำเป็นให้ตรวจสอบ "เครื่องพิมพ์ที่ใช้ร่วมกัน" และกด "ดำเนินการต่อ"
  • ใน "หรือระบุไฟล์ PPD" ให้เรียกดูไฟล์ "brother_dcp195c_printer_en.ppd" ที่แตกแล้วและอัปโหลดทำตามขั้นตอนต่อไป ... เสร็จสิ้น

หลังจากนั้นเครื่องพิมพ์ก็พร้อมใช้งาน แต่มีข้อผิดพลาด: "ไฟล์" / usr / lib / ถ้วย / ตัวกรอง / brlpdwrapperdcp195c "ไม่พร้อมใช้งาน" เพราะฉันติดตั้งไดรเวอร์บนแล็ปท็อป Ubuntu ของฉันฉันสามารถคัดลอกไฟล์จากแล็ปท็อปของฉันได้ที่ / usr / lib / cups / filter / ไปยัง pi

หลังจากนี้แล็ปท็อปของฉันสามารถค้นหาเครื่องพิมพ์


ขอบคุณสำหรับคำตอบ! ฉันจะลองทำสิ่งนี้และรายงานว่าฉันประสบความสำเร็จในการแก้ปัญหาของคุณ
Sven Niehus

ขออภัยที่ต้องใช้เวลานานในการตอบ แต่ฉันต้องติดตั้ง Debian ใน VM เพราะฉันใช้ Windows โซลูชันของคุณใช้งานได้ ขอบคุณที่สุด!
Sven Niehus

เนื่องจากดูเหมือนว่าปัญหาทั่วไปที่ต้องคัดลอกไฟล์ไดรเวอร์จากคอมพิวเตอร์เครื่องอื่นไปยังการ์ด SD ของ Raspberry: ใครบางคนอาจแชร์ไฟล์ไดรเวอร์ของเขาได้บ้าง ฉันเดาว่าคนบางคนคงจะชื่นชม

ใช้งานไม่ได้ตามที่อธิบายไว้ แต่ขอขอบคุณสำหรับการเชื่อมโยง: การติดตั้งไฟล์. deb แก้ไขปัญหา (primary.io OS / freya)
avp

คุณทำขั้นตอนใดบ้าง
Murmel

2

คุณสามารถทำให้ไดรเวอร์ i386 ทำงานบน Raspberry Pi ผ่านการจำลองแม้ว่าจะมีชุดคำสั่งที่แตกต่างกัน มันช้ามากและใช้เวลาไม่กี่นาทีจนกว่างานพิมพ์จะมาถึง แต่ก็ใช้งานได้

ฉันพบคำใบ้ในโพสต์ฟอรัมนี้: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=15526&start=25#p708038

ขั้นตอนที่ 1: ติดตั้งไดรเวอร์ตามคำแนะนำในเอกสารของ Brother

คุณควรจะมีไดเรกทอรีเช่นกับไบนารีตัวกรอง/opt/brother/Printers/dcp195c/lpd brdcp195cfilterไบนารีนี้ถูกเรียกใช้โดยfilterdcp195cเชลล์สคริปต์ถัดจากมันในไดเรกทอรีเดียวกัน

ฉันเชื่อว่าพวกเขามีสคริปต์การติดตั้งในขณะนี้ แต่ฉันไม่ได้ทำ มีคำแนะนำบางอย่างที่จำเป็นต้องติดตั้งไว้ล่วงหน้า

ขั้นตอนที่ 2: ทำให้การจำลอง i386 ทำงานได้

นี่คือทำตามขั้นตอนที่https://wiki.debian.org/QemuUserEmulation

ในตอนท้ายของขั้นตอนที่ 2 คุณควรจะสามารถเรียกใช้ไบนารี i386 เช่นเดียวกับไบนารีปกติ ในps axพวกเขาจะแสดง

ติดตั้ง Qemu

ติดตั้งแพคเกจqemu, และbinfmt-supportqemu-user-static

เรียกใช้update-binfmts --displayเพื่อดูรูปแบบไบนารีที่รองรับ ควรเปิดใช้งานโดยอัตโนมัติใน Raspbian และ Debian

ติดตั้งไลบรารีการสนับสนุน x86

บน Raspbian ให้เพิ่มบรรทัดลักษณะนี้ลงใน/etc/apt/sources.list:

## Debian i386
deb [arch=i386] http://http.debian.net/debian stable main contrib non-free

พื้นที่เก็บข้อมูล Debian อื่นจะทำเช่นกัน

พื้นที่เก็บข้อมูล Raspbian ไม่มีไบนารี x86 เพื่อเพิ่มสายสายที่มีอยู่ของคุณเริ่มต้นด้วย[arch=armhf] debบรรทัดที่ขึ้นต้นด้วยdeb-srcสามารถเก็บได้ตามที่เป็น

บอก Raspbian ว่าคุณต้องการระบบ multiarch ที่มีแพ็คเกจ i386 และรับ i386 libc สำหรับupdateขั้นตอนการทำงานคุณจะต้องนำเข้าและเชื่อถือคีย์ Debian GPG สำหรับการจัดการบรรจุภัณฑ์

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386

ณ จุดนี้คุณควรจะสามารถดำเนินการbrdcp195cfilterไบนารีซึ่งมาพร้อมกับไดรเวอร์:

$ ./brdcp195cfilter 
ERROR: ld.so: object '/usr/lib/arm-linux-gnueabihf/libarmmem.so' from /etc/ld.so.preload cannot be preloaded (cannot open shared object file): ignored.
Error: invalid option !!

หากคุณเห็นผลลัพธ์นี้มันใช้งานได้ Error: invalid option !!สายbrdcp195cfilterบ่นข้อโต้แย้งว่าคุณควรจะได้ผ่าน

ทางเลือก: ลบld.soข้อความแสดงข้อผิดพลาด

Raspbian ใช้/etc/ld.so.preloadในการโหลดlibarmmemไลบรารีลงในทุกกระบวนการ ไลบรารีแทนที่รูทีนหน่วยความจำราคาแพงบางส่วนด้วยรูทีนที่เร็วกว่าที่เขียนในชุดประกอบ ARM แต่ไม่จำเป็นต้องเรียกใช้ Raspbian อย่างเด็ดขาด

การเพิกเฉยต่อคำเตือนนั้นปลอดภัย แต่ยังปลอดภัยที่จะลบหรือใส่เครื่องหมายความคิดเห็นในบรรทัด/etc/ld.so.preloadนั้น คำเตือนจะปรากฏในบันทึกข้อผิดพลาดของ CUPS หากไม่ได้ปิดใช้งาน

ขั้นตอนที่ 3: ใช้งาน CUPS ได้

คุณควรมีการติดตั้ง CUPS จากการทำตามคำแนะนำจากเว็บไซต์ของ Brother

การเชื่อมต่อ USB ที่ไม่สม่ำเสมอ

ใน Raspberry ของฉันdmesgบันทึกถูกสลับอย่างรวดเร็วระหว่างบรรทัดเหล่านี้ในบางจุด:

[58981.586842] usblp0: removed
[59222.794260] usblp 1-1.3:1.0: usblp0: USB Bidirectional printer dev 8 if 0 alt 0 proto 2 vid 0x04F9 pid 0x0222

สิ่งที่แก้ไขให้ฉันคือไปที่localhost:631(ส่วนต่อประสานกับเว็บ CUPS) และแก้ไขเครื่องพิมพ์ในส่วน "เครื่องพิมพ์" เพื่อให้ใช้อุปกรณ์ USB ที่รู้จัก CUPS แทนusb://dev/usb/lp0อุปกรณ์

ปล่อยให้เครื่องพิมพ์รับข้อมูลด้วยความเร็วปกติ

brdcp195cfilterเป็นขั้นตอนในกระบวนการพิมพ์ที่ได้รับบิตแมปอินพุตจำนวนมากและแปลงเป็นสิ่งที่ภายหลังจะได้รับการไพพ์ไปยังอุปกรณ์เครื่องพิมพ์ ฉันวัดขนาดอินพุตเป็น ~ 90MB สำหรับข้อความ "Hello world" ง่ายๆที่ด้านบนของหน้า

การจำลองบน Raspberry นั้นไม่เร็วพอที่จะให้ทันกับการป้อนข้อมูลของเครื่องพิมพ์ การพิมพ์ทำงานได้ แต่ฉันได้ยินเสียงที่ไม่ดีต่อสุขภาพจากมอเตอร์เครื่องพิมพ์กำลังทำงานอยู่ขณะรอข้อมูล

ในการแก้ไขปัญหานี้ให้ติดตั้งยูทิลิตี้spongeจากmoreutilsแพ็คเกจและแก้ไขfilterdcp195cเพื่อให้สามารถส่งออกของ$BRCONV $BRCONV_OP(aka brdcp195cfilter) spongeได้ ควรมีสามบรรทัดในกรณี "PostScript", "PDF" และ "*" ที่ท้ายไฟล์ซึ่งลงท้าย... | $BRCONV $BRCONV_OP | spongeด้วย

สิ่งนี้ทำคือการฮุบเอาท์พุททั้งหมดจากกระบวนการตัวแปลงที่รันเป็นเวลานานและส่งมันไปยังเครื่องพิมพ์ทั้งหมดในคราวเดียวเมื่อตัวแปลงเสร็จสิ้น ด้วยวิธีนี้มันใช้เวลานานกว่าการพิมพ์จะเริ่มขึ้น แต่เครื่องพิมพ์กำลังรับข้อมูลตามปกติ

( spongeเก็บข้อมูลที่บัฟเฟอร์ในไดเรกทอรีชั่วคราวดังนั้นคุณจึงไม่ถูก จำกัด โดย RAM ของ Raspberry Pi)


ฉันสนใจที่จะรับฟังว่าสิ่งต่าง ๆ ได้ผลสำหรับคุณอย่างไร ฉันพบปัญหาที่ไม่เกี่ยวข้องระหว่างการติดตั้งโดยที่ไม่พบโมดูลเคอร์เนลซึ่งอาจทำให้เกิดปัญหาบางอย่างสำหรับฉันเมื่อการqemuจำลองไม่ทำงานทันที โปรดแก้ไขฉันหากฉันทำผิดส่วนนั้น
Günther Noack
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.