1 (edytowany przez dippaolo 2016-03-23 21:05:58)

Temat: Brelok USB z LCD - hack - ROZWIĄZANE

Witam

Wpadly mi w rece dwa breloki z LCD na USB. Chcialem podlaczyc jeden pod router aby wyswietlal bierzace info wedlug tego poradnika http://eko.one.pl/?p=openwrt-lcd4linux. Wyglada na to ze maja inny chipset poniewaz dostaje informacje:

root@ubuntu-gnome:/home/ubuntu-gnome/Downloads/libst2205-master# ./hackfw.sh /dev/sdc
Interactive script to hack the firmware of your keychain photo
player.
No photoframe found there.
Sorry, there doesn't seem to be a device using the ST2205U chipset
at /dev/sdc.
root@ubuntu-gnome:/home/ubuntu-gnome/Downloads/libst2205-master#

Czy sa w sieci gdzies hack'i na inne modele, lub inny sposob na ich wykorzystanie?

2

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Rozbierz i zobacz na jakim chipie jest.

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

3

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Zrobiłem foto bo za bardzo nie wiem w drugim które to chip big_smile

Pierwszy w formie breloka

Drugi w formie jajka

4

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

To coś pod czarną kropką żywicy smile

Zobacz jaki masz vid/pid na usb i poszukaj tutaj: http://picframe.spritesserver.nl/wiki/i … /Main_Page

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

5

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Ok.. więc tak... W jajku vid i pid wygląda tak: USB\VID_1908&PID_0102\5&1937ee31&0&1
Nie znalazłem żadnego info na temat tego chipa.

Ale znów brelok ma vid i pid: USB\VID_1403&PID_0001\5&1937ee31&0&1
Brelok pod windowsem zgłasza się jako "Sitronix multimedia USB Device". Na stronie która podałeś jest również Sitronix z tym samym vip i pid: http://picframe.spritesserver.nl/wiki/i … p/Sitronix z tą różnicą że mój ma 1,2"
Na dole strony jest opis jak postępować z tym modelem (nie wiem czy dokładnie z tym).

Popołudniu sprawdzę co i jak. Jak ktoś ma jakieś wskazówki to chętnie posłucham.

6

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Wczoraj trochę poczytałem i dziś się za to zabrałem. Do ramki w formie breloka nie udało mi się znaleźć hack'a, vid i pid pod Windowsem wygląda tak: USB\VID_1403&PID_0001\5&1937ee31&0&1 ale niestety, coś jest nie tak ponieważ pod Linuxem wygląda już tak: Bus 002 Device 002: ID 04f3:00a4 Elan Microelectronics Corp.

Zabrałem się za ramkę w formie jajka, tak wygląda info o podłączonym urządzeniu:

root@ubuntu-gnome:/home/ubuntu-gnome/Downloads/libst2205-master# lsusb -vs 013

Bus 003 Device 013: ID 1908:0102 GEMBIRD
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x1908 GEMBIRD
  idProduct          0x0102
  bcdDevice            2.00
  iManufacturer           2 BUILDWIN
  iProduct                3 Digital Photo Frame
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              4 DPF Mate
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0000
  (Bus Powered)

Google pokazało stronę http://forum.doozan.com/read.php?9,10026,page=1 i za pomocą jednego już przygotowanego hack'a na inne urządzenia udało mi się zhakować ramkę w formie jajka (tak mi się wydaje). Po fleszowaniu na początku pokazała się grafika z oczami i wyświetlała oczy aż nie został wciśnięty przycisk smile menu się zmieniło.

Teraz pytanie... jaki potrzebuję sterownik do tego urządzenia? st2205?

Powyższy sterownik się zainstalował jednak mam problem z instalacją lcd4linux-full, brakuje mu do instalacji libdpf:

root@Paolo:~# opkg install lcd4linux-full
ERROR: Dependency libdpf of package lcd4linux-full cannot be found, try updating your package lists

Ktoś coś pomoże? smile

7

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

lcd4linux musisz sobie skompilować, bo on domyślnie nie jest z st2205 kompilowany. Sterownik - usb-storage, to jest widoczne jako pamięć masowa.

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

8

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Ok... pójdę w nieznane... ale potrzebuję podpowiedzi. Instaluje Virtualbox pod Windowsem a dalej co mam na nim odpalić? Najpierw jakąś dystrybucję linuxa, np Ubunt a później openwrt na tym? Czy od razu da się Openwrt? I który obraz powinienem pobrać "ar71xx" czy "x86"

Mam router wdr4300 z extroot a nim:

| Gargoyle version 1.8.1       | OpenWrt Barrier Breaker branch     |
| Gargoyle revision 294a025 | OpenWrt revision r46817               |
| Built November 07, 2015   | Target  ar71xx/usb                         |

9

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Do kompilacji? Żadnego openwrt nie uruchamiasz, potrzebujesz maszynkę z linuksem, np. ubuntu. Poczytaj poradnik o kompilacji u mnie na eko.one.pl

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

10

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

dippaolo napisał/a:

Ok... pójdę w nieznane...

Poszedłem i zabłądziłem smile

A więc tak. Zainstalowałem VirtualBox, zainstalowałem Ubuntu, pobrałem lcd4linux stąd: https://lcd4linux.bulix.org/raw-attachm … VN.tar.bz2. Rozpakowałem i Zrobiłem

./configure
make

Ale coś za łatwo poszło... chyba powinienem dodać sterownik do mojej ramki - jeżeli tak to jaki i w jaki sposób?

Jak później lcd4linux zainstalować na Openwrt?

11

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Nie ma specjalnego sterownika. usb-storage jest wykorzystywany.

lcd4linux jest w repozytorium, choć akurat nie jest kompilwoany z st2205, więc czeka cię kompilacja z opcjami którymi potrzebujesz.

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

12

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Podaje się sad

Czy ktoś bardziej ogarnięty mógłby skompilować lcd4linux z usb-storage?
Mój sprzęt to WDR4300 z testowym Gargoyle PL 1.9.0.1.

