Anleitung: Mit Brother HL-2030 per AirPrint im WLAN drucken (macOS Tahoe & iOS 26) – Raspberry Pi Zero W (Trixie)
Du hast einen Brother HL-2030 (USB, älter, kein echtes AirPrint/IPP-Everywhere) und willst trotzdem vom Mac (macOS Tahoe) und iPhone/iPad (iOS 26) problemlos im WLAN drucken – ohne Treiberzirkus, ohne “Auf Authentifizierung warten”, ohne doppelte Drucker, ohne Zufall.
Du hast einen Brother HL-2030 (USB, älter, kein echtes AirPrint/IPP-Everywhere) und willst trotzdem vom Mac (macOS Tahoe) und iPhone/iPad (iOS 26) problemlos im WLAN drucken – ohne Treiberzirkus, ohne “Auf Authentifizierung warten”, ohne doppelte Drucker, ohne Zufall.
Die Lösung: Der Raspberry Pi wird zu einem AirPrint-Proxy:
-
CUPS + brlaser druckt lokal per USB auf den HL-2030.
-
Avahi (Bonjour/mDNS) kündigt den Drucker als AirPrint-fähig an (inkl. _universal-Subtype + URF/PDL TXT-Records).
-
macOS/iOS sehen einen “AirPrint”-Drucker und senden kompatible Jobs, CUPS rendert und druckt.
Unten ist eine verlässliche Schritt-für-Schritt-Anleitung, die du jederzeit 1:1 nachbauen kannst.
Was typischerweise schiefgeht (und wie du es vermeidest)
1) “Auf Authentifizierung warten” (macOS/iOS hängt beim Drucken)
Ursache: CUPS verlangt (auch nur “preflight”) Auth für Druckoperationen (Create-Job/Send-Document). iOS kann das nicht sauber lösen, macOS Tahoe cached es extrem hart.
2) macOS zeigt “Treiber auswählen” statt “AirPrint”
Ursache: Der Bonjour-Advert ist nicht eindeutig AirPrint-konform (fehlender _universal Subtype oder fehlende/ungeeignete URF/PDL TXT-Records). Dann fällt macOS auf “klassisches Treibermodell” zurück.
3) Drucker erscheint doppelt in macOS
Ursache: CUPS kündigt selbst per DNS-SD an und Avahi kündigt zusätzlich an. Ergebnis: zwei Bonjour-Einträge.
4) LPD-Ansatz / cups-lpd
Unter aktuellen Debian/Raspberry Pi OS Releases ist LPD oft nicht verfügbar bzw. nicht der stabile Weg für AirPrint-Clients. Der robuste Weg ist IPP/AirPrint via Bonjour.
5) ipp-usb / “driverless über USB”
Nur sinnvoll für moderne Drucker, die IPP-over-USB wirklich unterstützen. Der HL-2030 tut das nicht – ipp-usb kann hier eher Chaos (Phantom-Queues) erzeugen.
Zielbild (so muss es am Ende aussehen)
-
Der Pi hat eine CUPS-Queue: BrotherHL2030
-
Avahi kündigt einen AirPrint-Dienst an, der auf Port 631 zeigt und rp=printers/BrotherHL2030 enthält.
-
Auf dem Pi liefern diese Tests ein positives Signal:
-
lpstat -p -d zeigt die Queue und “idle”
-
avahi-browse -rt _universal._sub._ipp._tcp zeigt den AirPrint-Advert
-
-
In macOS Tahoe erscheint der Drucker im “Standard”-Tab als Bonjour-Drucker und wird als AirPrint akzeptiert (kein Treiberdialog, kein Auth-Warten).
-
In iOS 26 erscheint der Drucker direkt in der Druckerauswahl.
Voraussetzungen
-
Raspberry Pi Zero W (oder anderer Pi) im WLAN
-
Brother HL-2030 per USB am Pi
-
Frische Raspberry Pi OS Lite (32-bit, Trixie) Installation
-
Idealerweise: statische IP oder DHCP-Reservation im Router (empfohlen)
Schritt 1 – Raspberry Pi OS Lite installieren
-
Mit Raspberry Pi Imager flashen:
-
OS: Raspberry Pi OS Lite (32-bit) (Trixie)
-
Hostname: airprintpi (Beispiel)
-
WLAN SSID/Passwort eintragen
-
SSH aktivieren
-
Zeitzone/Locale setzen (z. B. Europe/Berlin)
-
-
Pi booten, per SSH verbinden:
ssh pi@airprintpi.local
- (oder per IP)
Schritt 2 – System aktualisieren
sudo apt update
sudo apt full-upgrade -y
sudo reboot
Nach dem Reboot erneut verbinden.
Schritt 3 – Benötigte Pakete installieren
sudo apt update
sudo apt install -y --no-install-recommends \
cups cups-client cups-bsd cups-filters \
printer-driver-brlaser \
avahi-daemon avahi-utils
User in die CUPS-Admin-Gruppe:
sudo usermod -aG lpadmin $USER
newgrp lpadmin
Dienste aktivieren:
sudo systemctl enable --now cups avahi-daemon
Schritt 4 – Drucker per USB prüfen
Drucker anschließen und prüfen:
lsusb
Erwartung: Ein Eintrag wie “Brother Industries … HL-2030 …”.
USB-Backends prüfen:
lpinfo -v | grep -i usb
Erwartung: Eine URI wie:
usb://Brother/HL-2030%20series?serial=…
Schritt 5 – CUPS-Queue mit brlaser anlegen (HL-2030)
- (Optional) alte Queue entfernen:
sudo lpadmin -x BrotherHL2030 2>/dev/null || true
- Queue erstellen:
USBURI="$(lpinfo -v | awk '/usb:\/\/Brother\/HL-2030/ {print $2; exit}')"
echo "$USBURI"
sudo lpadmin -p BrotherHL2030 -E \
-v "$USBURI" \
-m "drv:///brlaser.drv/br2030.ppd"
- Als Standard setzen:
sudo lpoptions -d BrotherHL2030
- Schnelltest lokal vom Pi:
lp -d BrotherHL2030 /etc/hosts
Erwartung: Papier kommt raus.
Wenn nicht: zuerst dieses lokale Problem lösen (USB/Queue/PPD), bevor du AirPrint angehst.
Schritt 6 – CUPS für LAN freigeben (ohne Auth-Hänger)
Wir stellen sicher:
-
CUPS ist im LAN erreichbar
-
Druckjobs erfordern keine Auth
-
Admin bleibt geschützt (optional)
6.1 CUPS Sharing aktivieren
sudo cupsctl --share-printers --remote-any
sudo lpadmin -p BrotherHL2030 -o printer-is-shared=true
sudo lpadmin -p BrotherHL2030 -o auth-info-required=none
6.2 Port 631 prüfen
sudo ss -lntp | grep 631
Erwartung: LISTEN 0.0.0.0:631 (oder ähnlich).
Schritt 7 – AirPrint “bulletproof” announcen
Der entscheidende Schritt für macOS Tahoe/iOS 26:
Wir kündigen die Queue als AirPrint-fähig an, inkl. _universal-Subtype und minimalen AirPrint-TXT-Records.
- Service-Datei erstellen:
sudo tee /etc/avahi/services/airprint-brotherhl2030.service >/dev/null <<'EOF'
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">BrotherHL2030 @ %h</name>
<service>
<type>_ipp._tcp</type>
<subtype>_universal._sub._ipp._tcp</subtype>
<port>631</port>
<txt-record>txtvers=1</txt-record>
<txt-record>qtotal=1</txt-record>
<txt-record>rp=printers/BrotherHL2030</txt-record>
<!-- AirPrint essentials -->
<txt-record>pdl=application/pdf,image/urf</txt-record>
<txt-record>URF=DM3</txt-record>
<txt-record>ty=Brother HL-2030 (via CUPS)</txt-record>
<txt-record>product=(Brother HL-2030)</txt-record>
<txt-record>note=USB on Raspberry Pi</txt-record>
</service>
</service-group>
EOF
- Dienste neu starten:
sudo systemctl restart avahi-daemon
sudo systemctl restart cups
- Prüfen, ob AirPrint-Discovery korrekt ist:
avahi-browse -rt _universal._sub._ipp._tcp | sed -n '1,220p'
Erwartung: Ein Eintrag “BrotherHL2030 @ airprintpi … port 631 … rp=printers/BrotherHL2030 … pdl=…pdf…image/urf … URF=DM3”.
Schritt 8 – Doppelte Drucker-Einträge in macOS verhindern
Wenn macOS zwei Einträge anzeigt, liegt das oft daran, dass CUPS selbst zusätzlich per DNS-SD announced und Avahi auch.
Wir behalten für “bulletproof” Setup nur Avahi als AirPrint-Advert und schalten CUPS-DNS-SD-Advertising aus:
sudo sed -i 's/^BrowseLocalProtocols .*/BrowseLocalProtocols none/' /etc/cups/cupsd.conf
sudo systemctl restart cups
sudo systemctl restart avahi-daemon
Optional prüfen:
avahi-browse -rt _ipp._tcp | sed -n '1,120p'
avahi-browse -rt _universal._sub._ipp._tcp | sed -n '1,120p'
Schritt 9 – macOS Tahoe: Drucker sauber hinzufügen (ohne Cache-Fallen)
Tahoe cached Drucker-Fähigkeiten und ggf. Auth sehr aggressiv. Für “bulletproof” einmal sauber bereinigen.
9.1 Alte Drucker entfernen & Drucksystem zurücksetzen
-
Systemeinstellungen ? Drucker & Scanner
-
Alle Einträge löschen, die airprintpi/BrotherHL2030 betreffen
-
Rechtsklick in die Liste ? Drucksystem zurücksetzen…
9.2 Keychain bereinigen
-
Schlüsselbundverwaltung öffnen
-
Suche nach: airprintpi, BrotherHL2030, ipp://, ipps://, 631
-
Drucker-/IPP-Passwörter löschen (falls vorhanden)
9.3 Bonjour Cache refresh
Terminal am Mac:
sudo killall -HUP mDNSResponder
WLAN kurz aus/an.
9.4 Drucker hinzufügen
-
Systemeinstellungen ? Drucker & Scanner ? +
-
Tab Standard
-
Wähle: BrotherHL2030 @ airprintpi (Bonjour)
-
Hinzufügen
Erwartung: Keine Treiberauswahl nötig, kein Auth-Dialog, Drucker wird akzeptiert.
Schritt 10 – iOS 26: AirPrint Test
Auf iPhone/iPad (gleiches WLAN):
-
“Teilen” ? “Drucken” ? Drucker auswählen
-
BrotherHL2030 @ airprintpi sollte erscheinen
-
Testseite drucken
Verifikation & Health-Checks (für später)
Druckerstatus
lpstat -p -d
lpstat -o
AirPrint/Bonjour Sichtbarkeit
avahi-browse -rt _universal._sub._ipp._tcp | sed -n '1,220p'
CUPS Logs (bei Problemen nach einem Druckversuch)
sudo tail -n 120 /var/log/cups/error_log
Troubleshooting (kurz & zielgenau)
Problem: “Auf Authentifizierung warten” (macOS/iOS)
- Auf dem Pi sicherstellen:
sudo lpadmin -p BrotherHL2030 -o auth-info-required=none
sudo cupsctl --share-printers --remote-any
- Auf dem Mac: Drucksystem zurücksetzen + Keychain löschen + mDNSResponder reload (wie oben).
Problem: macOS zeigt “Treiber auswählen” statt AirPrint
- Prüfe, ob _universal wirklich angezeigt wird:
avahi-browse -rt _universal._sub._ipp._tcp | sed -n '1,120p'
Wenn nicht: Avahi-Servicefile prüfen (rp=printers/BrotherHL2030) und avahi-daemon neu starten.
Problem: Drucker erscheint doppelt
- CUPS-Advertising deaktivieren:
sudo sed -i 's/^BrowseLocalProtocols .*/BrowseLocalProtocols none/' /etc/cups/cupsd.conf
sudo systemctl restart cups
sudo systemctl restart avahi-daemon
Problem: Lokaler Druck vom Pi klappt nicht
Erst USB/Queue lösen:
lpinfo -v | grep -i usb
lp -d BrotherHL2030 /etc/hosts
Wenn das lokal nicht druckt, wird AirPrint das nicht “magisch” reparieren.
Ergebnis
Mit diesem Setup hast du einen stabilen AirPrint-Proxy für den Brother HL-2030:
-
Ein sauberer AirPrint-Eintrag in macOS Tahoe
-
Kein Auth-Warten
-
iOS 26 druckt direkt im WLAN
-
Rendering passiert zuverlässig auf dem Pi via brlaser
-
Die Konfiguration ist nachvollziehbar, wiederholbar und blogpost-tauglich
Weiterlesen .
Apple MacPrintopia: Mac-App macht jeden Drucker zum Airprint-Drucker für iPhone & iPad
Es gibt Apps für Mac OSX, die sind wahnsinnig umfangreich und komplex und man kann wahre Wunder mit ihnen bewirken, wenn man erstmal alle Funktionen beherrscht und dann gibt es Apps, die sind so einfach und spezifisch und sie erleichtern das Leben enorm, weil sie etwas…
Sonoya Redaktion
Apple MacAnleitung: Vom Apple iPhone & iPad aus kabellos drucken - Airprint für alle Drucker einrichten
Wie kann man eigentlich _vom Apple iPhone oder Apple iPad aus drucken_?
Sonoya Redaktion
Apple MacÜbersicht Apple Airprint-fähige Drucker mit ePrint-Unterstützung für iOS (iPhone, iPad)
Um von einem Apple iOS-Gerät - iPhone, iPad, iPod touch - aus eine _Datei direkt drucken_ zu können, benötigt das iOS-Gerät _mindestens die Firmware 4.2_ und zusätzlich einen Airprint-fähigen Drucker, d.h. einen Drucker, der das _ePrint-Protokoll_ unterstützt und im gleichen…
Sonoya Redaktion