51

Odp: Drukarka sieciowa na TL-MR 3420

A więc tak W skrypcie mam tak. Tak wydam z konsoli polecenia cat $FIRMWARE > $DEVICE to drukarka mieli /przesyła oprogramowanie / i mogę drukować.
Tylko nie robi tego automatycznie jak podepnę usb albo jak ją włączę. Chyba ten skrypt się nie wykonuje samoczynnie?

# change this to the location where you put the .dl file:

FIRMWARE="/usr/lib/sihpP1005.dl"
DEVICE=/dev/usb/lp0
LOGFILE=/var/log/hp

if [ "$PRODUCT" = "1d6b/2/303" -a "$ACTION" = "add" ]; then
    for i in $(seq 30); do
        if [ -c $DEVICE ]; then
            echo "$(date) : Sending firmware to printer…" > $LOGFILE
            cat $FIRMWARE > $DEVICE
            echo "$(date) : done." » $LOGFILE
            exit
        fi
        sleep 1
    done
fi

52

Odp: Drukarka sieciowa na TL-MR 3420

1d6b/2/303 <- to na pewno jest twoja drukarka?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

53

Odp: Drukarka sieciowa na TL-MR 3420

Tak Tak mi podaje w pliku wcześniej pisałeś jak odczytać
Tak jakby mi nie wykonywało hotplugina
bo nawet jak pierwszy raz po resecie TL wpiszę

root@Gargoyle:~# cat $FIRMWARE > $DEVICE

to się pluje że nie zna zmiennych i musze z konsoli wpisać

root@Gargoyle:~# FIRMWARE="/usr/lib/sihpP1005.dl"
root@Gargoyle:~# DEVICE=/dev/usb/lp0
root@Gargoyle:~# LOGFILE=/var/log/hp
może nie mam jakiejś biblioteki albo prawa trzeba nadać ?

54

Odp: Drukarka sieciowa na TL-MR 3420

No nie zna zmiennych, skąd miał by to wiedzieć co to FIRMWARE i DEVICE. Przecież specjalnie to się w pliku podaje.

Umieść sobie w pliku echo "tu jestem" i  rożnych miejscach, odłącz drukarkę, wyłącz z prądu, podłącz i zobaczysz co i gdzie się wykonuje.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

55

Odp: Drukarka sieciowa na TL-MR 3420

Jak zrestartuję TL to ładnie się opgogramowanie drukarki instaluje. plik1.txt i plik2.txt =utworzy

A jak wyłączę i włączę ti już nie  plik1.txt tylko ten utworzy

#!/bin/sh
env >> /tmp/plik1.txt
#set -e

# change this to the location where you put the .dl file:

FIRMWARE="/usr/lib/sihpP1005.dl"
DEVICE=/dev/usb/lp0
LOGFILE=/var/log/hp

echo "tu jestem"

if [ "$PRODUCT" = "3f0/3d17/100" -a "$ACTION" = "add" ]; then
    for i in $(seq 30); do
        if [ -c $DEVICE ]; then
echo "tu jestem 1"
env >> /tmp/plik2.txt
            echo "$(date) : Sending firmware to printer…" > $LOGFILE
            cat $FIRMWARE > $DEVICE
            echo "$(date) : done." » $LOGFILE
            exit
        fi
        sleep 1
    done
fi

56

Odp: Drukarka sieciowa na TL-MR 3420

3f0/3d17/100 <- znów masz inny identyfikator. To w końcu jako to jest?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

57

Odp: Drukarka sieciowa na TL-MR 3420

3f0/3d17/100  ten odczytałem i na necie znalazłemdla tej drukarki

58

Odp: Drukarka sieciowa na TL-MR 3420

A ten poprzedni czym był? Bo też się zapierałeś że jest właściwy?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

59 (edytowany przez robo1973 2013-02-23 16:31:01)

Odp: Drukarka sieciowa na TL-MR 3420

mam extra rota pen i rozdzielacz do pena

Tak jak Ci pisałem pierwszy raz po restarcie TL działa, wyłączę z zasilania drukarkę inie dizała
cat $FIRMWARE > $DEVICE z konsoli i działa

60

Odp: Drukarka sieciowa na TL-MR 3420

Więc masz inne identyfikatory, proste. Wprowadź na samym początku ten env, zachowaj jego wynik i sprawdź jakie masz i przy starcie i po restarcie drukarki.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

61 (edytowany przez robo1973 2013-02-23 18:22:06)

Odp: Drukarka sieciowa na TL-MR 3420

INTERFACE=7/1/2
PRODUCT=3f0/3d17/100
po resecie TL wykonuje ale podczas pracy TL jak wyłącze drukarkę i właczę nadal nie wysyła oprogramowania do drukarki


musze pod putty i  prześle
FIRMWARE="/usr/lib/sihpP1005.dl"
DEVICE=/dev/usb/lp0
LOGFILE=/var/log/hp

cat $FIRMWARE > $DEVICE

Jezeli byłby nr PRODUCT zły to nie wykonałby się skrypt zasaz po starcie TL

62

Odp: Drukarka sieciowa na TL-MR 3420