13

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Z st2205 a nie z usb-storage...

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

14 (edytowany przez dippaolo 2016-03-23 21:23:35)

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Poszedłem inną drogą, łatwiejszą dla mnie ale myślę że z czasem nie będę szukał skrótów bo więcej będę wiedział smile

A więc tak - LCD działa big_smile

Usilnie chciałem podłączyć LCD pod router więc dorwałem dwa LCD z allegro które akurat były dostępne. Ten który działa u mnie można kupić tutaj http://allegro.pl/cyfrowa-ramka-do-zdje … 84492.html

Po rozpoznaniu co w nim siedzi za chip udajemy się na tą stronę w celu zhakowania naszego jajka (strona w języku DE ale jest tam link do wersji EN): http://www.vdr-portal.de/board18-vdr-ha … cking-tng/

Trochę byłem niecierpliwy i zanim dostałem odpowiedź i przerobiony firmware dla mojego jajka od użytkownika superelchi to wgrywałem kolejno przerobione flashe dla podobnych urządzeń aż trafiłem na ten co działał. Ostatecznie użyłem firmware oznaczonego jako fw_acme_8.bin

Jak zhakujemy jajko i ukażą nam się oczy jak na początku filmiku poniżej oznacza że mamy poprawny FW.

Teraz udajemy się na stronę https://forum.openwrt.org/viewtopic.php?id=34133 i pobieramy lcd4linux z wgranym sterownikiem DPF - jajko taki właśnie potrzebuje sterownik.

W moim przypadku nie mogłem wgrać biblioteki libusb bo krzyczał że już mam a lcd4linux krzyczał że nie mam ale pokombinowałem z usuwaniem ręcznym i się zainstalował lcd4linux.

Poniżej mój filmik z mojego jajka. Jak na razie podstawowy config i nie dopracowany. Teraz jak już LCD działa to mogę przejść do nauki robienia configa i zrobić taki który będzie maił to co potrzebuję.
https://www.youtube.com/watch?v=w1hviMExaL8
(nie wiem jak wstawić bezpośrednio filmik na YT więc podaje link)

15 (edytowany przez dippaolo 2016-03-27 00:16:06)

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Jakiś config powstał, trochę się wzorowałem na configu od Cezarego trochę znalazłem w sieci. Obecna wersja tak wygląda:
PunBB bbcode test

Mam problem z niektórymi Widget'ami. Uruchomione na WDR4300 i Gargoyle PL 1.9.0.1.

1. Transfer DL i UP, dane nie pokrywają się z tym co jest w rzeczywistości. Dla przykładu zarzuciłem pobieranie z prędkością 1000kB/s, Gargoyle w gui pokazuje na wykresie prostą linię - 1000kB/s, natomiast na LCD pokazuje różne wartości które się zmieniają w dużym stopniu, średnio 2 raz większe. Dodatkowo podczas pobierania UL jest jeszcze większy niż DW gdzie Gargoyle w giu pokazuje prawidłowo - znikome wartości wysyłania.
Tak wygląda config w tym miejscu:

Widget wan_dl {
    class 'Text'
    expression (netdev(wan, 'Rx_bytes', 500))/1024
    postfix 'kB/s'
    width 8
    precision 0
    align 'R'
    Foreground 'ffffff'
    Background '000000'
}

Widget wan_up {
    class 'Text'
    expression (netdev(wan, 'Tx_bytes', 500))/1024
    postfix 'kB/s'
    width 9
    precision 0
    align 'R'
    Foreground 'ffffff'
    Background '000000'
}


2. Problem z informacjami o WIFI. Nazwy sieci nie pokazuje, ale to akurat nie problem bo mogę sobie wpisać z palca ponieważ wiem jaką mam sieć i jej nie zmieniam, bardziej zależy mi na wyświetlaniu ilości podłączonych urządzeń - cały czas pokazuje 0. Konfig wygląda tak:

Widget wlan_klienci {
    class  'Text'
    expression exec ('/usr/sbin/iw dev '.wlan1.' station dump | grep "on '.wlan1.'" | wc -l',1000)
    prefix 'Podlaczonych '
    width 22
    Foreground 'ffffff'
    Background '000000'
}

W trybie debugowania czy w configu będzie wlan0, wlan1 czy wifi krzyczy bez końca: command failed: No such device (-19)

Tak wygląda cały tryb debugowania aż do momentu jak przerwałem:

