Citiverse
  • [RISOLTO] Stampante Ricoh Aficio SP C240DN non configurabile

    Buongiorno di nuovo ho già provato e anche più volte, ma alla fine mi rimanda al sito http://www.linuxprinting.org per scaricare il PPD appropriato. Metto una foto del lavoro fatto, come ho detto ho provato più volte e all'ultimo passaggio che mi chiede se è la stampante di default ho risposto y e in altri casi ho cliccato invio, ma alla fine esce sempre la richiesta di andare sul sito http://www.linuxprinting.org per scaricare il PPD. Un appunto dentro la cartella RICOH il driver è per la stampante Aficio-SPC242DN non per la Aficio-SPC240DN, non sò se cambia qualcosa ma volevo specificarlo.

    Schermata del 2026-04-25 09-06-42.png

    NUOVO AGGIORNAMENTO:
    cercando nel web ho trovato questa discussione : Ricoh SP222SNw, non è la stessa stampante ma da quello che ho capito dal traduttore parlano di estrarre i driver dall'eseguibile per Windows per poi ricavare il PPD presumo. I driver per Windows li ho, visto che su Windows mi funziona, bisogna vedere se è possibile seguire questa strada.

     Printers repository
  • [RISOLTO] Stampante Ricoh Aficio SP C240DN non configurabile

    Ricoh Aficio SP C240DN su Anna/Linux Mint
    Guida alla stampa via smartphone Android

    Prerequisiti
     Anna/Linux Mint con CUPS installato
     Smartphone Android sulla stessa rete WiFi della stampante
     App Ricoh Smart Device Connector installata (Play Store)
     App Shortcut Maker installata (Play Store)
     Stampante Ricoh Aficio SP C240DN connessa alla rete (es. 192.168.*.**)
     Permessi Ricoh SDC: Impostazioni → App → Ricoh Smart Device Connector → Autorizzazioni → attiva tutto

    PARTE 1 — Configurazione del telefono Android
    1.1 Installa e aggiorna Termux
    Scarica Termux dal Play Store o F-Droid. Apri Termux e lancia:

    pkg update -y && pkg upgrade -y
    pkg install python -y
    

    1.2 Concedi accesso ai file

    termux-setup-storage
    

    Si apre il gestore file di Android: trova Termux nella lista e attiva "Consenti accesso a tutti i file". Torna su Termux.
    1.3 Crea la cartella di stampa

    mkdir -p ~/storage/shared/PrintQueue
    

    1.4 Crea lo script del server di stampa
    Prepara un file di testo sul PC con il contenuto qui sotto, invialo al telefono (es. via LocalSend), poi copia e incolla in Termux:

    cat > ~/print_server.py << 'FINE'
    import http.server, os, datetime, threading
     
    CARTELLA = os.path.expanduser("~/storage/shared/PrintQueue")
    PORTA = 9101
    server = None
     
    class GestoreStampa(http.server.BaseHTTPRequestHandler):
        def do_POST(self):
            if self.path == '/print':
                lunghezza = int(self.headers.get('Content-Length', 0))
                nome = self.headers.get('X-Filename', 'stampa_' + datetime.datetime.now().strftime('%Y%m%d_%H%M%S') + '.pdf')
                dati = self.rfile.read(lunghezza)
                percorso = os.path.join(CARTELLA, nome)
                with open(percorso, 'wb') as f:
                    f.write(dati)
                print(f"\n>>> FILE RICEVUTO: {nome}")
                self.send_response(200)
                self.end_headers()
                self.wfile.write(b'OK')
                threading.Thread(target=os._exit, args=(0,)).start()
            else:
                self.send_response(404)
                self.end_headers()
        def log_message(self, *args):
            pass
     
    http.server.HTTPServer.allow_reuse_address = True
    print("Server stampa attivo - in attesa... (timeout 1 minuto)")
    timer = threading.Timer(60, lambda: os._exit(0))
    timer.start()
    server = http.server.HTTPServer(('0.0.0.0', PORTA), GestoreStampa)
    server.serve_forever()
    FINE
    
    

    1.5 Crea la scorciatoia di avvio

    mkdir -p ~/.termux && echo "allow-external-apps = true" >> ~/.termux/termux.properties
    mkdir -p ~/.shortcuts && cat > ~/.shortcuts/AvviaStampa.sh << 'FINE'
    #!/data/data/com.termux/files/usr/bin/bash
    export PATH=/data/data/com.termux/files/usr/bin:$PATH
    export HOME=/data/data/com.termux/files/home
    python3 ~/print_server.py
    FINE
    chmod +x ~/.shortcuts/AvviaStampa.sh
    echo "alias stampa='python3 ~/print_server.py'" >> ~/.bashrc && source ~/.bashrc
    

    Chiudi completamente Termux (scorri via dal multitasking) e riaprilo.

    1.6 Aggiungi la scorciatoia alla schermata home con Shortcut Maker
     Apri Shortcut Maker
     Seleziona il toggle "Scorciatoie"
     Cerca Termux → seleziona Shortcut
     Nella schermata successiva seleziona AvviaStampa.sh
     Se vai a vedere nella Home si è creta una nuovo icona
     Un appunto, io utilizzando un cellulare xiaomi e a causa del suo launcher non posso cambiare l’icona perché è quella di termux predominante. Su altri cellulari non sò come funzioni, se proprio volessi cambiarla potrei utilizzando Nova launcher , ma a questo punto è eccessivo.
    1.7 Imposta IP fisso per il telefono
    Impostazioni → WiFi → tieni premuto sulla rete → Modifica → Impostazioni avanzate → IP Statico:
     Indirizzo IP: quello attuale del telefono (es. 192.168.1.**)
     Gateway: IP del router (es. 192.168.1.254 per Fastweb, 192.168.1.1 per altri)
     Prefisso di rete: 24
     DNS 1: IP del router
     DNS 2: 8.8.4.4

    PARTE 2 — Configurazione di Anna/Linux Mint
    2.1 Crea il backend CUPS

    sudo nano /usr/lib/cups/backend/ricohphone
    

    Incolla questo contenuto (sostituisci 192.168.1.** con l'IP del tuo telefono):

    #!/bin/bash
    PHONE_IP="192.168.1.**"
    PHONE_PORT="9101"
     
    if [ $# -eq 0 ]; then
        echo "network ricohphone://192.168.1.** \"Ricoh via Telefono\" \"Stampa tramite Android\""
        exit 0
    fi
     
    TITLE="$3"
    FILE="$6"
    TEMP=""
     
    if [ -z "$FILE" ]; then
        TEMP=$(mktemp /tmp/printjob_XXXXXX)
        cat > "$TEMP"
        FILE="$TEMP"
    fi
     
    PDF=$(mktemp /tmp/printjob_XXXXXX.pdf)
    cp "$FILE" "$PDF"
     
    FNAME=$(echo "$TITLE" | tr ' /' '__' | tr -cd '[:alnum:]._-')_$1.pdf
     
    HTTP=$(curl -s -o /dev/null -w "%{http_code}" -X POST \
        -H "Content-Type: application/pdf" \
        -H "X-Filename: ${FNAME}" \
        --data-binary "@${PDF}" \
        --connect-timeout 10 \
        "http://${PHONE_IP}:${PHONE_PORT}/print")
     
    [ -n "$TEMP" ] && rm -f "$TEMP"
    rm -f "$PDF"
     
    [ "$HTTP" = "200" ] && exit 0 || { echo "ERRORE: server non raggiungibile" >&2; exit 1; }
    
    

    Salva: Ctrl+O → Invio → Ctrl+X

    2.2 Imposta i permessi

    sudo chmod 700 /usr/lib/cups/backend/ricohphone && sudo chown root:root /usr/lib/cups/backend/ricohphone
    

    2.3 Crea la stampante in CUPS

    sudo lpadmin -p "Ricoh-via-Telefono" -E \
        -v "ricohphone://192.168.1.**" \
        -m "lsb/usr/cupsfilters/Generic-PDF_Printer-PDF.ppd" \
        -D "Ricoh SP C240DN (via telefono)" \
        -L "Stampa tramite Android"
    

    2.4 Riavvia CUPS

    sudo systemctl restart cups
    

    PARTE 3 — Come stampare
    3.1 Avvio del sistema
     Sul telefono: tap sulla scorciatoia AvviaStampa nella schermata home
     Termux si apre e il server parte automaticamente (timeout 1 minuto)
    3.2 Invio della stampa da Anna/Linux Mint
     Apri qualsiasi documento, foto o file
     File → Stampa → seleziona "Ricoh-via-Telefono" → Stampa
     Il file viene inviato automaticamente al telefono nella cartella PrintQueue
    3.3 Stampa dal telefono
    Tre modi equivalenti per stampare il file ricevuto:
     Apri Ricoh Smart Device Connector → vai alla cartella PrintQueue → seleziona il file → tocca Stampa
     Dal gestore file: vai in PrintQueue → tieni premuto sul file → Condividi → seleziona la stampante Ricoh → Stampa (metodo più veloce, senza aprire l'app per intero)
     Apri il file con qualsiasi app (Adobe, OnlyOffice, ecc.) → usa Stampa o Condividi → seleziona la stampante Ricoh
    Nota: Il server si chiude automaticamente dopo aver ricevuto il file oppure dopo 1 minuto. Non è necessario chiudere manualmente Termux.

    PARTE 4 — Risoluzione problemi
    Errore "Address already in use"
    Una sessione precedente è ancora attiva. Aspetta 1 minuto che il timeout scada, poi riprova.
    Il file non arriva sul telefono
     Verifica che il server Termux sia in ascolto (schermata nera con "Server stampa attivo")
     Verifica che il telefono abbia IP fisso e sia connesso al WiFi
     Verifica che l'IP nel backend CUPS corrisponda all'IP del telefono
    Il PDF arriva vuoto
    Verifica che nel backend CUPS sia presente cp "$FILE" "$PDF" senza la conversione ghostscript.

    ULTIMO APPUNTO: Ricordate di cambiare gli IP della stampante e del telefono e quelli del router e della rete casalinga.

     Printers repository