Pozdrav,
Pratim već dugo temu i povremeno se ubacim. Ovih dana sam dobio zanimljivu ideju. Do sad nisam vidio na temi da je netko modificirao hardware od routera.
Prvobitna ideja je bila sljedeća. Pošto ne koristim većinu ledica. VOIP, Phone1 Phone2 ... ..
pala mi je na pamet ideja, zašto nebi spojio neki tranzistor na taj izlaz umjesto ledice, pa onda relej i palio gasio nešto s routerom. To bi bio definitivno najjeftiniji način za takvo nešto (upravljanje nečim preko interneta). Rastavio sam router i pregledo malo komponente, našao sam da su ledice spojene na serial input / parallel output shift registar.
Sad tu nastaje problem, neznam kako promjeniti stanje tih izlaza. Tj sustav me ne pušta da ih koristim kao GPIO. NPR za ledicu Line.
root@OpenWrt:/sys/class/gpio# echo 222 > export
ash: write error: Device or resource busy
Pretpostavljam da je to na neki način rezerviran izlaz za ledice i ne može se koristiti za GPIO. Kako ih osloboditi?
Registar ima 8 izlaza i ima 8 ledica. Ako izuzmemo Power jer je ona vjerojatno spojena direktno na napajanje i LAN1-4 koje su vjerojatno direktno spojene mrežni kontroler ili tako nešto.
Ovako su ledice spojene na registar
Osim ovog registra, postoji mjesto za još jedan registar, ali nije zalemljen (kao ni paralelna neka smd komponenta, budući je spojena između mase i VCC skoro sam siguran da se radi o kondenzatoru). Postavlja se pitanje kad bi nabavio taj registar i zalemio ga, što bi još nužno morao napraviti da i njega iskoristim, ako je uopće moguće. (već sam naručio preko e-baya par komada takvih za 10-ak kn )
Zatim dok sam istraživao malo po internetu, skužio sam da ljudi na drugim routerima koriste GPIO izlaze da spoje SD ili MMC karticu, na router. To je također najjeftiniji način da se proširi memorija routera, ako koristite usb za nešto drugo, a ne želite još i hub kupovati.
Zanima me na kraju jel ima netko tko se kuži u ovaj OS, da mi malo pripomogne da probamo tu modifikaciju. I da me malo uputi koji je najelegantniji način da se pristupi GPIO-u iz OS-a.
EDIT :
Identificirao sam 11 GPIO pina, sad još moram još saznati adrese pojedinih pinova.
EDIT :
Nema 11 GPIO pinova već 10, dva su isti pin.
pokušao sam zalemiti microsd karticu, tj zalemio sam microsd > SD adapter preko nekih žica na ulaze, napajanje i uzemljenje. i sad sam zapeo. Nešt ne radi.
Code:
[ 64.560000] gpio-mmc: Failed to request mmc_spi module.
[ 64.568000] mmc_spi spi32766.0: ASSUMING 3.2-3.4 V slot power
[ 64.572000] mmc_spi spi32766.0: SD/MMC host mmc0, no DMA, no WP, no poweroff
[ 64.580000] gpio-mmc: MMC-Card "default" attached to GPIO pins di=23, do=16, clk=17, cs=24
[ 64.616000] mmc_spi spi32766.0: setup: unsupported mode bits 4
[ 64.620000] mmc_spi spi32766.0: can't change chip-select polarity
[ 147.680000] gpio-mmc: GPIO based MMC-Card "default" removed
[ 147.784000] gpio-mmc: Failed to request mmc_spi module.
[ 147.792000] mmc_spi spi32765.0: ASSUMING 3.2-3.4 V slot power
[ 147.800000] mmc_spi spi32765.0: SD/MMC host mmc0, no DMA, no WP, no poweroff
[ 147.804000] gpio-mmc: MMC-Card "default" attached to GPIO pins di=23, do=16, clk=17, cs=27
[ 147.828000] mmc_spi spi32765.0: setup: unsupported mode bits 4
[ 147.832000] mmc_spi spi32765.0: can't change chip-select polarity
Nastavit ću kad budem imao opet nešto vremena. Ako je netko radio već to ili zna u čemu je problem, molio bih da da mi pomogne.
Inače obični Digitalni ulazi izlazi rade

, samo trebam sad neki hardver složiti da može uklopit malo veće struje. Registar može dati do 35mA struje po izlazu a ukupno 75mA kolko sam vidio. Ja se ne spajam na registar ali pretpostavljam da je red veličine struje procesora nešto malo manji možda 4 mA.