root@Paolo:~# lcd4linux -Fvvv
LCD4Linux 0.11.0-SVN-1158 starting
cfg.c: Warning: key <Layout:MainLayout.Row11.Col13>: value <'tlo1'> overwritten with <'w_traffic_up'>
Dump of /etc/lcd4linux.conf:
  Display                          'DPF'
  Display:dpf.Background           '000000'
  Display:dpf.Backlight            2
  Display:dpf.Basecolor            '000000'
  Display:dpf.Driver               'DPF'
  Display:dpf.Font                 '6x8'
  Display:dpf.Foreground           'ffffff'
  Display:dpf.Orientation          3
  Display:dpf.Port                 'usb0'
  Layout                           'MainLayout'
  Layout:MainLayout.Row01.Col01    'date'
  Layout:MainLayout.Row02.Col01    'hostname'
  Layout:MainLayout.Row03.Col01    'CPU'
  Layout:MainLayout.Row03.Col11    'CPU2'
  Layout:MainLayout.Row04.Col01    'tlo'
  Layout:MainLayout.Row05.Col01    'wan_info'
  Layout:MainLayout.Row06.Col01    'tlo'
  Layout:MainLayout.Row07.Col01    'down_icon'
  Layout:MainLayout.Row07.Col02    'tlo'
  Layout:MainLayout.Row07.Col03    'wan_dl'
  Layout:MainLayout.Row07.Col12    'up_icon'
  Layout:MainLayout.Row07.Col13    'wan_up'
  Layout:MainLayout.Row08.Col01    'tlo'
  Layout:MainLayout.Row09.Col01    'wan_bar'
  Layout:MainLayout.Row10.Col01    'tlo'
  Layout:MainLayout.Row11.Col01    'w_traffic_down'
  Layout:MainLayout.Row11.Col10    'tlo1'
  Layout:MainLayout.Row11.Col11    'tlo1'
  Layout:MainLayout.Row11.Col12    'tlo1'
  Layout:MainLayout.Row11.Col13    'w_traffic_up'
  Layout:MainLayout.Row12.Col01    'tlo'
  Layout:MainLayout.Row13.Col01    'tlo'
  Layout:MainLayout.Row14.Col01    'wlan_klienci'
  Layout:MainLayout.Row15.Col01    'tlo'
  Layout:MainLayout.Row16.Col01    'uptime'
  Variables.hour                   3600000
  Variables.minute                 60000
  Variables.tack                   200
  Variables.tick                   1000
  Widget:CPU.align                 'L'
  Widget:CPU.Background            '000000'
  Widget:CPU.class                 'Text'
  Widget:CPU.expression            uname('sysname')
  Widget:CPU.Foreground            'ffffff'
  Widget:CPU.prefix                'CPU '
  Widget:CPU.update                0
  Widget:CPU.width                 11
  Widget:CPU2.align                'L'
  Widget:CPU2.Background           '000000'
  Widget:CPU2.class                'Text'
  Widget:CPU2.expression           uname('release')
  Widget:CPU2.Foreground           'ffffff'
  Widget:CPU2.prefix               ''
  Widget:CPU2.update               0
  Widget:CPU2.width                12
  Widget:date.align                'C'
  Widget:date.Background           '000000'
  Widget:date.class                'Text'
  Widget:date.expression           strftime('%a %d %b %H:%M:%S',time())
  Widget:date.Foreground           'ffffff'
  Widget:date.update               tick
  Widget:date.width                22
  Widget:down_icon.Background      '000000'
  Widget:down_icon.Bitmap.Row1     '.....|..*..|.***.|*****|..*..|..*..|..*..'
  Widget:down_icon.Bitmap.Row2     '.....|.....|..*..|.***.|*****|..*..|..*..'
  Widget:down_icon.Bitmap.Row3     '..*..|.....|.....|..*..|.***.|*****|..*..'
  Widget:down_icon.Bitmap.Row4     '..*..|..*..|.....|.....|..*..|.***.|*****'
  Widget:down_icon.Bitmap.Row5     '..*..|..*..|..*..|.....|.....|..*..|.***.'
  Widget:down_icon.Bitmap.Row6     '*****|..*..|..*..|..*..|.....|.....|..*..'
  Widget:down_icon.Bitmap.Row7     '.***.|*****|..*..|..*..|..*..|.....|.....'
  Widget:down_icon.Bitmap.Row8     '..*..|.***.|*****|..*..|..*..|..*..|.....'
  Widget:down_icon.class           'Icon'
  Widget:down_icon.Foreground      '00ff00'
  Widget:down_icon.speed           500
  Widget:hostname.align            'C'
  Widget:hostname.Background       '000000'
  Widget:hostname.class            'Text'
  Widget:hostname.expression       uname('nodename')
  Widget:hostname.Foreground       'ffffff'
  Widget:hostname.style            'bold'
  Widget:hostname.width            22
  Widget:tlo.align                 'C'
  Widget:tlo.Background            '000000'
  Widget:tlo.class                 'Text'
  Widget:tlo.expression            uname('nodename')
  Widget:tlo.Foreground            '000000'
  Widget:tlo.style                 'bold'
  Widget:tlo.width                 22
  Widget:tlo1.align                'C'
  Widget:tlo1.Background           '000000'
  Widget:tlo1.class                'Text'
  Widget:tlo1.expression           uname('nodename')
  Widget:tlo1.Foreground           '000000'
  Widget:tlo1.style                'bold'
  Widget:tlo1.width                1
  Widget:up_icon.Background        '000000'
  Widget:up_icon.Bitmap.Row1       '..*..|.***.|*****|..*..|..*..|..*..|.....'
  Widget:up_icon.Bitmap.Row2       '.***.|*****|..*..|..*..|..*..|.....|.....'
  Widget:up_icon.Bitmap.Row3       '*****|..*..|..*..|..*..|.....|.....|..*..'
  Widget:up_icon.Bitmap.Row4       '..*..|..*..|..*..|.....|.....|..*..|.***.'
  Widget:up_icon.Bitmap.Row5       '..*..|..*..|.....|.....|..*..|.***.|*****'
  Widget:up_icon.Bitmap.Row6       '..*..|.....|.....|..*..|.***.|*****|..*..'
  Widget:up_icon.Bitmap.Row7       '.....|.....|..*..|.***.|*****|..*..|..*..'
  Widget:up_icon.Bitmap.Row8       '.....|..*..|.***.|*****|..*..|..*..|..*..'
  Widget:up_icon.class             'Icon'
  Widget:up_icon.Foreground        '0000ff'
  Widget:up_icon.speed             500
  Widget:uptime.Background         '000000'
  Widget:uptime.class              'Text'
  Widget:uptime.expression         uptime('%d dni %H:%M:%S')
  Widget:uptime.Foreground         'ffffff'
  Widget:uptime.prefix             'Uptime '
  Widget:uptime.width              22
  Widget:w_traffic_down.align      'R'
  Widget:w_traffic_down.Background '000000'
  Widget:w_traffic_down.class      'Text'
  Widget:w_traffic_down.expression netdev::fast('eth0.2', 'Rx_bytes', 0)/1073741824
  Widget:w_traffic_down.Foreground '0000ff'
  Widget:w_traffic_down.postfix    'GB'
  Widget:w_traffic_down.precision  0
  Widget:w_traffic_down.prefix     'Pob:'
  Widget:w_traffic_down.update     1000
  Widget:w_traffic_down.width      9
  Widget:w_traffic_up.align        'R'
  Widget:w_traffic_up.Background   '000000'
  Widget:w_traffic_up.class        'Text'
  Widget:w_traffic_up.expression   netdev::fast('eth0.2', 'Tx_bytes', 0)/1073741824
  Widget:w_traffic_up.Foreground   '00ff00'
  Widget:w_traffic_up.postfix      'GB'
  Widget:w_traffic_up.precision    0
  Widget:w_traffic_up.prefix       'Wys:'
  Widget:w_traffic_up.update       1000
  Widget:w_traffic_up.width        9
  Widget:wan_bar.Background        '000000'
  Widget:wan_bar.BarColor0         '00ff00'
  Widget:wan_bar.BarColor1         '0000ff'
  Widget:wan_bar.class             'Bar'
  Widget:wan_bar.direction         'E'
  Widget:wan_bar.expression        netdev(wan, 'Rx_bytes', 500)/1048576
  Widget:wan_bar.expression2       netdev(wan, 'Tx_bytes', 500)/1048576
  Widget:wan_bar.Foreground        'ffffff'
  Widget:wan_bar.length            22
  Widget:wan_dl.align              'R'
  Widget:wan_dl.Background         '000000'
  Widget:wan_dl.class              'Text'
  Widget:wan_dl.expression         (netdev(wan, 'Rx_bytes', 500))/1024
  Widget:wan_dl.Foreground         'ffffff'
  Widget:wan_dl.postfix            'kB/s'
  Widget:wan_dl.precision          0
  Widget:wan_dl.width              8
  Widget:wan_info.align            'C'
  Widget:wan_info.Background       '000000'
  Widget:wan_info.class            'Text'
  Widget:wan_info.expression       netinfo::ipaddr('eth0.2')
  Widget:wan_info.Foreground       'ffffff'
  Widget:wan_info.prefix           'WAN IP: '
  Widget:wan_info.style            bold
  Widget:wan_info.width            22
  Widget:wan_up.align              'R'
  Widget:wan_up.Background         '000000'
  Widget:wan_up.class              'Text'
  Widget:wan_up.expression         (netdev(wan, 'Tx_bytes', 500))/1024
  Widget:wan_up.Foreground         'ffffff'
  Widget:wan_up.postfix            'kB/s'
  Widget:wan_up.precision          0
  Widget:wan_up.width              9
  Widget:wlan_klienci.Background   '000000'
  Widget:wlan_klienci.class        'Text'
  Widget:wlan_klienci.expression   exec ('/usr/sbin/iw dev '.wlan0.' station dump | grep "on '.wlan0.'" | wc -l',1000)
  Widget:wlan_klienci.Foreground   'ffffff'
  Widget:wlan_klienci.prefix       'Podlaczonych '
  Widget:wlan_klienci.width        22

