Routerre saját firmware készítése HOGYAN?

 ( igiboy | 2011. március 24., csütörtök - 15:31 )

Van egy WL500gp v1-es routerem.
Szeretnék rá egy teljesen saját firmware-t összerakni.
A továbbiakban nem működne routerként, hanem egy speciális dologra kellene, ahol a routolás mint olyan nem kell, és sok más egyéb sem, ami egy gyáriban benne van.
Találtam egy raklap leírást, régebben csináltam is ilyet, de most valahogy nem akar működni a dolog.
Elvileg fordítani már tudok mips-re, legalábbis van ilyen parancsom, de pl. a kernel nem fordul le rá.

Ha valaki esetleg segítene Step-by-Step, hogy mit kell tennem akkor azt megköszönném.
Akár egy értelmes oldal is jó lenne, ahol eléggé részletesen le van írva hogy mit mikor, miért, hogy kell csinálni.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Miért nem jó az OpenWRT?

Nekem bármi jó, csak értelme nincs az NTP-től a iptebles-ig kigyomlálni mindent belőle.
Web felület sem kell, vagyis majd idővel sajátja kell hogy legyen.
Ahogy mondtam eléggé messze fog állni a routertől.

Vagy ha ki akarod szorni a szamodra felesleges modulokat az image-bol, akkor
http://wiki.openwrt.org/doc/howto/build
Arra vigyazz, hogy a lapon - emlekeim szerint- nem emliti hogy "make world" elott kell neki egy "make download" is.

Az biztos hogy az openwrt nekem sok, biztos tartalmaz olyan dolgot ami nem kell, vagy később galibát okoz. (Még az is lehet hogy ez nem igaz, akkor gyorsan megleszek.)
Utánnanézek a build-os megoldásnak. Hátha ez le fog már fordulni rendesen.

Azt nem ketlem, hogy a gyari openwrt image sok lesz neked, viszont a sajat buildben gyakorlatilag barmilyen modult kiszorhatsz a kernelbol (meg a wifi drivereket is, ha arra van szukseged).
en egy nslu2-re (8mb flash) takoltam ossze egy sajat buildet, ugy hogy maradt meg 4 ~ 4,5 mb hely a belso memoria , libmysql+libxml2+sajat 1-wire logger alkamazas mellett!

Hasonló itt is a dolog, csak nem 1wire, de hasonló.
De a routeres dolgoknak minden részét ki akarom szedni, mert semmilyen esetben sem szeretném hogy galibát okozzon.
Az sem kizárt hogy a hw-en is lesz 1-2 módosítás, ha tudok használni GPIO lábakat, pl. a ledekét.

Nem egy másik router firmware-t keresek. Egyszerüen annyit kell hekkelnem egy ilyenen hogy nem éri meg.
Most DD-WRT van rajta, arra jó hogy próbálgassak ezt azt, de nem igy képzelem el a végeredményt.

szerintem gondolj át pár dolgot:
- fejleszteni akarsz, rendben van, van rá 1-2 éved, megvan hozzá a megfelelő linux kernel ismeretd, megvan hozza router boot loader ismereted ?
- át akarod alakítani fízikailag a routert ? (egy soros port mindenképpen kell arra az esetre ha brickesitted a routert)
- te akarod megírni az összes scriptet ami kell a mükődéshez (boot, hálózat, wifi, stb) ?
- minden programot egyedileg akarsz fordítani hozzá ?

ha nem akkor:
- tölts le egy OpenWRT forrást
- 1xübb esetben buildimage-vel szedd ki a számodra nem fontos csomagokat
- vagy fordítsd újra SDK-ból, saját egyedik kernellel, csomagokkal, stb, viszont ha itt valamit elrontasz akkor csak soros konzolról vagy JTAG-ról fogod tudni helyre rakni, ahhoz pedig forrasztani kell.

X86-ra már nem egyszer csináltam saját linux-ot, pár MB-ra. Ott is meg kell irnom az összes scriptet, ami pl. a hálózatot piszkálja. Ez legyen a legnagyobb bajom.
Sorosport természetesen van.
Mondjuk ugy hogy lehetne ez devboard is, csak ez van sokkal olcsóbban, számszerüleg ingyen. :)
Tisztában vagyok a veszélyekkel.
Régebben működött is ilyen build, de most nem akar egyszerüen menni. Biztos én hagyok ki valami lépést, de az is lehet hogy valami olyan marad ki ami valami verziómodosítás után kell.

A kernelt és rootfs-t hálózatból huznám fel, itt már elbukik az openwrt. Nem flashelni akarom 600x. Vagyis nem bukik el, ha saját build és nem csak a flash.trx lesz a végtermék.
Majd idővel az is jó lenne.

Igen fejleszteni akarok... 1-2 év, ne röhögtess. Legutóbb ugyanezen a routeren 1-2 hét volt, a 0-ról, mivel egy házit be kellett adni. (kb. 2 éve, csak ez a tudás kikopott)

Az utolsót próbálkoznék, a broadcom-os toolchain már elvileg megvan és működik, de pl kernelt próbáltam fordítani és elhasalt erősen.
Próbálkoztam gyári ilyen-olyan kész fordítható csomagokkal, azok sem akarnak menni.

Azt nem tudom hogy hol keressem a hibát... a fordító rossz?, a kernel nem tetszik neki? esetleg a kernel beállítása? hol lehet a hiba?

Több leírás szerint is gyakorlatoztam pár éjszakát a dolgon, de a legtöbb annyira régi hogy csak tippelgetni lehet amikor valaki csak leírja a parancsot, és azt hogy itt két pipát vegyél ki, hogy mit is akarhat.

ha openwrt-rol beszelsz (nem fordul, stb), akkor nekem 2 dolog oldotta meg.
1, feeds update&install
2, make download

most igy forditok image-t (svn, + sajat package bemasolva a megfelelo mappaba)
make clean
make dirclean
make menuconfig
./scripts/feeds update -a
./scripts/feeds install -a
make download
make world

kieg1: SDK-t nekem nem sikerult mukodesre birnom. Svnbol forditottam+kicsomagoltam > Nem mukodott. Toolchaint hozzaadva > Nem mukodott. Aztan az altalam irt packaget beleraktam egybol az svn dirbe, es menuconfigban bejeloltem.
Ha lefut egy alap build, es csak packaget akarsz ujraforgatni, akkor a leiras alapjan meg tudod csinalni make packages/mypackage-compile V=99

Meglesz az esti program. Köszi!

Úgy néz ki ez jó választás.
Lefordul rendesen. Lehet elég is lesz a céljaimnak.

Csak én vagyok kiváncsi, hogy mit akarsz építeni belőle?

Nehéz lenne elmagyarázni, mert kell hozzá a másik dologhoz is legalább egy kicsit érteni vagy legalább hallani róla.
Lényegében van egy USB-s és sorosporti eszköz aminek ez lenne az ethernet/wireless bridge-je.

Jó, de mi lenne a célja az egész holminak? Gondolom nem öncélúan akarsz USB-serial-t Ethernetre bridgelni :-)

Miért azt nem szabad? :)
Van nem 1 dolog amire kellene.
Van 1-2 sajátfejlesztésü elektronikám ami jó lenne ha ethernetes lenne.
Esetleg egy UPS-ethernet cucc, SNMP-vel, és még sok hasonló dolog.
De egyik sem router, az biztos.