03 Maja 2024 22:48:24
Nawigacja
· Strona Główna
· Forum

· Tomato by Shibby
· FreshTomato


Wątki na forum
Najnowsze dyskusje
· nju swiatło pytania
· konfiguracja router ...
· Asus TUF-AX3000_V2 p...
· Jaki router kupić? ...
· Szukam zaproszenia n...
· [Howto] Xpenology na...
· dodatkowe złącza s...
· RT-N18U - nie można...
· [MOD] Tomato64 (x86-64)
· Firewall nie zawsze ...
· [MOD] FreshTomato-AR...
· Optware na CIFS
· RT-AX56U - Status kl...
· [MOD] FreshTomato-MI...
· Multiroom N z wykorz...
· [S] Asus RT-AC68U E1
· [S] ASUS RT-AC68U
· Rozłączanie klient...
· serwer VPN za wan'em
· Przejscie z dyndns f...
Najpopularniejsze obecnie wątki
· konfiguracja rout... [10]
· nju swiatło pytania [4]
Ankieta
Jaki procesor posiada twój router?

Broadcom MIPSEL
Broadcom MIPSEL
36% [151 głosów]

Broadcom ARM
Broadcom ARM
52% [216 głosów]

Atheros
Atheros
5% [22 głosów]

Marvell
Marvell
1% [4 głosów]

Ralink
Ralink
1% [3 głosów]

Intel/AMD/VIA
Intel/AMD/VIA
1% [5 głosów]

Żaden z powyższych
Żaden z powyższych
4% [15 głosów]

Ogółem głosów: 416
Musisz zalogować się, aby móc zagłosować.
Rozpoczęto: 02/02/2015 09:38
Twoje IP
3.145.83.150
Zobacz wątek
OpenLinksys » :: ROUTERY :: » Pozostałe
 Drukuj wątek
Ovislink Airlive WL-1600GL Tomato DD-WRT //tomato 1.25, 1.25V, 1.27
obsy
Specjalnie. Bo problem nie dotyczy tomato samego w sobie a jego implementacji na ovisie.
Masz niepotrzebny ruter, uszkodzony czy nie - ch?tnie przygarn? go.
http://eko.one.pl - prawie wszystko o OpenWrt
http://openrouter.info
 
shibby

Cytat

Bo problem nie dotyczy tomato


dokladnie. tomato jest bezproblemowe i wogole zajebiste pod kazdym wzgledem Smile to w ovislinku problem lezy Pfft
Proxmox VE: i7-7700T, 64GB RAM, 3x2TB SSD, 1x1TB SSD, 512GB NVMe, Intel X710-DA2 SFP+
VM Router: OpenWRT 22.03.4
VM NAS: Synology DS920+
VM VPS: Debian, WWW, Home Assistant
Switch: Netgear MS510TXPP
Switch: Ubiquiti USW-Flex-mini - szt. 2
Wi-Fi: Ubiquiti U6-Lite - szt. 2
 
lgolebio
Hejka Panowie, nie wiem jak wam, ale mi wcale to tomato z VPN nie działa jeśli chodzi o JFFS, wiadomo, daje się sformatować ale to jedyna rzecz jaką można z tym zrobić, ogólnie problem jest taki sam, nie da się tam nic zapisać.

Ale..... Smile

Po wielu bojach z kompilacją udało mi się stworzyć na bazie Victeka działające tomato ND w wersji 1.25 z działającym JFFS. Ogólnie rzecz biorąc jeszcze nie testowałem, ale dało się już utworzyć folder i coś tam w nim zapisać. Tak czy siak prace nad pełnym darmowym Tomato dla tego urządzenia trwają i co rusz będę dodawał nowe rzeczy, bo zostały mi jeszcze GPIO, VLANY ale to pózniej.

Pobierajcie:
http://chomikuj.pl/lgolebio/Dokumenty/tomato-RAF-ND.trx
 