plugin_cfg.c: Variable hour = '3.6e+06' (3.6e+06)
plugin_cfg.c: Variable minute = '60000' (60000)
plugin_cfg.c: Variable tack = '200' (200)
plugin_cfg.c: Variable tick = '1000' (1000)
lcd4linux.c: initializing driver DPF
Found AX206 DPF
Got LCD dimensions: 128x128
initializing layout 'MainLayout'
layout.c: Layout:MainLayout: migrating 'row01.col01' to 'Layer:1.row01.col01'
layout.c: Layout:MainLayout: migrating 'row02.col01' to 'Layer:1.row02.col01'
layout.c: Layout:MainLayout: migrating 'row03.col01' to 'Layer:1.row03.col01'
layout.c: Layout:MainLayout: migrating 'row03.col11' to 'Layer:1.row03.col11'
layout.c: Layout:MainLayout: migrating 'row04.col01' to 'Layer:1.row04.col01'
layout.c: Layout:MainLayout: migrating 'row05.col01' to 'Layer:1.row05.col01'
layout.c: Layout:MainLayout: migrating 'row06.col01' to 'Layer:1.row06.col01'
layout.c: Layout:MainLayout: migrating 'row07.col01' to 'Layer:1.row07.col01'
layout.c: Layout:MainLayout: migrating 'row07.col02' to 'Layer:1.row07.col02'
layout.c: Layout:MainLayout: migrating 'row07.col03' to 'Layer:1.row07.col03'
layout.c: Layout:MainLayout: migrating 'row07.col12' to 'Layer:1.row07.col12'
layout.c: Layout:MainLayout: migrating 'row07.col13' to 'Layer:1.row07.col13'
layout.c: Layout:MainLayout: migrating 'row08.col01' to 'Layer:1.row08.col01'
layout.c: Layout:MainLayout: migrating 'row09.col01' to 'Layer:1.row09.col01'
layout.c: Layout:MainLayout: migrating 'row10.col01' to 'Layer:1.row10.col01'
layout.c: Layout:MainLayout: migrating 'row11.col01' to 'Layer:1.row11.col01'
layout.c: Layout:MainLayout: migrating 'row11.col10' to 'Layer:1.row11.col10'
layout.c: Layout:MainLayout: migrating 'row11.col11' to 'Layer:1.row11.col11'
layout.c: Layout:MainLayout: migrating 'row11.col12' to 'Layer:1.row11.col12'
layout.c: Layout:MainLayout: migrating 'row11.col13' to 'Layer:1.row11.col13'
layout.c: Layout:MainLayout: migrating 'row12.col01' to 'Layer:1.row12.col01'
layout.c: Layout:MainLayout: migrating 'row13.col01' to 'Layer:1.row13.col01'
layout.c: Layout:MainLayout: migrating 'row14.col01' to 'Layer:1.row14.col01'
layout.c: Layout:MainLayout: migrating 'row15.col01' to 'Layer:1.row15.col01'
layout.c: Layout:MainLayout: migrating 'row16.col01' to 'Layer:1.row16.col01'
Creating new timer group (1000 ms)
widget 'date': Class 'text', Parent '<root>', Layer 1, Row 0, Col 0 (to 0,22)
widget 'hostname': Class 'text', Parent '<root>', Layer 1, Row 1, Col 0 (to 1,22)
Creating new timer group (0 ms)
widget 'CPU': Class 'text', Parent '<root>', Layer 1, Row 2, Col 0 (to 2,11)
widget 'CPU2': Class 'text', Parent '<root>', Layer 1, Row 2, Col 10 (to 2,22)
widget 'tlo': Class 'text', Parent '<root>', Layer 1, Row 3, Col 0 (to 3,22)
widget 'wan_info': Class 'text', Parent '<root>', Layer 1, Row 4, Col 0 (to 4,22)
widget 'tlo': Class 'text', Parent 'tlo', Layer 1, Row 5, Col 0 (to 5,22)
property.c: Notice: using default value <1> for property 'Widget:down_icon.visible'
property.c: Notice: using default value <-1> for property 'Widget:down_icon.frame'
Creating new timer group (500 ms)
widget 'down_icon': Class 'icon', Parent '<root>', Layer 1, Row 6, Col 0 (to 7,1)
widget 'tlo': Class 'text', Parent 'tlo', Layer 1, Row 6, Col 1 (to 6,23)
widget 'wan_dl': Class 'text', Parent '<root>', Layer 1, Row 6, Col 2 (to 6,10)
property.c: Notice: using default value <1> for property 'Widget:up_icon.visible'
property.c: Notice: using default value <-1> for property 'Widget:up_icon.frame'
widget 'up_icon': Class 'icon', Parent '<root>', Layer 1, Row 6, Col 11 (to 7,12)
widget 'wan_up': Class 'text', Parent '<root>', Layer 1, Row 6, Col 12 (to 6,21)
widget 'tlo': Class 'text', Parent 'tlo', Layer 1, Row 7, Col 0 (to 7,22)
widget 'wan_bar': Class 'bar', Parent '<root>', Layer 1, Row 8, Col 0 (to 8,21)
widget 'tlo': Class 'text', Parent 'tlo', Layer 1, Row 9, Col 0 (to 9,22)
widget 'w_traffic_down': Class 'text', Parent '<root>', Layer 1, Row 10, Col 0 (to 10,9)
widget 'tlo1': Class 'text', Parent '<root>', Layer 1, Row 10, Col 9 (to 10,10)
widget 'tlo1': Class 'text', Parent 'tlo1', Layer 1, Row 10, Col 10 (to 10,11)
widget 'tlo1': Class 'text', Parent 'tlo1', Layer 1, Row 10, Col 11 (to 10,12)
widget 'w_traffic_up': Class 'text', Parent '<root>', Layer 1, Row 10, Col 12 (to 10,21)
widget 'tlo': Class 'text', Parent 'tlo', Layer 1, Row 11, Col 0 (to 11,22)
widget 'tlo': Class 'text', Parent 'tlo', Layer 1, Row 12, Col 0 (to 12,22)
widget 'wlan_klienci': Class 'text', Parent '<root>', Layer 1, Row 13, Col 0 (to 13,22)
widget 'tlo': Class 'text', Parent 'tlo', Layer 1, Row 14, Col 0 (to 14,22)
widget 'uptime': Class 'text', Parent '<root>', Layer 1, Row 15, Col 0 (to 15,22)
lcd4linux.c: starting main loop
widget_bar.c: Bar 'wan_bar': new scale 0 - 0.0110191
forked process 29601 for thread exec-75c0
thread exec-75c0 starting...
command failed: No such device (-19)
Removing timer group (0 ms)
Timer #1 skipped 2147483647 interval(s) or 0 ms.
widget_bar.c: Bar 'wan_bar': new scale 0 - 0.107434
command failed: No such device (-19)
widget_bar.c: Bar 'wan_bar': new scale 0 - 0.16552
command failed: No such device (-19)
widget_bar.c: Bar 'wan_bar': new scale 0 - 0.263018
command failed: No such device (-19)
widget_bar.c: Bar 'wan_bar': new scale 0 - 1.5704
command failed: No such device (-19)
command failed: No such device (-19)
command failed: No such device (-19)
command failed: No such device (-19)
command failed: No such device (-19)
command failed: No such device (-19)
command failed: No such device (-19)
^Clcd4linux.c: got signal 2
lcd4linux.c: got signal 2
lcd4linux.c: leaving main loop
DPF: shutting down.
command failed: No such device (-19)
drv_dpf.c: closing connection