Odświeżam temat. Do TL mam podpiętego pena + drukarkę za pomocą HUBa. Może to coś miesza z portem USB. Dla próby zainstalowałem printserver na innym TL gdzie niemam extraroota tylko drukarka podpięta jest przpośrednio do USB.
Brakuje mi miejsca w tym TL na wgranie sihpP1005.dl. Co mogę odinstalować w TL (wgrany jest gargoyle-1.5.9.4-ar71xx-tl-mr3420-v1-squashfs-factory.bin) TL łączę się tylko po lan

63

Odp: Drukarka sieciowa na TL-MR 3420

Nic nie możesz odinstalować jeżeli sam tego nie instalowałeś.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

64 (edytowany przez robo1973 2013-02-24 11:48:36)

Odp: Drukarka sieciowa na TL-MR 3420

a mogę jakoś w FIRMWARE="/usr/lib/sihpP1005.dl"  wskazać to oprogramowanie żeby pobierał z innego TL który jest w sieci domowej pod IP
192.168.1.28

65

Odp: Drukarka sieciowa na TL-MR 3420

Ściągnij go sobie wgetem do /tmp i masz.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

66 (edytowany przez robo1973 2013-02-24 12:10:36)

Odp: Drukarka sieciowa na TL-MR 3420

Nie rozumiem już Po podpiecu drukarki w pliku: env >> /tmp/plikaaa.txt  pojawia się ładnie PRODUCT=3f0/3d17/100

A pozostałe część skryptu od if [ "$PRODUCT" = "3f0/3d17/100" -a "$ACTION" = "add" ]; then  nie chce się wykonać ?
(brak env >> /tmp/plik11.txt)

#!/bin/sh
env >> /tmp/plikaaa.txt
set -e

# change this to the location where you put the .dl file:

FIRMWARE="/tmp/sihpP1005.dl"
DEVICE=/dev/usb/lp0
LOGFILE=/var/log/hp

echo "tu jestem"

if [ "$PRODUCT" = "3f0/3d17/100" -a "$ACTION" = "add" ]; then
    for i in $(seq 30); do
        if [ -c $DEVICE ]; then
echo "tu jestem 1"
env >> /tmp/plik11.txt
            echo "$(date) : Sending firmware to printer…" > $LOGFILE
            cat $FIRMWARE > $DEVICE
            echo "$(date) : done." » $LOGFILE
            exit
        fi
        sleep 1
    done
fi

67

Odp: Drukarka sieciowa na TL-MR 3420

kmod-usb-printer masz zainstalowany w końcu? Bo bez niego nie powstanie /dev/usb/lp0, a skrypt tylko 30s czeka na pojawienie się tego interfejsu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

68

Odp: Drukarka sieciowa na TL-MR 3420

Tak zgodnie z Twoim opisem i jescze sprawdziłem
root@Gargoyle:~# opkg install kmod-usb-printer
Package kmod-usb-printer (3.3.8-1) installed in root is up to date.
root@Gargoyle:~#

69

Odp: Drukarka sieciowa na TL-MR 3420

Podłącz drukarkę. Zrób logread i zobacz czy przyznaje się do tego że moduł znalazł drukarkę. Zobacz w /dev/ czy masz to urządzenie. zwiększ sobie czas na więcej niż 30.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

70

Odp: Drukarka sieciowa na TL-MR 3420

Jan  1 01:00:40 Gargoyle kern.info kernel: [   38.680000] sierra: v.1.7.16:USB D                         river for Sierra Wireless USB modems
Jan  1 01:00:43 Gargoyle user.notice usb-modeswitch: 1-0:1.0: Manufacturer=Linux                         _3.3.8_ehci_hcd Product=Generic_Platform_EHCI_Controller Serial=ehci-platform
Jan  1 01:00:43 Gargoyle user.notice usb-modeswitch: 1-1:1.0: Manufacturer=Hewle                         tt-Packard Product=HP_LaserJet_P1005 Serial=BC12DYE
Jan  1 01:00:44 Gargoyle daemon.notice netifd: Interface 'lan' is now up


W /dev/usb  jest lp0    po restarcie TL wykona mi skrypt raz

71

Odp: Drukarka sieciowa na TL-MR 3420

Akurat nie logi od usb-modeswitch są interesujące smile

Wywal więc tego ifa ze skryptu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

72

Odp: Drukarka sieciowa na TL-MR 3420

Po wielu bojach udało się uruchomić przesyłanie oprogramowania do drukarki gdy ma się extraroota
Skrypt musi wyglądać tak:

#!/bin/sh

FIRMWARE="/usr/lib/sihpP1005.dl"
DEVICE=/dev/usb/lp0
LOGFILE=/var/log/hp

for i in $(seq 5); do
        if [ -c $DEVICE ]; then
         rm $DEVICE
         mknod $DEVICE c 180 0
         cat $FIRMWARE > $DEVICE
         kill -9 $(pidof p9100d)
         /etc/init.d/p910nd start
            exit
        fi
        sleep 1
    done

Inaczej nie chce działać. Nie wiem dlaczego nie działa if [ "$PRODUCT" = "1d6b/2/303" -a "$ACTION" = "add" ]; then  ?

Jedynym mankamentem tej metody jest to, że jak zrobię reboot TL a drukarka jest włączona to ciągle przesyła firmware.

Dziękuję kol Cezar za pomoc !!!