arteq
good job :]
Pozdrawiam, Artur
http://digi-led.pl Elementy elektroniczne | urz?dzenia sieciowe | us?ugi informatyczne
http://openwrt.pl - Polskie Centrum OpenWrt
o p e n (your) r o u t e r . p l
 
MariuszNM
VLAN i LED to stosunkowo prosta sprawa.
Led'y można sobie uruchomić bezpośrednio z konsoli bez kompilacji - przykładowo wpisując

nvram set led_override=1
nvram set led_diag=0
nvram set led_dmz=2
nvram commit
reboot


spowoduje to że led oznaczona jako "connected" będzie działała jako diagnostyczna a led WPS jako znacznik "dmz". Aby sprawdzić działanie z lini komend można nimi sterować np.

led dmz on
led dmz off

sprawa z tym sprzętem jest dziwna - bo sterowanie led'ami jest zanegowane czyli "on" powoduje zgaszenie a "off" zapalenie.
 
lgolebio
Ale takie rozwiązanie jest nieeleganckie, dlatego nie spocznę dopuki nie zrobię pełnego wsparcia ot of the box. Jestem uparty i choćbym miał tysiąc manuali przetrząsnąć zrobię to. I napewno nie zrobię tak jak w przypadku cybearteamu, żadnej blokady nie będzie.
 
MariuszNM
Do tego nie trzeba tysiąca manuali - wystarczy postudiować kod.
W plikach
ruter/shared/shared.h trzeba dołożyć nowy model urzadzenia np. MODEL_WL1600GL.
w pliku ruter/shared/id.c w funkcji "get_model" odkomentować i zmienić fragment

        if (hw == HW_BCM5354G) {
                if (nvram_match("boardrev", "0x11" ) ) {
                        return MODEL_WL1600GL;
                }
        }

i już mamy identyfikację urządzenia
VLAN'y wstawiamy w funkcji check_bootnv w pliku ruter/rc/init.c
a led'y definiuje się ruter/shared/led.c
 
lgolebio
@MariuszNM, masz u mnie piwo. Wielkie dzięki, bardzo mi pomogłeś.

W tej chwili pracuję już nie nad victekiem tylko nad oryginalnym kodem tomato. Jak się uda to jeszcze w tym tygodniu wszystko potestuję i umieszczę gotowy link do pobrania z częsciowym supportem dla urządzenia. Bo jeszcze wypadałoby przycisk reset zmusić do pracy.
Edytowany przez lgolebio dnia 27-11-2009 22:46
 
obsy
@lgolebio: wyślij do Johna poprawki. W ostatnim tomato są info o nowych ruterach, może i do ovisa doda standardowo.
Masz niepotrzebny ruter, uszkodzony czy nie - ch?tnie przygarn? go.
http://eko.one.pl - prawie wszystko o OpenWrt
http://openrouter.info
 
MariuszNM
przyciski definiujesz w pliku /router/rc/buttons.c
a dla led'ów jak będziesz definiował tablicę w pliku router/shared/led.c to numery portów gpio mają być ujemne wtedy będą zapalały się poprawnie.
Powodzenia
 
MariuszNM
Po przestudiowaniu kodu vikteka na WL-1600GL można z poziomu konsoli uruchomić poprawnie ledy i przyciski wpisując następujący kod:

nvram set led_override=1
nvram set led_diag=128
nvram set led_dmz=133
nvram set led_wlan=129
nvram set led_aoss=130
nvram set btn_override=1
nvram set btn_reset=131
nvram set btn_ses=132
nvram commit
reboot

po wpisaniu tego mamy:
led "connected" to dioda diagnostyczna
led "WLAN" to wlan
led "Power" to DMZ
led "WPS" to aoss
przyciski:
reset to reset a WPS to przycisk do uruchamiania komen
standardowo przycisk WPS naciskamy i liczymy mignięcie diody diagnostycznej:
0-2 włączmy/wyłączamy radio
4-6 reboot
8-10 shutdown
12-14 komenda z pod zmiennej sesx_script
Edytowany przez MariuszNM dnia 28-11-2009 08:51
 