ifconfig tak u mnie wygląda:

root@Paolo:~# ifconfig
br-lan    Link encap:Ethernet  HWaddr 64:66:B3:8A:xx:xx
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:159406 errors:0 dropped:95 overruns:0 frame:0
          TX packets:256631 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:23225987 (22.1 MiB)  TX bytes:335938708 (320.3 MiB)

eth0      Link encap:Ethernet  HWaddr 64:66:B3:8A:xx:xx
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:33964599 errors:0 dropped:8 overruns:1 frame:0
          TX packets:29541870 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2842667281 (2.6 GiB)  TX bytes:1172528092 (1.0 GiB)
          Interrupt:4

eth0.1    Link encap:Ethernet  HWaddr 64:66:B3:8A:xx:xx
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:12772909 errors:0 dropped:246 overruns:0 frame:0
          TX packets:16283260 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1778290871 (1.6 GiB)  TX bytes:11930786333 (11.1 GiB)

eth0.2    Link encap:Ethernet  HWaddr 00:04:61:59:xx:xx
          inet addr:89.239.xxx.xxx  Bcast:89.239.xxx.xxx  Mask:255.255.248.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:21191597 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13258610 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:13337909059 (12.4 GiB)  TX bytes:2008476167 (1.8 GiB)

imq0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          UP RUNNING NOARP  MTU:16000  Metric:1
          RX packets:232513 errors:0 dropped:0 overruns:0 frame:0
          TX packets:232513 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:11000
          RX bytes:317990080 (303.2 MiB)  TX bytes:317990080 (303.2 MiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:481 errors:0 dropped:0 overruns:0 frame:0
          TX packets:481 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:62214 (60.7 KiB)  TX bytes:62214 (60.7 KiB)

wlan0     Link encap:Ethernet  HWaddr 64:66:B3:8A:xx:xx
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:14414 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11237 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:13775640 (13.1 MiB)  TX bytes:2446582 (2.3 MiB)

wlan1     Link encap:Ethernet  HWaddr 64:66:B3:8A:xx:xx
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2834 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:234310 (228.8 KiB)

16

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Chyba się pomyliłeś. Bo teraz odwołujesz się do zmiennej o nawzie wlan0 a takiej nie masz. Chciałeś:

'/usr/sbin/iw dev wlan0 station dump | grep ...

Zamiast

'/usr/sbin/iw dev '.wlan0.' station dump | grep "on '.wlan0.'" |

Które masz teraz.

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

17 (edytowany przez dippaolo 2016-03-27 18:29:48)

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Jak zwykle strzał w 10tke smile

wlan0 zamiast '.wlan0.'

Dałem dwa wodget'y, jeden z wlan0 i drugi z waln1 - widać podłączonych do obydwu sieci.

Teraz chciałem powiekszyć wizualnie wyświetlane wartości, dodać trochę ikonek, więc etap II to przełączanie ekranów. Znów wzorowałem się na jednym z tematów http://eko.one.pl/forum/viewtopic.php?id=4328&p=2 lecz jest problem...

Przełączanie działa z jednym ale, losowo, co któreś wyświetlenie kolejnego configa nie jest wyświetlane, pojawia się pusty ekran, zaraz po tym pustym ekranie znów pojawia się config a w konsoli widać wpis killall: lcd4linux: no process killed. Zauważyłem że tak jakby nie mógł wczytać configu ponieważ pojawia się przykładowo: 1.cfg, 2.cfg, 1.cfg, pusty, 1.cfg, 2cfg, 1.cfg, 2.cfg, pusty, 2.cfg, itd.

Wszystkie configi mają uprawnienia 600.

Skrypt do przełączania:

#!/bin/sh

x=0
while [ "$x" -le 2 ]; do
x=$((x+1))
killall lcd4linux
cp /root/lcd/$x.conf  /etc/lcd4linux.conf && lcd4linux -q
sleep 5
if [ $x -ge 2 ] ; then
x=0
fi
done

Ktoś widzi w tym jakąś nieprawidłowość?

18

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Tym razem odpowiem sam sobie.

Ponumerowałem config'i i widziałem na LCD który dokładnie się wyświetla, okazało się że co drugi się nie wyświetla i pokazuje czarny ekran.

Poznałem zasadę działania skryptu - wszystko w nim jest OK, jednak komenda killall lcd4linux powodowała że nie wczytywał się co drugi skrypt.

Zmieniłem killall lcd4linux na /etc/init.d/lcd4linux stop
oraz
...  /etc/lcd4linux.conf && lcd4linux -q na ...  /etc/lcd4linux.conf && /etc/init.d/lcd4linux start

I skrypt teraz wygląda tak:

#!/bin/sh
x=0;
while [ "$x" -le 2 ]; do
x=$((x+1))
/etc/init.d/lcd4linux stop
cp /root/lcd/$x.conf  /etc/lcd4linux.conf && /etc/init.d/lcd4linux start
sleep 5
if [ $x -ge 2 ] ; then
x=0
fi
done

Pusty ekran już się nie pokazuje, config'i wczytują się poprawnie smile

19

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

możliwe że nie zawsze działało "killall"
Można jeszcze "killall -9 lcd4linux"

Ale jak działa Ci tak jak chcesz to najważniejsze.

TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

20

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

W wolnej chwili sprawdze z Twoją propozycja, jak na razie działa i starczy zabawy, niech smiag. Obecna wersja która mnie zadowala, do obejrzenia na YT (IP celowo przesunięte): https://www.youtube.com/watch?v=qI1lT71KG7s

http://niezwyklypolczyn.pl/img/1.jpg  http://niezwyklypolczyn.pl/img/2.jpg 

Jak by ktoś chciał coś wykorzystać z moich configów to zamieszam je poniżej:

/root/lcd/1.conf

Display dpf {
    Driver     'DPF'
    Port       'usb0'
    Font       '6x8'
    Foreground 'ffffff'
    Background '000000'
    Basecolor  '000000'
    Orientation 3          # Orientation value from 0-3
    Backlight   2          # Backlight variable control
}


Widget tlo {
    class 'Text'
    expression uname('nodename')
    width 24
    align 'C'
    style 'bold'
    Background '000000'
    Foreground '000000'
}

Widget tlo1 {
    class 'Text'
    expression uname('nodename')
    width 1
    align 'C'
    style 'bold'
    Background '000000'
    Foreground '000000'
}

Widget odstep {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 10)
    align 'C'
    width 23
    style bold
    Background '000000'
    Foreground 'ffffff'
}

Widget date {
    class 'Text'
    expression strftime('%a %d %b %H:%M:%S',time())
    width 22
    align 'C'
    update tick
    Background '000000'
    Foreground 'ffff00'
}


Widget infotext0 {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 1)
    align 'C'
    width 22
    style 'bold'
    Background '000000'
    Foreground 'ff0000'
}

Widget infotext1 {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 2)
    prefix ''
    align 'C'
    width 22
    Background '008000'
    Foreground 'ffffff'
}

Widget infotext2 {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 3)
    prefix ''
    align 'C'
    width 22
    Background '008000'
    Foreground 'ffffff'
}

Widget infotext3 {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 4)
    prefix ''
    align 'C'
    width 22
    Background '008000'
    Foreground 'ffffff'
}


Widget CPU {
    class  'Text'
    expression  uname('sysname')
    prefix ''
    postfix '-'
    width  10
    align  'R'
    update 0
    Foreground 'ffffff'
    Background '008000'
}


Widget CPU2 {
    class  'Text'
    expression  uname('release')
    prefix ''
    width  12
    align  'L'
    update 0
    Foreground 'ffffff'
    Background '008000'
}




Widget RAMtext {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 6)
    align 'C'
    width 22
    style bold
    Background '000000'
    Foreground '0000ff'
}