lgolebio
Zawisłem w jednym momencie:

Cytat


make[2]: Wejście do katalogu `/home/lukasz/Pulpit/tomato/release/src/router/rc'
[rc] CC rc
rc.oSad.data.rel.ro+0xac): undefined reference to `led_main'
collect2: ld returned 1 exit status
make[2]: *** [rc] Błąd 1
make[2]: Opuszczenie katalogu `/home/lukasz/Pulpit/tomato/release/src/router/rc'
make[1]: *** [rc] Błąd 2
make[1]: Opuszczenie katalogu `/home/lukasz/Pulpit/tomato/release/src/router'
make: *** [all] Błąd 2


Plik led.c wygląda tak

Cytat


/*

Tomato Firmware
Copyright (C) 2006-2009 Jonathan Zarate

*/
#include
#include
#include
#include
#include
#include
#include
#include

#include "utils.h"
#include "shared.h"


const char *led_names[] = { "wlan", "diag", "white", "amber", "dmz", "aoss", "bridge", "mystery" };


// --- move begin ---
#if TOMATO_N

#else

void gpio_write(uint32_t bit, int en)
{
int f;
uint32_t r;

if ((f = open("/dev/gpio/control", O_RDWR)) < 0) return;
read(f, &r, sizeof(r));
r &= ~bit;
write(f, &r, sizeof(r));
close(f);

if ((f = open("/dev/gpio/outen", O_RDWR)) < 0) return;
read(f, &r, sizeof(r));
r |= bit;
write(f, &r, sizeof(r));
close(f);

if ((f = open("/dev/gpio/out", O_RDWR)) < 0) return;
read(f, &r, sizeof(r));
if (en) r |= bit;
else r &= ~bit;
write(f, &r, sizeof(r));
close(f);
}

uint32_t gpio_read(void)
{
int f;
uint32_t r;

if ((f = open("/dev/gpio/in", O_RDONLY)) < 0) return ~0;
if (read(f, &r, sizeof(r)) != sizeof(r)) r = ~0;
close(f);
return r;
}

#endif

int nvget_gpio(const char *name, int *gpio, int *inv)
{
char *p;
uint32_t n;

if (((p = nvram_get(name)) != NULL) && (*p)) {
n = strtoul(p, NULL, 0);
if ((n & 0xFFFFFF70) == 0) {
*gpio = (n & 15);
*inv = ((n & 0x80) != 0);
return 1;
}
}
return 0;
}
// --- move end ---