Widget RAM {
    class  'Text'
    expression meminfo('MemTotal')/1024
    prefix 'Total:'
    postfix ''
    width  12
    precision 0
    align  'L'
    update tick
    Foreground '00ff00'
    Background '000000'
}


Widget RAMUsed {
    class  'Text'
    expression meminfo('Active')/1024
    prefix 'Used:'
    postfix ''
    width  10
    precision 0
    align  'L'
    update tick
    Foreground 'ff0000'
    Background '000000'
}


Widget wan_info {
    class 'Text'
    expression netinfo::ipaddr('eth0.2')
    prefix 'WAN IP: '
    align 'C'
    width 22
    style bold
    Background '000000'
    Foreground 'ffffff'
}


Widget loadtext {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 8)
    align 'C'
    width 22
    Background '000000'
    Foreground '0000ff'
}

Widget Load1 {
     class 'Text'
    expression loadavg(1)
    prefix ''
    postfix loadavg(1) > 1.0 ? '!' : ' '
    width 10
    precision 1
    align 'L'
    update 300
}

Widget Load5 {
    class 'Text'
    expression loadavg(3)
    prefix '/'
    postfix loadavg(3) > 1.0 ? '!' : ' '
    width 6
    precision 1
    align 'L'
    update 300
}

Widget Load15 {
    class 'Text'
    expression loadavg(3)
    prefix '/'
    postfix loadavg(3) > 1.0 ? '!' : ''
    width 7
    precision 1
    align 'L'
    update 300
}


Widget uptime {
    class 'Text'
    expression uptime('%d dni %H:%M:%S')
    width 22
    prefix 'Uptime '
    Background '000000'
    Foreground 'ffff00'
}

Layout MainLayout {
    Row01.Col01 'date'
    Row02.Col01 'infotext0'

    Row03.Col01 'infotext1'    
    Row04.Col01 'infotext2' 
    Row05.Col01 'infotext3'
    Row06.Col01 'CPU'
    Row06.Col11 'CPU2'

    Row07.Col00 'tlo'
    Row07.Col00 'odstep'

    Row08.Col01 'wan_info'

    Row09.Col00 'tlo'
    Row09.Col00 'odstep'

    Row10.Col01 'RAMtext'
    Row10.Col00 'tlo'
    Row11.Col01 'RAM'
    Row11.Col13 'RAMused'
    Row11.Col00 'tlo'
     
    Row12.Col00 'tlo'
    Row12.Col00 'odstep'

    Row13.Col00 'tlo'
    Row13.Col01 'loadtext'
    Row14.Col00 'tlo'
    Row14.Col05 'load1'
    Row14.Col09 'load5'
    Row14.Col14 'load15'

    Row15.Col00 'tlo'
    Row15.Col00 'odstep'

    Row16.Col01 'uptime'
   Layer 2 {
        
    }
    Layer 0 {
    }
}


Display 'DPF'
#Display 'Image'
Layout 'MainLayout'


Variables {
    tick 1000
    tack 200
    minute 60000
    hour 3600000
}

/root/lcd/2.conf

Display dpf {
    Driver     'DPF'
    Port       'usb0'
    Font       '6x8'
    Foreground 'ffffff'
    Background '000000'
    Basecolor  '000000'
    Orientation 3          # Orientation value from 0-3
    Backlight   2          # Backlight variable control
}

Widget tlo {
    class 'Text'
    expression uname('nodename')
    width 24
    align 'C'
    style 'bold'
    Background '000000'
    Foreground '000000'
}

Widget tlo1 {
    class 'Text'
    expression uname('nodename')
    width 1
    align 'C'
    style 'bold'
    Background '000000'
    Foreground '000000'
}

Widget odstep {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 10)
    align 'C'
    width 23
    style bold
    Background '000000'
    Foreground 'ffffff'
}


Widget date {
    class 'Text'
    expression strftime('%a %d %b %H:%M:%S',time())
    width 22
    align 'C'
    update tick
    Background '000000'
    Foreground 'ffff00'
}


Widget infotext0 {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 12)
    align 'C'
    width 22
    style 'bold'
    Background '000000'
    Foreground 'ff0000'
}



Widget wan_info {
    class 'Text'
    expression netinfo::ipaddr('eth0.2')
    prefix 'WAN IP: '
    align 'C'
    width 22
    Background '000000'
    Foreground 'ffffff'
}

Widget infotext2 {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 14)
    align 'C'
    width 22
    Background '000000'
    Foreground 'ff0000'
}

Widget down_icon {
    class 'Icon'
    speed  500
    Bitmap {
        Row1 '.....|..*..|.***.|*****|..*..|..*..|..*..'
        Row2 '.....|.....|..*..|.***.|*****|..*..|..*..'
        Row3 '..*..|.....|.....|..*..|.***.|*****|..*..'
        Row4 '..*..|..*..|.....|.....|..*..|.***.|*****'
        Row5 '..*..|..*..|..*..|.....|.....|..*..|.***.'
        Row6 '*****|..*..|..*..|..*..|.....|.....|..*..'
        Row7 '.***.|*****|..*..|..*..|..*..|.....|.....'
        Row8 '..*..|.***.|*****|..*..|..*..|..*..|.....'
    }
    Background '000000'
    Foreground '00ff00'
}
    