int led(int which, int mode)
{
// WLAN DIAG WHITE AMBER DMZ AOSS BRIDG MYST
// ----- ----- ----- ----- ----- ----- ----- -----
static int wrt54g[] = { 0, 1, 2, 3, 7, 255, 255, 255 };
static int wrtsl[] = { 255, 1, 5, 7, 0, 255, 255, 255 };
static int whrg54[] = { 2, 7, 255, 255, 255, 6, 1, 3 };
static int wbr2g54[] = { 255, -1, 255, 255, 255, -6, 255, 255 };
static int wzrg54[] = { 2, 7, 255, 255, 255, 6, 255, 255 };
static int wr850g1[] = { 7, 3, 255, 255, 255, 255, 255, 255 };
static int wr850g2[] = { 0, 1, 255, 255, 255, 255, 255, 255 };
static int wtr54gs[] = { 1, -1, 255, 255, 255, 255, 255, 255 };
static int wl1600gl[] = { -1, -0, 255, 255, -5, -2, 255, 255 };
char s[16];
int n;
int b;

if ((which < 0) || (which >= LED_COUNT)) return 0;

switch (nvram_match("led_override", "1") ? MODEL_UNKNOWN : get_model()) {
case MODEL_WRT54G:
if (check_hw_type() == HW_BCM4702) {
// G v1.x
if ((which != LED_DIAG) && (which != LED_DMZ)) return 0;
if (mode != LED_PROBE) {
if (f_read_string("/proc/sys/diag", s, sizeof(s)) > 0) {
b = (which == LED_DMZ) ? 1 : 4;
n = atoi(s);
sprintf(s, "%u", mode ? (n | b) : (n & ~b));
f_write_string("/proc/sys/diag", s, 0, 0);
}
}
return 1;
}
switch (which) {
case LED_AMBER:
case LED_WHITE:
if (!supports(SUP_WHAM_LED)) return 0;
break;
}
b = wrt54g[which];
break;
case MODEL_WTR54GS:
b = wtr54gs[which];
break;
case MODEL_WRTSL54GS:
b = wrtsl[which];
break;
case MODEL_WHRG54S:
case MODEL_WHRHPG54:
case MODEL_WHRG125:
b = whrg54[which];
break;
case MODEL_WZRG54:
case MODEL_WZRHPG54:
case MODEL_WZRRSG54:
case MODEL_WZRRSG54HP:
case MODEL_WVRG54NF:
case MODEL_WHR2A54G54:
case MODEL_WHR3AG54:
case MODEL_WL1600GL:
b = wl1600gl[which];
break;
case MODEL_WZRG108:
b = wzrg54[which];
break;
/*
case MODEL_WHR2A54G54:
if (which != LED_DIAG) return 0;
b = 7;
break;
*/
case MODEL_WBRG54:
if (which != LED_DIAG) return 0;
b = 7;
break;
case MODEL_WBR2G54:
b = wbr2g54[which];
break;
case MODEL_WR850GV1:
b = wr850g1[which];
break;
case MODEL_WR850GV2:
case MODEL_WR100:
b = wr850g2[which];
break;
case MODEL_WL500GP:
if (which != LED_DIAG) return 0;
b = -1; // power light
break;

/*
case MODEL_RT390W:
break;
*/
case MODEL_MN700:
if (which != LED_DIAG) return 0;
b = 6;
break;
default:
sprintf(s, "led_%s", led_names[which]);
if (nvget_gpio(s, &b, &n)) {
if ((mode != LED_PROBE) && (n)) mode = !mode;
goto SET;
}
return 0;
}

if (b < 0) {
if (b == -99) b = 1; // -0 substitute
else b = -b;
}
else if (mode != LED_PROBE) {
mode = !mode;
}

SET:
if (b < 16) {
if (mode != LED_PROBE) {
gpio_write(1 << b, mode);
}
return 1;
}

return 0;
}
 
MariuszNM
ten błąd masz nie z tego pliku ty pokazujesz /router/shared/led.c a linker wyskoczył Ci w /router/rc/led.c

Najprawdopodobniej nie masz tego pliku albo to jest probelm Makefile'a bo to jest błąd linkera.
Spróbuj zrobić przed kompilacją "make clean" lub "make distclean".
Edytowany przez MariuszNM dnia 28-11-2009 07:25
 
MariuszNM
Inny problem, który widze, to w tablicy definicji led nie możesz mieć wartości -0, powinieneś wstawić -99. I porawić błąd w źródłach tomato we fragmencie

if (b < 0) {
if (b == -99) b = 0; // -0 substitute  #tutaj orginalnie było 1
else b = -b;
}
else if (mode != LED_PROBE) {
mode = !mode;
}
 
lgolebio
No proszę nie spodziewałem sie takiego postępu prac. Pierwsze moje tomato z pełnym wsparciem dla tego urządzenia jest już gotowe, na szybko przetestowane więc zapewne ma i wręcz powinno mieć błędy, ale spoko, zgłaszajcie problemy i walcie jak w dym !!

Tomato 1.25
-działa JFFS (zapis, odczyt) około 636kB
-działają poprawnie diody
-vlany są już ustawione out of the box
-działa przycisk reset


OGROMNE podziękowania należą się @MariuszNM, bez jego pomocy nic bym nie wskurał !!!

ZASYSAJCIE a @obsy'ego proszę u umieszczenie go w dziale download ale jako wersję beta.
http://chomikuj.pl/lgolebio/Dokumenty/tomato-ND-1_25.trx
Edytowany przez lgolebio dnia 30-11-2009 18:26
 
obsy
Szczerze - jeszcze za wcześnie na to. Poinstalują to ludziki a potem będą krzyczeć że coś nie działa. Wytestujcie to, sprawdźcie - i zrób wersję 1.26 z tego. Jak będzie gotowiec to wstawimy.
Masz niepotrzebny ruter, uszkodzony czy nie - ch?tnie przygarn? go.
http://eko.one.pl - prawie wszystko o OpenWrt
http://openrouter.info
 
lgolebio
ZgodaSmile
 
obsy
Testujcie i podeślijcie źródła autorowi. Wtedy przy następnej wersji będzie też to dostępne w innych modach Smile
Masz niepotrzebny ruter, uszkodzony czy nie - ch?tnie przygarn? go.
http://eko.one.pl - prawie wszystko o OpenWrt
http://openrouter.info
 
MariuszNM
@lgolebio -jeżeli nie zrobi Ci to problemu, to wystaw gdzieś wybrane pliki źródłowe, które zmieniłeś. Z chęcią je przejrze i może czegoś się doszukam. Tylko wten sposób mogę coś posprawdzać bo do poniedziałku nie mam dostępu do tego ruterka.
 
kobrawerde
Fajnie by było żeby wszystkie poprawki były też na sofcie Victek-a :-) z ND ... jestem przyzwyczajony do jedo superowego Quos limit-era :-) w wersji oryginalnej Tomato raczej go nie znajde :-)....ale i tak wielkie dzięki bo jak widać niedługo wszystko będzie OK !
 
Przejdź do forum
Zaloguj
Wprowadź adres e-mail lub nazwę użytkownika

Hasło



Nie masz jeszcze konta? Zarejestruj się.

Zapomniałeś/aś hasła?
Aktualnie online
· Gości online: 21

· Użytkowników online: 0

· Łącznie użytkowników: 24,115
· Najnowszy użytkownik: Ja
Czat
Musisz się zalogować, aby opublikować wiadomość.

Adooni
26-04-2024 14:41
jaki router RMerlin nie pociagne, tomato/ openwrt tak non hilink,

tamtosiamto
23-04-2024 12:35
modem bez smilocka?

man1
22-04-2024 23:27
Czy próbował ktoś uzywac karty voice (z nolimit GB) od tmobile w modemie /routerze? Da się jakoś to zrobić? Bo u mnie neta brak. E3372 Sad

tamtosiamto
31-03-2024 12:54
Wesolego jajka wszytskim forumowiczom Grin

tamtosiamto
28-03-2024 23:24
tak, tak zgadza sie, ale ja pytam o wykluczenie noda na guest network w first set, i to nie dziala

Adooni
24-03-2024 13:16
Guest network is currently designed to allow the first set of each band (2.4G, 5G, 5G-1) available to the AiMesh node

tamtosiamto
24-03-2024 03:03
ale w 1 jest opcja do wyboru - dla calej sieci albo rutera only i wlasnie o tym mowie, ze nie dziala

Adooni
23-03-2024 16:31
w dokumencie asusa jest ze wlasnie dla 1 ma dzialac na nodach tez

tamtosiamto
23-03-2024 15:39
tak, ale nie zmienia to faktu, ze w pierwszej nie dziala wylaczanie aimesh dla goscinnej( a powinno), czyli jest jakis bug. Mam start soft, bo to dsl-ac68 ktory nie jest juz updateowany

Adooni
22-03-2024 18:07
nie, 1 wsza bedzie wszedzie trzeba 2ga zrobic dla kazdego pasma te nie sa przenoszone

71,548,837 unikalnych wizyt