Widget up_icon {
    class 'Icon'
    speed  500
    Bitmap {
        Row8 '.....|..*..|.***.|*****|..*..|..*..|..*..'
        Row7 '.....|.....|..*..|.***.|*****|..*..|..*..'
        Row6 '..*..|.....|.....|..*..|.***.|*****|..*..'
        Row5 '..*..|..*..|.....|.....|..*..|.***.|*****'
        Row4 '..*..|..*..|..*..|.....|.....|..*..|.***.'
        Row3 '*****|..*..|..*..|..*..|.....|.....|..*..'
        Row2 '.***.|*****|..*..|..*..|..*..|.....|.....'
        Row1 '..*..|.***.|*****|..*..|..*..|..*..|.....'
    }
    Background '000000'
    Foreground '0000ff'
}

Widget wan_dl {
    class 'Text'
    expression (netdev(wan, 'Rx_bytes', 500))/1024
    postfix 'kB/s'
    width 8
    precision 0
    align 'R'
    update tick    
    Foreground 'ffffff'
    Background '000000'
}

Widget wan_up {
    class 'Text'
    expression (netdev(wan, 'Tx_bytes', 500))/1024
    postfix 'kB/s'
    width 9
    precision 0
    align 'R'
    update tick    
    Foreground 'ffffff'
    Background '000000'
}
Widget wan_bar {
    class 'Bar'
    expression  netdev(wan, 'Rx_bytes', 500)/1048576
    expression2 netdev(wan, 'Tx_bytes', 500)/1048576
    length 22
    direction 'E'
    Foreground 'ffffff'
    Background '000000'
    BarColor0 '00ff00'
    BarColor1 '0000ff'
}

Widget infotext3 {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 16)
    align 'C'
    width 22
    Background '000000'
    Foreground 'ff0000'
}


Widget ping1 {
    class 'Text'
    expression exec('ping -c1 www.google.pl | grep "time=" | cut -d= -f4', 1000)
    width 22
    prefix 'google.pl: '
    Background '000000'
    Foreground 'ffffff'
}

Widget ping2 {
    class 'Text'
    expression exec('ping -c1 www.wp.pl | grep "time=" | cut -d= -f4', 1000)
    width 22
    prefix '    wp.pl: '
    Background '000000'
    Foreground 'ffffff'
}


Widget infotext4 {
    class 'Text'
    expression file::readline('/root/lcd/system.txt', 18)
    align 'C'
    width 22
    Background '000000'
    Foreground 'ff0000'
}

Widget wlan_klienci2 {
    class  'Text'
    expression exec ('/usr/sbin/iw dev wlan0 station dump | grep "on wlan0" | wc -l',1000)
    prefix 'Pol. 2.4GHz:'
    width 22
    Foreground 'ffffff'
    Background '000000'
}

Widget wlan_klienci5 {
    class  'Text'
    expression exec ('/usr/sbin/iw dev wlan1 station dump | grep "on wlan1" | wc -l',1000)
    prefix '5GHz:'
    width 8
    Foreground 'ffffff'
    Background '000000'
}


Widget uptime {
    class 'Text'
    expression uptime('%d dni %H:%M:%S')
    width 22
    prefix 'Uptime '
    Background '000000'
    Foreground 'ffff00'
}



Layout MainLayout {
    Row01.Col01 'date'

    Row02.Col01 'infotext0'

    Row03.Col01 'wan_info'

    Row04.Col00 'odstep'

    Row05.Col01 'infotext2'
    Row06.Col01 'down_icon'
    Row06.Col02 'tlo'
    Row06.Col03 'wan_dl'    
    Row06.Col12 'up_icon'
    Row06.Col13 'wan_up'

    Row08.Col00 'odstep'

    Row07.Col01 'wan_bar'
    Row09.Col01 'infotext3'
    Row10.Col01 'ping1'
    Row11.Col01 'ping2'
   

    Row12.Col01 'odstep'

    Row13.Col01 'infotext4'
    Row14.Col01 'wlan_klienci2'
    Row14.Col16 'wlan_klienci5'
    Row15.Col01 'odstep'
    Row16.Col01 'uptime'
   Layer 2 {
        
    }
    Layer 0 {
    }
}


Display 'DPF'
#Display 'Image'
Layout 'MainLayout'


Variables {
    tick 1000
    tack 200
    minute 60000
    hour 3600000
}

/sbin/lcd.sh

#!/bin/sh
x=0;
while [ "$x" -le 2 ]; do
x=$((x+1))
/etc/init.d/lcd4linux stop
 
cp /root/lcd/$x.conf  /etc/lcd4linux.conf && /etc/init.d/lcd4linux start
sleep 60
if [ $x -ge 2 ] ; then
x=0
fi
done

/root/lcd/system.txt

-=* S Y S T E M *=-
TP-Link TL-WDR4300 v1
Gargoyle 1.9 by Obsy
OpenWrt CC 15.05  

PAMIEC RAM w MB 

OBCIAZENIE SYSTEMU 

----------------------

-=* N E T W O R K *=-

SPEED DOWN/UP

PING 

USERS CONNECTED- WIFI

21

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Witam ponownie.

Nie zakładam nowego a ciagne ten sam wątek bo pytanie dotyczy też LCD4linux.

Mam widget:

Widget w_traffic_up {
    class      'Text'
    expression  netdev::fast('eth0.2', 'Tx_bytes', 500)/1024
    prefix     'UP:'
    align      'R'
    precision   0
    width       9
    postfix    'kb/s
    update      1000
    Foreground '0000ff'
    Background '000000'

który zlicza ilość wysłanych danych... problem w tym że po restarcie routera zeruje się i zlicza od nowa. Jak zrobić aby nie resetował się licznik pobranych danych po resecie?

22

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Oczywiście że się resetuje bo przecież to ilość od restartu interfejsu.

Zrób sobie jakiś system zliczania transferu i z niego wyświetlaj dane a nie bezpośrednio z interfejsu.

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

23

Odp: Brelok USB z LCD - hack - ROZWIĄZANE

Nie mogę pobrać plików z projektu Phackv. Czy ktoś może mi pomóc?