Routerhacking - Deel 2 Vorige deel Overzicht

Pagina: 1 ... 9 10 Laatste
Acties:
  • 59.948 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
Ik snap ook niet echt waar de websites van Sprite_TM heen zijn.

Ik heb wel foto's voor je van een mod die gedaan is, maar de specifieke waardes weet ik niet zo.
http://got.sa007.nl/router/

Acties:
  • 0 Henk 'm!

  • stereohead
  • Registratie: April 2006
  • Nu online
Verwijderd schreef op maandag 16 juli 2007 @ 20:42:
Ik wilde USB poorten aan mij Edimax toevoegen via http://sprite.student.utw...en/lb000021/usb_tutorial/

helaas werkt deze link niet meer. Is de informatie nog op een andere plek te vinden?
btw, die link doet het nu wel weer :P

Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

Mja, het ITBE, de netwerkbeheerder alhier, dacht dat ik op mijn Linux-server een Windows-attachment geopend had en dus een trojan had en meewerkte aan een dDoS, en sloten me daarom af :( Het is nu opgelost.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

  • MindBender
  • Registratie: Juni 2001
  • Laatst online: 12-09 14:29

MindBender

Bite my shiny metal ass!

Mijn Sweex draait nu op 200MHz ipv. 175MHz. Ik weet niet of iemand me al voor is geweest, maar ik had even geen zin om een paar maanden aan gemiste posts terug te lezen.

Anyway, de interne PLL van de ADM5120 kan eenvroudig anders worden geconfigureerd. Bij power-up worden de lijnen ADDR_3 en ADDR_4 gesampled. De gelezen waarde wordt gebruikt om de multiplier van de PLL in te stellen. Door middel van zg. weak pull-ups kan deze waarde beïnvloed worden, oftewel:

Als je R88 verwijdert en deze op de lege plaats R89 soldeert, loopt ook jouw Sweexje op 200MHz. Overclocking rulez ;) (jaja, ook voor routerz)

Owja; En hij wordt ook nog warmer dan dat hij op 175MHz al werd.

Acties:
  • 0 Henk 'm!

Verwijderd

Ik krijg als het goed is binnenkort een sweex lb00021 :)
nu wil ik dus ook een datakabel kopen maar dat model is niet meer te koop
heeft iemand een tip voor mij :)

EDIT:
is dit de goede oscillator ? voor de USB mod :)
Link

[ Voor 27% gewijzigd door Verwijderd op 31-07-2007 17:56 ]


Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
bram_wouda, neem 1 van de andere modellen, er is er 1 met een hele waslijst aan siemens types, heb ik hier ook liggen, werkt pima.

Acties:
  • 0 Henk 'm!

  • veldmuis
  • Registratie: Mei 2001
  • Niet online
Iemand al ervaring met dit: http://www.sunspot.co.uk/Projects/SWEEX/beeper.html
Een simpele WAV-player via een LED-lijn. Inventief, dat wel!

Acties:
  • 0 Henk 'm!

Verwijderd

Ik heb zelf een Asus WL500g deluxe en daar is heel wat leuks mee te doen. Ik heb de firmware van Oleg erin zitten zodat ik ssh, samba en de packetmanager heb kunnen installen. Het leek me leuk om een SVN servertje te maken maar helaas draait Apache niet, segmentation fault. Met 32MB aan RAM heb ik waarschijnlijk te weinig.

Nu zat ik te denken om ook een Sweex routertje te kopen en om hier vervolgens Busybox op te laten draaien. Kan iemand mij vertellen of Apache wel wil draaien zodra ik Busybox in die Sweex gooi?

Acties:
  • 0 Henk 'm!

Verwijderd

Je kan ook meer geheugen in de asus solderen (als je de handigheid in SMD hebt). Er zijn zelfs mensen die er 128 mB in hebben gebakken.

http://begunje.dyndns.org...gx-ram-upgrade/index.html

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op vrijdag 03 augustus 2007 @ 14:55:
Ik heb zelf een Asus WL500g deluxe en daar is heel wat leuks mee te doen. Ik heb de firmware van Oleg erin zitten zodat ik ssh, samba en de packetmanager heb kunnen installen. Het leek me leuk om een SVN servertje te maken maar helaas draait Apache niet, segmentation fault. Met 32MB aan RAM heb ik waarschijnlijk te weinig.

Nu zat ik te denken om ook een Sweex routertje te kopen en om hier vervolgens Busybox op te laten draaien. Kan iemand mij vertellen of Apache wel wil draaien zodra ik Busybox in die Sweex gooi?
Volgens mij is er ook een light-versie van apache ;) light-httpd geloof ik

Acties:
  • 0 Henk 'm!

  • veldmuis
  • Registratie: Mei 2001
  • Niet online
Verwijderd schreef op zaterdag 04 augustus 2007 @ 13:27:
[...]


Volgens mij is er ook een light-versie van apache ;) light-httpd geloof ik
lighthttpd is geen Apache, maar een httpd, nét als Apache!

Acties:
  • 0 Henk 'm!

Verwijderd

veldmuis schreef op zaterdag 04 augustus 2007 @ 20:27:
[...]

lighthttpd is geen Apache, maar een httpd, nét als Apache!
Dat dus :9

Acties:
  • 0 Henk 'm!

Verwijderd

lighthttpd is een single threaded server dacht ik, daarom zal SVN er niet op kunnen draaien.
Verwijderd schreef op zaterdag 04 augustus 2007 @ 12:38:
Je kan ook meer geheugen in de asus solderen (als je de handigheid in SMD hebt). Er zijn zelfs mensen die er 128 mB in hebben gebakken.

http://begunje.dyndns.org...gx-ram-upgrade/index.html
Bedankt voor de tip! Had ik helemaal nog niet aan gedacht. SMD solderen is geen probleem dat heb ik op mn TI opleiding vaak gedaan.

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
Btw, de man in dat stukje heeft het op een keramisch electisch fornhuis de chips gedesoldeerd.
Heb je dat niet (inductie/gas werkt niet voor zoiets) kan je een ouderwetse niet-stoom strijkijzer pakken of een verffohn (werkt best aardig als low-budget/tech desoldeertool)

Acties:
  • 0 Henk 'm!

Verwijderd

Ik doe nu zelf alles met een reflow setje maar vroeger sneed ik met een scalpel alle pinnen van de chip los. Daarna de pinnen apart van de print solderen met een kleine bout. Heb je die niet kan je de punt "kleiner" maken door er een dunne koperdraad om de soldeerpunt te wikkelen. Een fornuis heeft zo zijn risiko's. met een beetje pech valt er meer van de print af. Idem met een verfbrander.

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
matchies: als je die how-to las zie je dat hij dat alleen gebruikt om de 'nieuwe' chips van de sd-ram af te halen.

De oude eraf halen doet hij op dezelfde manier, met een mesje en met litse/kleine punt de rest weghalen.

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op zondag 05 augustus 2007 @ 13:10:
lighthttpd is een single threaded server dacht ik, daarom zal SVN er niet op kunnen draaien.
Dan mag jij zeggen waat dat staat:
http://en.wikipedia.org/wiki/Lighttpd

Acties:
  • 0 Henk 'm!

  • Siebz0r
  • Registratie: Juli 2007
  • Laatst online: 22-06-2018

Siebz0r

Got root?

ik heb dus wel zo'een max232 bordje gemaakt n.a.v. [link]

op mijn router (sitecom DC-202 V3) zit iig een 3.33V en een GND, deze staan aangesloten op de max232 als Vcc en GND zoals het diagram op bovenstaande link. de RxD en de TxD heb ik aan elkaar aangesloten (ff testen of ie werkt) maar als ik verbinding maak met hypertherminal dan gaat men CPU verbruik naar 100% maar als ik wat typ ofzo verschijnt 't niet op 't scherm :/
iemand een idee wat ik fout doe?

Acties:
  • 0 Henk 'm!

  • StapelPanda
  • Registratie: Februari 2005
  • Laatst online: 12-09 00:56

StapelPanda

PB0MV

Siebz0r schreef op donderdag 09 augustus 2007 @ 23:57:
ik heb dus wel zo'een max232 bordje gemaakt n.a.v. [link]

op mijn router (sitecom DC-202 V3) zit iig een 3.33V en een GND, deze staan aangesloten op de max232 als Vcc en GND zoals het diagram op bovenstaande link. de RxD en de TxD heb ik aan elkaar aangesloten (ff testen of ie werkt) maar als ik verbinding maak met hypertherminal dan gaat men CPU verbruik naar 100% maar als ik wat typ ofzo verschijnt 't niet op 't scherm :/
iemand een idee wat ik fout doe?
Heb je de seriele connector goed als om gehouden? dus alles al nog een keer gecheckd?

Acties:
  • 0 Henk 'm!

  • Siebz0r
  • Registratie: Juli 2007
  • Laatst online: 22-06-2018

Siebz0r

Got root?

Gieltjev schreef op vrijdag 10 augustus 2007 @ 17:55:
[...]

Heb je de seriele connector goed als om gehouden? dus alles al nog een keer gecheckd?
Jup, alles is aangesloten zoals op het diagram aangegeven :/

ik begin het idee toch te krijgen dat ik de verkeerde ic heb gebruikt, ik gebruik een MAX232N TIS [conradlink]
hier zit volgens mij geen verschil in?

Acties:
  • 0 Henk 'm!

Verwijderd

Mijn USB poort werkt nu ook :)
Ik had alles gesoldeert maar het werkte niet

deze melding kreeg ik aldoor:

<4>Retry in 1 sec.
Retry in 1 sec.
request_module[block-major-8]: Root fs not mounted
VFS: Cannot open root device "sda1" or 08:01
Please append a correct "root=" boot option

Toen heb ik de 1k weerstand bij de oscillator eruit gehaald en r16 doorverbonden, en toen deed hij het :)

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op zaterdag 04 augustus 2007 @ 12:38:
Je kan ook meer geheugen in de asus solderen (als je de handigheid in SMD hebt). Er zijn zelfs mensen die er 128 mB in hebben gebakken.

http://begunje.dyndns.org...gx-ram-upgrade/index.html
de sweex heeft 16 megabyte ram en kan niet meer aan (volgens datasheet max 128 mbit)
dus dit gaat voor de sweex niet op

  • gpolder
  • Registratie: Januari 2002
  • Laatst online: 11-09 06:54
ik heb wat info bij elkaar geharkt over mijn projectje, waar ik een router gebruik als GPS logger op mijn fiets (velomobiel). Maar kan natuurlijk ook prima in een auto, of rugzak gebruikt worden.
Het is een eerste aanzet, want ik wil nog display en andere sensoren toevoegen.

hier staat het:
http://www.agri-vision.nl...m_content&task=view&id=35

Gerrit.

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Waarom zou je daar een router voor gebruiken? Iedere 8 bit microcontroller (atmega/pic) kan het ook makkelijk af. Een microcontroller met een paar componenten (als kristal enzo) is veel kleiner, veel goedkoper, 't gebruikt veel minder stroom en het is waarschijnlijk qua programmeren ook nog makkelijker. (Maar dat laatste ligt eraan waar je ervaring ligt).

  • gpolder
  • Registratie: Januari 2002
  • Laatst online: 11-09 06:54
furby-killer schreef op donderdag 13 september 2007 @ 15:28:
Waarom zou je daar een router voor gebruiken?
1- alles loggen kost veel geheugen, ik had eerst iets op een basicstamp, maar daar kon ik nauwelijks data op kwijt. Nu kan ik maar doorgaan, koop desnoods een stick van 2Gb.

2- deze router koste me 10 euro tweedehands.

3- ik kan en wil er nog veel meer mee doen.

4- het is gewoon fun om een fiets te hebben met een ip adres!

een nadeel heeft het wel, het trekt namelijk tamelijk veel stroom, maar dat doet die GPS ook, en mijn verlichting ook, dus een dikke accu had ik toch al nodig.
(router +GPS ongeveer 400mA bij 12V, zeg maar twee fietslampjes)

  • t1mmy
  • Registratie: Mei 2006
  • Laatst online: 14-08 16:39
Hoi,

Is er ergens een duidelijk (liefst nederlandse) tutorial hoe ik hiervan een mp3 servert van kan bakken? En dan ook met bijhoorende firmware enzo..?

  • Puch-Maxi
  • Registratie: December 2003
  • Laatst online: 12-09 23:54
Zover ik de topic's bijgehouden heb is het nog niet mogelijk mp3's af te spelen op dergelijke routers ivm dat USB geluidskaarten een syncrome verbinding nodig hebben, door een bug in de kernel is dit nu (nog) niet mogelijk, het decoden van mp3's zal wel makkelijk kunnen (snel genoeg)
Wel heeft Sunspot een soort "Beeper" op zijn router gezet hiermee kun je spraak/muziek wel emuleren denk aan de pc speaker sound (dos games) demoscene achtig ;) Correct me if I'm wrong

My favorite programming language is solder.


  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
Puch-Maxi, dit is alleen het geval op de sweex routers en de andere die dezelfde chipset hebben.

Een asus wl500g heeft bijvoorbeeld geen enkel probleem.

  • Puch-Maxi
  • Registratie: December 2003
  • Laatst online: 12-09 23:54
mja das waar, dat had ik even moeten vermelden... thanks :)

My favorite programming language is solder.


Acties:
  • 0 Henk 'm!

  • D-Three
  • Registratie: Oktober 2001
  • Laatst online: 12-09 19:34
Verwijderd schreef op zaterdag 04 augustus 2007 @ 12:38:
Je kan ook meer geheugen in de asus solderen (als je de handigheid in SMD hebt). Er zijn zelfs mensen die er 128 mB in hebben gebakken.

http://begunje.dyndns.org...gx-ram-upgrade/index.html
Mijn router werkt niet meer zoals het zou moeten dus ben ik even aan het uitkijken voor een nieuwe. De prijs van een WL-500G Premium lijkt me wel redelijk. Maar nu zie ik dat ze het in die link hebben over de 500GX en niet over de 500G?? Of maakt dat niks uit?

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
Zal waarschijnlijk geen enkel probleem opleveren, wel controleren dat er eenzelfde geheugenchip in zit.

Acties:
  • 0 Henk 'm!

  • ice-T106
  • Registratie: Oktober 2001
  • Laatst online: 14:11
Voor de mensen die een router willen gebruiken om mp3's te streamen:
http://www.phrozen.org/fonera.html
Ze maken hier gebruik van een Fon router en een hardware mp3 decoder chip. Misschien is dit op de sweex ook goed mogelijk, geen USB voor nodig in ieder geval.

11.635 Wp Solar edge. 7kW Lucht-water, 5kW Daikin Lucht-Lucht, lucht WTW, VW Passat GTE, Home Assistant


Acties:
  • 0 Henk 'm!

  • Mr_gadget
  • Registratie: Juni 2004
  • Nu online

Mr_gadget

C8H10N4O2 powered

Dit topic is een beetje dood geloof ik..

Ik zou graag willen weten of een routertje zo'n bordje zou kunnen aansturen. Of heeft hij daar te weinig power voor? Het is in principe toch gewoon een linux pc?

Acties:
  • 0 Henk 'm!

  • Phalox
  • Registratie: Oktober 2006
  • Laatst online: 06-04 13:23

Phalox

Solar Powerrrd

Te weinig power kan je altijd fixen door de stroom van een andere adapter af te tappen..
Maar hier zit het probleem in de driver verwerken in de linux kernel die op je router staat... wat eenvoudiger zou zijn is een seriele versie volgens mij :)


Suc6 ermee !

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
80 euro? damn...

Bouw iets zeer vergelijkbaars voor een tiende daarvan. (letterlijk)

Maar denk dat dat op een router geen enkel probleem is.

Acties:
  • 0 Henk 'm!

  • Buzz-01
  • Registratie: Juni 2002
  • Laatst online: 12-09 16:21
Inderdaad, zelfbouw is eigenlijk een betere optie... Ik heb in dit topic en op Sunspot's website veel opgestoken. Heb zo'n Sweex omgebouwd met wat optocouplers en kan nu via een (vrij basic) webinterface diverse apparaten schakelen. Als je een beetje handig bent met elektronica en zo'n router goed onder handen neemt, dan is die uitbreidingskaart niet eens nodig!

Uit ervaring kan ik je zeggen dat de USB-support in de huidige firmwares niet echt geweldig is. Basic zaken werken (USB-stick, waarschijnlijk werkt een printer ook nog wel), maar verwacht er verder geen wonderen van! Ik heb eens een USB HDD naast mijn USB-stick willen gebruiken, maar dat verliep niet vlekkeloos. Ik moest eerst de router opstarten zonder aangesloten USB HDD, vervolgens de USB HDD aanzetten en daarna pas aansluiten, want anders waren daarna zowel de USB-stick als de HDD niet meer leesbaar. Ik heb het idee van de USB HDD dus maar laten varen...

Kortom; als je een beetje handig bent, of iets minder handig bent maar wel lef hebt, ben je beter af door die router gewoon wat aan te passen, scheelt je $80,- en de kans is groter dat het gaat werken! :Y)

Flickr


Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
Mjah, ook als je met usb wil werken heb je zoiets voor minder dan een tientje gebouwd.

Met een atmega32, avr-usb, 3 weerstanden, 2 zeners, stuk of 3 condesnators en een 12mhz kristal heb je al zoiets.
Dan heb je:
- 8 analoge ingangen
- 22 gpio (in en output kan allebei)

Wat dan kost:
~6 euro voor de atmega32
~50 cent voor een kristal
en nog ongeveer een euro aan overige meuk.

Dat is dus erg weining, en heb je meer mogelijkheden dan je ding van 80 euro, want je kan die atmega ook inprogrammeren voor PWM, timers, I2, SPI, etc.

Acties:
  • 0 Henk 'm!

  • Mr_gadget
  • Registratie: Juni 2004
  • Nu online

Mr_gadget

C8H10N4O2 powered

Ik heb het bordje al ;) Maar er zitten ook analoge ingangen op en je kan er een aantal standaard sensoren op aansluiten. Je zit echter wel vast aan een pc en met een router zou hij makkelijk mobiel gemaakt kunnen worden met paar accu's.
Maar ik zie dat je een seriele verbinding moet maken om linux te installeren? Is het ook mogelijk om het alleen via de web interface te doen?

Acties:
  • 0 Henk 'm!

  • Buzz-01
  • Registratie: Juni 2002
  • Laatst online: 12-09 16:21
Dat gaat waarschijnlijk (afhankelijk van firmware denk ik) de eerste keer wel. Als het daarna mis gaat, of je wil een andere firmware plaatsen, moet je alsnog met een seriële interface aan de slag. Na het flashen ben je uiteraard de webinterface kwijt... Hoe ver wil je met de router gaan? Wil je er bijv. een USB-stick aan knopen? Het interne geheugen van de Sweex is redelijk beperkt, hoe groot precies weet ik niet, misschien past je applicatie nog in het interne flash.

Om het jezelf gemakkelijker te maken, kun je een seriële datakabel van een GSM gebruiken, bijvoorbeeld die van een C25/M35 wordt vaak gebruikt. Ik heb zelf een max3232 op een printje gebakken en in de router gelijmd, zodat de seriële poort gewoon fixed op de router zit. Ik zou je in ieder geval aanraden om die seriële poort er op te maken _voor_ je gaat flashen, je hebt er alleen maar gemak van!

Flickr


Acties:
  • 0 Henk 'm!

  • killerbee17
  • Registratie: November 2003
  • Laatst online: 15-06-2024
Verwijderd schreef op zondag 12 augustus 2007 @ 15:40:
Mijn USB poort werkt nu ook :)
Ik had alles gesoldeert maar het werkte niet

deze melding kreeg ik aldoor:

<4>Retry in 1 sec.
Retry in 1 sec.
request_module[block-major-8]: Root fs not mounted
VFS: Cannot open root device "sda1" or 08:01
Please append a correct "root=" boot option

Toen heb ik de 1k weerstand bij de oscillator eruit gehaald en r16 doorverbonden, en toen deed hij het :)
Is er al meer duidelijkheid over het wel-of-niet plaatsen van de 1k weerstand bij de oscillator?

wwweet ik veel...


Acties:
  • 0 Henk 'm!

  • Springuin
  • Registratie: Juli 2002
  • Laatst online: 11-09 20:13
Gewoon plaatsen en als het niet werkt eruit halen.

Acties:
  • 0 Henk 'm!

Verwijderd

Hoi hoi,

Vraagje, ik heb nog zo'n edimax BR6104 met usb liggen. Hier heb ik zelf een tijdje terug al linux op gezet, en ik heb er toen metteen zo'n datakabel met compoort aansluiting op gesoldeerd. Erg handig, kan hem zo inpluggen in de compoort van me pc als dat nodig is.

Ik heb alleen de volgende vraag. Ik ben bezig met het uitdenken hoe ik een robot ga maken. Nu leek mij dat deze router aardig wat opties had. En niet te veel stroom vreet, das ook belangrijk voor een accu... Wat ik zelf al weet is dat het mogelijk is de leds aan en uit te zetten afzonderlijk. Dat zijn al zo'n 13 schakelpunten als ik het goed heb. Alleen vraag ik me af of iemand weet hoe dit moet en of ik dit kan programmeren in C ofzo..?

Zijn er trouwens ook nog andere interfaces op de router die bruikbaar zijn? Ik hoorde iets van een jtag aansluiting, kan ik die ook gebruiken om dingen mee aan te sturen, of nog beter uit te lezen?

Wie heeft voor mij wat meer info, deze router ligt al een jaar of 3 te verstoffen.. En dit lijkt me nou een prima projectje om het ding weer leven in te blazen :)

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
JTAG heb je niks aan als bediening voor een robot.

Je kan beter met 2 van die ledpunten een I2C bit bang interface maken en daar naar behoefte i/o expenders aangooien.
Je zit vrij snel op het limiet van je ledjes (en die ledjes kan je ook goed gebruiken om de status van het ding aan te geven)
Aan I2C kan je vanalles hangen, van temperatuursensors tot lcd displays tot motorcontrollers, is een heel erg veel gebruikte bus.
Je kan er ook microcontrollers aanhangen om weer andere taken te regelen (servo's of iets dergelijks)

Acties:
  • 0 Henk 'm!

Verwijderd

SA007 schreef op zondag 30 maart 2008 @ 14:26:
JTAG heb je niks aan als bediening voor een robot.

Je kan beter met 2 van die ledpunten een I2C bit bang interface maken en daar naar behoefte i/o expenders aangooien.
Je zit vrij snel op het limiet van je ledjes (en die ledjes kan je ook goed gebruiken om de status van het ding aan te geven)
Aan I2C kan je vanalles hangen, van temperatuursensors tot lcd displays tot motorcontrollers, is een heel erg veel gebruikte bus.
Je kan er ook microcontrollers aanhangen om weer andere taken te regelen (servo's of iets dergelijks)
Oke, dat is erg mooi. De mogelijkheden zijn dus vrij groot met dit boardje. En het belangrijkste is dat het geen drol aan stroom kost, dit word dus accu + zonnenpanelen :D Ik heb zelf dmv google deze post weten te vinden uit dit topic. MindBender in "Routerhacking - Deel 2"

Ik lees dat er een aantal input / output mogelijkheden zijn. (GPIO_CONF_x en PORT0_LED, PORTx_LED) Vraag is alleen stuur ik deze aan dmv commando's in linux? of moet dit doormiddel van een programma geschreven in C? En welke documentatie moet ik door gaan nemen als ik dit wil gaan gebruiken? Ik heb eigenlijk een klein beetje programmeer ervaring, ik zou eigenlijk moeten weten hoe ik geheugen adressen bestuur in C, en vervolgens hoe ik de output dus gebruik op het electroica gebied. Ik zou graag wat leren over dit specefiek onderwerp.

Ik ga eens wat lezen over die "I2C bit bang interface" Dat klinkt leuk, Eens kijken wat het doet, mischien word me het een en ander duidelijk als ik hier wat over lees over hoe ik het aan elkaar ga knopen.

Best pittig onderwerp eigenlijk, Eigenlijk is het een kwesti van programmeren, en solderen. Tis alleen een hoop uitzoek werk. Hoe programmeer ik het geheel, en hoe vang ik de input / output op, en hoe verwerk ik dit weer in het programma... if, then, else verhaal...

edit:

Dit is nu echt interessant... :) http://www.sunspot.co.uk/Projects/sweexproject.htm

Acties:
  • 0 Henk 'm!

Verwijderd

Heeft er hier iemand ervaring met hoe ik de GPIO poorten gebruik? Ik weet wel dat AMiLDA linux die ik nu op mijn router heb draaien standaard een progje op start dat de leds laat knipperen in een soort loop licht. Nightrider achtig iets..

Als ik de broncode van dat tooltje zou kunnen vinden zou ik daarin af kunnen kijken wat er gedaan word om de leds aan te sturen.. Het schijnt ook mogelijk te zijn om met de GPIO poorten iets in te lezen. Laten we zeggen dat ik er een licht sensor aan wil hangen, moet ik die dan direct op een van de GPIO poorten aansluiten of moet ik een heel schema maken wat het een en ander gaat vertalen ofzo?

Ik moet hier echt wat meer helderheid in hebben wil ik verder komen.. Ik zouk nu letterlijk naar een spelt in een hooiberg met mijn zero ervaring op dit gebied...

Acties:
  • 0 Henk 'm!

Verwijderd

Ik heb afgelopen maandag midge op mijn router gezet, dat lijkt me een fijner os om mee te gaan werken. echter krijg ik deze error als ik nu wil booten van mijn usb sitck.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
LED & GPIO Driver v1.1, regval 20ff2001, bfffffff
LED & GPIO Driver v1.1, regval 0fbf0f01, bfffffff
VFS: Cannot open root device "scsi/host0/bus0/target0/lun0/part1" or 00:00
VFS: Retrying.
VFS: Mounted root (rootfs filesystem).
do_mounts.c: retrying in 1s.
hub.c: new USB device adm5120-hcd-2, assigned address 2
VFS: Mounted root (rootfs filesystem).
do_mounts.c: retrying in 1s.
usb_control/bulk_msg: timeout
scsi0 : SCSI emulation for USB Mass Storage devices
Unable to handle kernel paging request at virtual address 00000054, epc == 800df                     8e8, ra == 80003568
Oops in fault.c::do_page_fault, line 206:
$0 : 00000000 10008400 00000000 00000004 0021cbe0 00000000 00000004 a0266410
$8 : 00000001 1000001f 00000000 801a0000 000002d5 10008400 00000000 00000001
$16: a02ed040 802f04a0 21c00005 b1200000 a0266410 00000000 8027f800 0000
$24: ba2e8ba3 801c35b4                   8018a000 8018be28 8040acf0 8000
Hi : 00000000
Lo : 00000bc0
epc   : 800df8e8    Not tainted
Status: 10008402
Cause : 10800008
PrId  : 0001800b
Process swapper (pid: 0, stackpage=8018a000)
Stack:    8018a000 00000001 00000000 8001cae0 8021c7e0 02000001 00000003
 8018bed0 801c0000 00000000 00000000 80003568 8018be58 8018be58 00000000
 801a0000 8019f060 8021c7e0 00000003 8018bed0 00000001 800038b4 8040acf0
 80019390 801c1be0 801c0000 00000000 00000004 10008400 8018bed0 8015f0cc
 00000000 8015f2ec 00000000 80009c00 000001f0 10000400 10008400 8019ecb0
 00000000 ...
Call Trace:   [<8001cae0>] [<80003568>] [<800038b4>] [<80019390>] [<8015
 [<8015f2ec>] [<80009c00>] [<8015f244>] [<8015f224>] [<80003314>] [<8000
 [<80003318>] [<80002730>]

Code: 38630001  00031880  00621821 <8c640050> 00052bc2  30a5000f  240200                             1004  00822025
Kernel panic: Aiee, killing interrupt handler!
In interrupt handler - not syncing
 <0>Rebooting in 30 seconds..


De stick is goed ingedeeld, hier ff in het kort wat ik gedaan heb.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
fdisk /dev/sda1
d (delete partitie)
d (er was niets meer te deleten)
n (nieuwe partitie)
p (primair)
1 (nr 1)
-enter- (start sector 1)
-enter- (eind sector X)
w (write)
mke2fs /dev/sda1
cd /root
mount /dev/sda1 /mnt/usb
cp blaaaaatwerkenderootfs.tar.gz /mnt/usb
cd /mnt/usb
tar xvf blaaaaatwerkenderootfs.tar.gz
rm blaaaaatwerkenderootfs.tar.gz
cd /
umount /dev/sda1

[ Voor 37% gewijzigd door Verwijderd op 04-04-2008 20:24 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op donderdag 03 april 2008 @ 20:09:
Ik heb afgelopen maandag midge op mijn router gezet, dat lijkt me een fijner os om mee te gaan werken. echter krijg ik deze error als ik nu wil booten van mijn usb sitck.
heb je midge zelf gecompileerd?
ik heb de versie van sunspot gebruikt, en die draait als een zonnetje.

Gerrit.

Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

fdisk /dev/sda1
Dat moet 'fdisk /dev/sda' zijn.

Behalve dat: Het lijkt erop dat je stick op de een of andere manier compleet niet meer herkend word. Misschien zit 'ie er scheef in ofzo?

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

Verwijderd

Sprite_tm schreef op vrijdag 04 april 2008 @ 11:15:
[...]

Dat moet 'fdisk /dev/sda' zijn.

Behalve dat: Het lijkt erop dat je stick op de een of andere manier compleet niet meer herkend word. Misschien zit 'ie er scheef in ofzo?
Idd, dat moet /dev/sda zijn, typo hier op got, ik weet zeker dat ik het in de console wel zo gedaan heb ;)

Vandaag ga ik eens een nieuwe stick kopen, kingston datatraveller van 1gb ofzo.. Ik denk dat ik gewoon een goedkope flut usb stick heb.. was ook een ding van 128mb wat ooit gratis gekregen is ergens.

Acties:
  • 0 Henk 'm!

Verwijderd

Vaag, vaag, vaag...

nieuwe usb stick gekocht van 1gb. Kingston data traveler en nu krijg ik weer een andere fout.. Nou ja, in elk geval geen kernel panic.. dus het de error zal wel minder 'critical' zijn ofzo... :?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
All bugs added by David S. Miller <davem@redhat.com>
LED & GPIO Driver v1.1, regval 20ff2001, bfffffff
LED & GPIO Driver v1.1, regval 0fbf0f01, bfffffff
VFS: Cannot open root device "scsi/host0/bus0/target0/lun0/part1" or 00:00
VFS: Retrying.
VFS: Mounted root (rootfs filesystem).
do_mounts.c: retrying in 1s.
hub.c: new USB device adm5120-hcd-1, assigned address 2
scsi0 : SCSI emulation for USB Mass Storage devices
  Vendor: Kingston  Model: DataTraveler 2.0  Rev: 1.00
  Type:   Direct-Access                      ANSI SCSI revision: 02
Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0
SCSI device sda: 1952768 512-byte hdwr sectors (1000 MB)
sda: Write Protect is off
Partition check:
 /dev/scsi/host0/bus0/target0/lun0: p1
VFS: Mounted root (ext2 filesystem).
mount_devfs_fs(): unable to mount devfs, err: -2
Freeing prom memory: 0kb freed
Freeing unused kernel memory: 76k freed
Warning: unable to open an initial console.


Weet niet of iemand dit bekend voor komt? Heb nu maar niet de hele log er op gezet, zal die ander log ook wel ff wat knippen van een post eerder.. Anders vliegen de pagina's in dit topic zo hard voorbij.. ;)

Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

Lijkt een userspace ding te zijn: je machine boot goed en afhankelijk van hoe Midge werkt, kan je er waarschijnlijk ook wel via het netwerk bij, maar op de een of andere manier gaat er iets fout bij het zetten van een tty op de serieele poort.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

Verwijderd

Het werkt nu, ik heb een nieuwere versie van midge er op gezet en nu boot ie van mijn sticky ;)

Nu kan ik leds controllen en een tweede serial port er bij gaan maken. Als het goed is gaat die 2e serial port in de eerste instantie communiceren met een Atmega8 (zodra dat spul allemaal bij mij thuis ligt)

Mischien als het nodig zou zijn in de toekomst kan die eerste serial poort ook een Atmega8 of een andere chip aan gaan sturen. Voorlopig laat ik mijn serieel debug kabel er nog maar op zitten. Weer een stapje dichter bij bij de robot die het moet gaan worden ;)

Ben op samenkopen.net een dikke order aan het plaatsen met onderdelen die ik nodig ga hebben / denk nodig te gaan hebben. o.a. motortjes, weerstandjes, max-232, maybe max-3232. etc etc.

Acties:
  • 0 Henk 'm!

Verwijderd

Nice, ik heb nu voor een deel al wat ik wil bereiken. Ik kan dmv het commando 'led' alle 12 leds aan en uit zetten. bijvoorbeeld.

code:
1
# led on 1


maar ook

code:
1
# led on 1; led on 2; led on 3; led on 4; led on 5; led on 6; led on 7; led on 8; led on 9; led on 10; led on 11; led on 12


Met dat laatste commando gaan ze dus allemaal in een keer aan. zo kun je dus leuke scripts maken.. Ben me nu een beetje aan het verdiepen in shellscript. In pricipe kan ik gewoon een relay aansluiten op de betreffende led en daarmee weer een andere circuit enabelen. Zoals bijvoorbeeld beweging van een motortje ofzo.. :)

Edit,

Shell code was een weer leuk om mee te spelen.. Nu heb ik een AVR programmer bestelt en een paar atmega8's + ZIF sockets. Deze kunnen communiceren met /dev/ttySx , verder komt er uit China over een tijdje een grote doos met onderdelen binnen. LDR's, Relays, 3 vertraagde elektro motoren, PIR sensoren en nog een setje MAX232 ic's.. Verder nog een hele zooi elektronica onderdelen om een goede start te maken in elk geval. :*)

'This is going to be hell of a job..' Ben maar eens hier begonnen. http://www.avr-asm-tutorial.net/avr_en/beginner/index.html

[ Voor 30% gewijzigd door Verwijderd op 05-04-2008 23:00 ]


Acties:
  • 0 Henk 'm!

  • CopperCAT
  • Registratie: April 2003
  • Laatst online: 25-08 19:53

CopperCAT

Cu --> Cu(2+) + 2e-

Ten einde raad zal ik hier maar even mijn probleem posten. Ik heb recent het circuitje gemaakt voor de consolepoort op mijn Edimax 6104KP. Daarvoor heb ik de MAX220 gebruikt (die is volledig hetzelfde als de MAX232 volgens de datasheet, enkel 'ultra-low power').
Als ik nu de Edimax start krijg ik mooi de bootloadertekst te zien en ik kan in het bootmenu geraken. Eenmaal linux echter start zie ik alleen maar rommel op het scherm :/
Afbeeldingslocatie: http://users.skynet.be/klaasdc/teraterm.png
Ik heb al alle datasnelheden, flow control etc uitgeprobeerd. Als ik 7bits ASCII aanzet is de "rommel" wel wat meer herkenbaar als een bootende linux, maar het blijft onleesbaar.

Dit is dus enkel voor de linuxboot, en gebeurt zowel met de originele firmware, Sprite's image, en Amilda, welke ik via XMODEM geupload heb.
In die laatste heb ik trouwens blind kunnen inloggen en een 'reboot' kunnen uitvoeren.

Ik heb echt geen enkel idee wat er nog verkeerd kan zijn, heeft iemand een idee?

Core2D E6600 :: Scythe Ninja 1000+ :: G-Skill DDR2 PC6400 4-4-4-12 HZ 2048Mb :: Asus P5W DH :: 2* Barracuda 7200.10 320Gb S2


Acties:
  • 0 Henk 'm!

Verwijderd

De bitrate moet altijd op 115200.. Verder staan de instellingen in hyperteminal altijd standaard goed bij mij. Waarom gebruik je niet Hyperterminal? En anders in linux kermit gebruiken werkt ook goed.

Zodra kermit opgestart is en ie een kermit-shell heb doe je deze commando's achter elkaar, en als je het laatste commando 'connect' heb gedaan doe je de power van je router er in en dan begint er op het scherm wat te gebeuren. Note, ttyS0 staat voor serial poort 1, S1 voor serial 2 etc..

set line /dev/ttyS0
set speed 115200
set carrier-watch off
set stop-bits 1
connect

Acties:
  • 0 Henk 'm!

  • CopperCAT
  • Registratie: April 2003
  • Laatst online: 25-08 19:53

CopperCAT

Cu --> Cu(2+) + 2e-

Verwijderd schreef op zondag 06 april 2008 @ 16:51:
De bitrate moet altijd op 115200.. Verder staan de instellingen in hyperteminal altijd standaard goed bij mij. Waarom gebruik je niet Hyperterminal? En anders in linux kermit gebruiken werkt ook goed.

Zodra kermit opgestart is en ie een kermit-shell heb doe je deze commando's achter elkaar, en als je het laatste commando 'connect' heb gedaan doe je de power van je router er in en dan begint er op het scherm wat te gebeuren. Note, ttyS0 staat voor serial poort 1, S1 voor serial 2 etc..

set line /dev/ttyS0
set speed 115200
set carrier-watch off
set stop-bits 1
connect
Hyperterminal heb ik ook al geprobeerd, maar gaf hetzelfde resultaat. Onder linux moet ik nog eens testen, maar veel verschil zal dat niet meer maken schat ik...
Misschien moet ik nog eens een pure MAX232 zien te vinden in de plaats van die 220.

Core2D E6600 :: Scythe Ninja 1000+ :: G-Skill DDR2 PC6400 4-4-4-12 HZ 2048Mb :: Asus P5W DH :: 2* Barracuda 7200.10 320Gb S2


Acties:
  • 0 Henk 'm!

Verwijderd

CopperCAT schreef op zondag 06 april 2008 @ 17:09:
[...]

Hyperterminal heb ik ook al geprobeerd, maar gaf hetzelfde resultaat. Onder linux moet ik nog eens testen, maar veel verschil zal dat niet meer maken schat ik...
Misschien moet ik nog eens een pure MAX232 zien te vinden in de plaats van die 220.
http://samenkopen.net/action_product/762661/941325

Acties:
  • 0 Henk 'm!

Verwijderd

Shell code was een weer leuk om mee te spelen.. Nu heb ik een AVR programmer bestelt en een paar atmega8's + ZIF sockets. Deze kunnen communiceren met /dev/ttySx
Je kunt best veel met shell code, zie b.v. mijn GPS logger:
http://www.agri-vision.nl...task=view&id=35&Itemid=63

Momenteel ben ik bezig met C, en I2C om een si570 vcxo aan te sturen. C compileer ik op de router, zie de sunspot site voor details, heel handig!!

Waarom gebruik je naast de router nog een AVR? Volgens mij heeft de router zelf genoeg power, een ook I/O, zeker als je I2C gebruikt.

Gerrit.

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op maandag 07 april 2008 @ 10:10:
[...]


Je kunt best veel met shell code, zie b.v. mijn GPS logger:
http://www.agri-vision.nl...task=view&id=35&Itemid=63

Momenteel ben ik bezig met C, en I2C om een si570 vcxo aan te sturen. C compileer ik op de router, zie de sunspot site voor details, heel handig!!

Waarom gebruik je naast de router nog een AVR? Volgens mij heeft de router zelf genoeg power, een ook I/O, zeker als je I2C gebruikt.

Gerrit.
Ik zou daar graag mee werken, maar ik snap niet echt hoe ik met dat I2C aan de gang moet gaan.. Weet je misschien een site waar dat een beetje uitgelegd staat? Voor mijn gevoel was een Atmega8 voor mij de meest voor de hand liggende oplossing om het een en ander aan te sturen / uit te lezen, met de achterliggende gedachte dat ik maar met AVR begin, en later gewoon de rest van het board gaan bestuderen zodat ik daar wat uitbreidingen op zou kunnen maken waar de atmega te zwak voor zou zijn, zoals camera en microfoon..

Heb je iets van een linkje naar dat i2c gebeuren? Binnenkort heb ik onderdelen zat om iets in elkaar te solderen..

[ Voor 9% gewijzigd door Verwijderd op 07-04-2008 23:26 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Ik ben eens aan het kijken geweest naar voor zover ik weet de sourcecode die achter het aansturen van de leds zit, ik ben dit aan het bekijken. http://www.scintilla.utwe...120gpio_with_switch_leds/

Ik zie nu alleen dat de code verwijst naar "spinlock" ofzo? Ik zoek eigenlijk het deel van de code waarin ik kan zien wat er verstuurd word zodat het ledje aan gaat. Ik zie wel dat er op een gegeven moment gevraagt word om optie op te geven ON of OFF en dan het led nr, het lijkt er op dat er functies aangeroepen worden, om het een en ander te doen waaardoor het ledje dus doet wat ik wil.

Acties:
  • 0 Henk 'm!

Verwijderd

Ik ben alweer wat informatie rijker nu. Ik weet nu wat I2C is, en zo een beetje wat ik er mee kan. Ik heb maar 2 GPIO pins nodig, hierover kan ik DMV wat programmeren in C dus I2C taal overheen blazen.

Ik heb alleen een driver nodig. Ook lees ik iets over I2C support in de Linux kernel. Ik vond dit; http://docs.blackfin.uclinux.org/doku.php?id=i2c

Kan iemand vertellen of I2C enabled is in de laatste versie van Midge? En is er al een driver voor MIPS die dat GPIO > I2C gebeuren regelt, kan ik die driver van de link daarvoor gebruiken?

Acties:
  • 0 Henk 'm!

Verwijderd


Acties:
  • 0 Henk 'm!

Verwijderd

Thanks voor de reminder! Ik had er al eens overheen gelezen, echter begreep ik er toen echt helemaal niets van. Nu ik een klein beetje meer input heb gehad is het enigsinds volgbaar nu. Ik heb mijn usbroot van die website gebruikt, dus misschien heb ik dat driver deel al op orde. (zou ideaal zijn)

Nu de volgende stappen, hoe spreek ik die driver aan in C bijvoorbeeld en dan maar eens het juiste deel gaan leren van C om het een en andere te kunnen programmeren. Ik heb een schematje gevonden om twee DC motors aan te sturen. (H-bridge over i2c) Nu krijg ik ergens mid~end volgende week mijn onderdelen uit China binnen. Ik zou dan als ik nog wat kleine componentjes er bij ga kopen die i2c motor controller kunnen gaan maken.

Ik begin voor mijn gevoel al ergens dichtbij te komen, ik kan me nog herinneren dat ik 2 weken terug echt helemaal nergens was :D

Acties:
  • 0 Henk 'm!

Verwijderd

Vandaag weer een half uurtje tijd gevonden, heb nu I2C draaiende op de router. Heb nu een device in /dev/i2c/ genaamd '0' als ik hier iets naar echo knipperen de 2 eerste oranje leds een keer heel snel.

Ik kan nu dus aan het programmeren beginnen van een robot brain. Ben een tutorial C++ aan het doornemen, hopelijk begrijp ik de taal snel en kan ik very soon deze driver aanspreken in C++ ;)

Acties:
  • 0 Henk 'm!

Verwijderd

Ik probeer een cross compile platform te maken op mijn Debian server. Nu volg ik een tutorial hier ergens in deze draad gepost, namelijk http://www.student.tue.nl/Q/t.f.a.wilms/adm5120/

Nu blijf ik echter bij het make gedeelte al hangen.. Ik heb trouwens de SVN checkout, niet de daily snapshot. Nu staat er bij stap 2: (Huh? is het dan niet: #make menuconfig) << Geeft dezelfde errors als hier beneden overiggens.

code:
1
2
2. Next, run 'make' to get a menuconfig:
    tom@linux:~/adm5120/buildroot> make


Ik krijg als ik make doe 2 errors, namelijk:

code:
1
2
3
make[1]: *** [lxdialog/checklist.o] Error 1
make[1]: Leaving directory `/tmp/buildroot/package/config'
make: *** [package/config/mconf] Error 2


Mischien is de tutorial wat out dated.. De tutorial stamt uit eind 2005.. Kan het zijn dat het nu anders moet ofzo met deze nieuwere versie? Het lijkt mij dat make toch gewoon moet werken..? Het is echt niet de eerste keer dat ik wat compile op mijn debian servertje....

edit:

Ik heb ncursus geinstalleerd, ik dacht dat dat mischien het probleem was.. Was niet het probleem in elk geval.

edit2:

Oeps, dom van me.. libncurses-dev stond er nog niet op. Voor zover nu krijg ik het menu waar ik mijn settings kan maken. hopelijk werkt nu alles :)

edit3:

Verdorie, na een uur ofzo deze error... morgen eens researchen...

code:
1
2
3
4
5
6
7
:0: error: -march=mips32 is not compatible with the selected ABI
:0: error: -march=mips32 is not compatible with the selected ABI
  CC ldso/ldso/ldso.oS
ldso/ldso/ldso.c:1: error: -march=mips32 is not compatible with the selected ABI
make[1]: *** [ldso/ldso/ldso.oS] Error 1
make[1]: Leaving directory `/tmp/buildroot/toolchain_build_mipsel/uClibc-0.9.29'
make: *** [/tmp/buildroot/toolchain_build_mipsel/uClibc-0.9.29/lib/libc.a] Error 2

[ Voor 32% gewijzigd door Verwijderd op 20-04-2008 22:01 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Een klein schopje, want ik kom echt niet verder. De foutmelding die ik krijg bij het maken van buildroot is de volgende:

"mips32 is not compatible with the selected ABI" (beetje geknipt)

Als ik dit google krijg ik 3 hits = 2 websites. Allebij bugreports, echter de ene op de site van busybox, en de andere op de site van buildroot. Op de link van buildroot staat kortaf vermeld "A patch for this is required."

Oké..? Patch? Welke patch? Iemand die hier weet welke patch? ;(

Acties:
  • 0 Henk 'm!

Verwijderd

Is er echt niemand die me kan helpen met bovenstaande probleem? Jammer dat er op de buildroot site geen forum is, anders had ik het echt wel daar gevraagt.. Google is ook niet echt een uitkomst zo met maar 3 hits...

Het zal wel een klein probleempje zijn.. maar het is echt een enorm probleem voor mij als ik geen hello world appje kan cross compilen naar Mipsel.. Tis maar een kleine stap zou je denken, maar voor mij is het een enorme, en het betekend dat als ik een hello world app kan maken op de router 'almost anything possible' is.

Acties:
  • 0 Henk 'm!

  • HugoBoss1985
  • Registratie: December 2006
  • Laatst online: 13:50

HugoBoss1985

Xenotech

Verwijderd schreef op dinsdag 22 april 2008 @ 18:25:
Is er echt niemand die me kan helpen met bovenstaande probleem? Jammer dat er op de buildroot site geen forum is, anders had ik het echt wel daar gevraagt.. Google is ook niet echt een uitkomst zo met maar 3 hits...

Het zal wel een klein probleempje zijn.. maar het is echt een enorm probleem voor mij als ik geen hello world appje kan cross compilen naar Mipsel.. Tis maar een kleine stap zou je denken, maar voor mij is het een enorme, en het betekend dat als ik een hello world app kan maken op de router 'almost anything possible' is.
"Lees eerst dit topic goed door. Dit is geen 'vraag maar raak' topic. Maak dus eerst gebruik van de naslagwerken (Google etc.) en houdt het vooral on-topic en schoon."

Wist je al dat er ook een edit knop is, zodat je de oude berichten kan editten?
Dan hoef je dus niet steeds een nieuw bericht te plaasten.

Acties:
  • 0 Henk 'm!

  • blackangel
  • Registratie: April 2002
  • Laatst online: 12-09 12:30
HugoBoss1985 schreef op dinsdag 22 april 2008 @ 18:28:
[...]


"Lees eerst dit topic goed door. Dit is geen 'vraag maar raak' topic. Maak dus eerst gebruik van de naslagwerken (Google etc.) en houdt het vooral on-topic en schoon."

Wist je al dat er ook een edit knop is, zodat je de oude berichten kan editten?
Dan hoef je dus niet steeds een nieuw bericht te plaasten.
Ik denk niet dat dat de meest zinnige opmerking dan is.

@ragingbull: Je weergeeft wel een error, maar niet wat er voor die error staat. Op welke regele call loopt die fout? Ik vermoed [i[ln -fs sgidefs.h ./include/[/], dat is de error die ik vind op busybox. Zo ja, ga terugleiden waar de march en mabi geset worden. Zoek vervolgens terug op de combinatie. Voor wat ik op google vind, lijkt het erop dat de mabi op een 64bits wordt geset, maar jouw march op 32bit. Zet de mabi dan ook op 32bit, aangezien jouw cpu echt geen 64bitter is.

Het kan zijn dat de abi overigens wel op een fatsoenlijke 32bit staat, dan moet je even verder kijken :) Maar ik ken de problemen, ik probeer zelf nu ook zoiets te doen :P

[ Voor 3% gewijzigd door blackangel op 22-04-2008 19:11 ]


Acties:
  • 0 Henk 'm!

Verwijderd

blackangel schreef op dinsdag 22 april 2008 @ 19:11:
[...]


Ik denk niet dat dat de meest zinnige opmerking dan is.

@ragingbull: Je weergeeft wel een error, maar niet wat er voor die error staat. Op welke regele call loopt die fout? Ik vermoed [i[ln -fs sgidefs.h ./include/[/], dat is de error die ik vind op busybox. Zo ja, ga terugleiden waar de march en mabi geset worden. Zoek vervolgens terug op de combinatie. Voor wat ik op google vind, lijkt het erop dat de mabi op een 64bits wordt geset, maar jouw march op 32bit. Zet de mabi dan ook op 32bit, aangezien jouw cpu echt geen 64bitter is.

Het kan zijn dat de abi overigens wel op een fatsoenlijke 32bit staat, dan moet je even verder kijken :) Maar ik ken de problemen, ik probeer zelf nu ook zoiets te doen :P
De termen 'march' en 'mabi' zeggen me echt helemaal niets, sorry ;) Ik neem aan dat het afkortingen zijn?

Ik heb hier mijn volledige output staan als ik 'make' doe in de buildroot directory. http://cyberdyne.hopto.org/output.txt

Kan het zijn dat er een fout komt omdat ik in de map /tmp werk? Of omdat ik een config fout heb gemaakt? Ik heb in elk geval alles zo ingesteld zoals de tutorial aangeeft dat het moet...

Hier staat mijn config. http://cyberdyne.hopto.org/config.txt

Acties:
  • 0 Henk 'm!

  • lamko
  • Registratie: December 2001
  • Laatst online: 20-10-2024
Dit zijn de gcc compiler opties hier meer te vinden :
http://gcc.gnu.org/online...Options.html#MIPS-Options

edit
@hieronder
oeps, meende dat het om een arm cpu ging maar het is dus een mips cpu
link aangepast na de juiste architectuur

[ Voor 37% gewijzigd door lamko op 22-04-2008 21:39 ]

And this !! Is to go even further beyond!!!


Acties:
  • 0 Henk 'm!

  • blackangel
  • Registratie: April 2002
  • Laatst online: 12-09 12:30
Die config.txt is niet jouw configfile. Je hebt nu een kconfig gecopieerd staan (waarin de opties van je make menuconfig staan weergeven). Je moet de .config hebben :)

De termen march en mabi zijn compileroptions. Je moet je voorstellen, dat wanneer je op je Pentium 4 code gaat compilen, dit niet per definitie op je mips (is die adm5120) gaat draaien. De march zet de architectuur. Wat de mabi precies zet weet ik niet precies, maar volgens mij zijn het de extensies (zoals ondersteuning voor MMX, of 32/64 bit oid). En dat maakt volgens mij ook de waarschuwing duidelijk, jij wil een ondersteuning van een extensie die jouw cpu niet biedt :)

Nu had ik dat eigenlijk gehoopt uit de .config te halen, maar die staat er niet. En in mijn eigen project wordt de mabi niet gebruikt. (Ietswat anders project. Ook crosscompilen, maar naar een microblaze architectuur :P)

Ik zit op het moment zo'n 40M van mijn accesspoint af waardoor fatsoenlijk downloaden niet gaat :P. Ik zal kijken of ik vandaag of morgen even jouw tutorial kan meecompilen. Kun jij jouw (goede ;) ) config online zetten, dan zal ik binnenkort wel even posten hoe ver ik ermee kom :) Wat je wel (eerst) even kunt proberen in ieder geval, is in je menuconfig kijken op welke waarde je BR2_GNU_TARGET_SUFFIX hebt staan (of in de .config). Dit moet op linux-uclibc staan, de kans bestaat dat je hem op linux-uclibcgnueabi hebt staan. Dit zou het probleem kunnen zijn :)


@Hierboven: Er is een ietswat betere link, namelijk http://gcc.gnu.org/online...Options.html#MIPS-Options. Dit gaat namelijk over de MIPS-architectuur. Maar helaas is dat alleen achtergrondinformatie, je moet eigenlijk weten waarop die staat :)

Acties:
  • 0 Henk 'm!

Verwijderd

Dit is de correcte link. http://cyberdyne.hopto.org/.config

Verder staat BR2_GNU_TARGET_SUFFIX goed.. Vaag dat 't niet werkt...

Acties:
  • 0 Henk 'm!

  • blackangel
  • Registratie: April 2002
  • Laatst online: 12-09 12:30
de mabi heeft, nu ik het zo lees (iig bij de mips) niet zoveel te maken met welke extensies er zijn, maar in wat voor vorm het programma komt te staan (32bit/64/beide). Ik durf dit echter niet echt hard te beweren.

Maargoed, het is nu iig wel zichtbaar wat de march (BR2_GCC_TARGET_TUNE) en de mabi (BR2_GCC_TARGET_ABI) zijn. Na wat onderzoek heb ik het vermoeden, dat de ABI n32 betekend dat je een 64bit cpu hebt, maar een 32bit programma wilt compilen. Precies weten doe ik het niet. Ik heb dan ook het vermoeden dat er een optie 'verkeerd' staat. Makkelijke manier:
code:
1
2
3
BR2_GCC_TARGET_ABI="n32"
>>
BR2_GCC_TARGET_ABI="32"

Nette manier: BR2_MIPS_EABI uitzetten, BR2_MIPS_OABI aanzetten in menuconfig (semi-half gelezen dat abi=32 als mips32+oabi, abi=n32 als mips32+eabi). Ik durf echt niet te zeggen of dit gaat werken, maar het is volgens mij een relatief kleine aanpassing.

Acties:
  • 0 Henk 'm!

Verwijderd

Morguh.. ;)

Ik heb nu het volgende aangepast in:
BR2_GCC_TARGET_ABI="32" (alleen deze setting haalde niets uit. dus deze tijdelijk zo gelaten en de volgende dingen aangepast.)

BR2_MIPS_EABI uitgezet (# er voor en 'is not set by me' er achter)
#BR2_MIPS_OABI is not set >> BR2_MIPS_OABI=y

Toen werkte het nog niet, dus heb ik BR2_GCC_TARGET_ABI="n32" weer zo gezet. De output bleef hetzelfde geven..

Ik heb aangegeven dat ik geen busybox ofzo wil compilen.. Ik wil alleen een omgeving creeeren waarmee ik C++ kan compilen naar Mipsel.. Een 'Hello world' appje is al even voldoende.. Het is maar dat het werkt.. Volgens mij ben ik nu bezig met veel teveel, ik kan in principe een het hele Busybox OS maken voor Mipsel met dit tooltje.. Ik weet niet of ik perse die optie aan moet laten staan om later pas de 'easy stuff' kan doen...? Ik was ook al opzoek gegaan naar een crosscompiler tutorial slechts voor wat C++ te compilen naar Mipsel, ik heb heel dat busybox en alle componenten daarbij niet nodig. De router draait al Midge, en heeft al wat appjes. Ik wil er alleen wat aan toevoegen door ze gewoon te builden en dan te copyeeren naar de usb stick via mijn linux bak...


Dit is de output:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
cyberdyne:/tmp/buildroot# make

Checking build system dependencies:
BUILDROOT_DL_DIR clean:                         Ok
CC clean:                                       Ok
CXX clean:                                      Ok
CPP clean:                                      Ok
CFLAGS clean:                                   Ok
INCLUDES clean:                                 Ok
CXXFLAGS clean:                                 Ok
which installed:                                Ok
sed works:                                      Ok (/bin/sed)
GNU make version '3.81':                        Ok
C compiler '/usr/bin/gcc'
C compiler version '4.1.2':                     Ok
C++ compiler '/usr/bin/g++'
C++ compiler version '4.1.2':                   Ok
bison installed:                                Ok
flex installed:                                 Ok
gettext installed:                              Ok
makeinfo installed:                             Ok
Build system dependencies:                      Ok

rm -rf /tmp/buildroot/project_build_mipsel/uclibc/buildroot-config
mkdir -p /tmp/buildroot/project_build_mipsel/uclibc
cp -dpRf package/config/buildroot-config /tmp/buildroot/project_build_mipsel/uclibc/buildroot-config
mkdir -p /tmp/buildroot/project_build_mipsel/uclibc/root/etc
echo "" > /tmp/buildroot/project_build_mipsel/uclibc/root/etc/issue
echo "" >> /tmp/buildroot/project_build_mipsel/uclibc/root/etc/issue
echo "Welcome to the Erik's uClibc development environment." >> /tmp/buildroot/project_build_mipsel/uclibc/root/etc/issue
mkdir -p /tmp/buildroot/project_build_mipsel/uclibc/root/etc
echo "uclibc" > /tmp/buildroot/project_build_mipsel/uclibc/root/etc/hostname
mkdir -p /tmp/buildroot/project_build_mipsel/uclibc/root/etc
echo "0.10.0-svn"-svn21785 >/tmp/buildroot/project_build_mipsel/uclibc/root/etc/br-version
/usr/bin/make MAKE="/usr/bin/make -j1" -C /tmp/buildroot/toolchain_build_mipsel/uClibc-0.9.29 \
                PREFIX= \
                DEVEL_PREFIX=/ \
                RUNTIME_PREFIX=/ \
                HOSTCC="/usr/bin/gcc" \
                all
make[1]: Entering directory `/tmp/buildroot/toolchain_build_mipsel/uClibc-0.9.29'
make[2]: `conf' is up to date.
ln -fs sgidefs.h ./include/
:0: error: -march=mips32 is not compatible with the selected ABI
:0: error: -march=mips32 is not compatible with the selected ABI
  CC ldso/ldso/ldso.oS
ldso/ldso/ldso.c:1: error: -march=mips32 is not compatible with the selected ABI
make[1]: *** [ldso/ldso/ldso.oS] Error 1
make[1]: Leaving directory `/tmp/buildroot/toolchain_build_mipsel/uClibc-0.9.29'
make: *** [/tmp/buildroot/toolchain_build_mipsel/uClibc-0.9.29/lib/libc.a] Error 2
cyberdyne:/tmp/buildroot#

Acties:
  • 0 Henk 'm!

Verwijderd

ik compileer gewoon op de router, is niet zo snel, maar voor mijn doel genoeg.
En het voorkomt een heleboel rompslomp.

voor info: alweer sunspot, item 19.

Wat ik wel graag zou willen is de compiler integreren in mijn root system, ik moet nu steeds chroot doen.

Gerrit.

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op woensdag 23 april 2008 @ 09:20:
ik compileer gewoon op de router, is niet zo snel, maar voor mijn doel genoeg.
En het voorkomt een heleboel rompslomp.

voor info: alweer sunspot, item 19.

Wat ik wel graag zou willen is de compiler integreren in mijn root system, ik moet nu steeds chroot doen.

Gerrit.
Hoe lang duurt het om een "Hello world" appje te compilen op de router zelf? Lijkt me een halve minuut ofzo? of is het secondenwerk?

nvm, staat toevallig op de sunspot site.. Toch redelijk snel. En mooi dat het mogelijk is, zeker voor een robot maakt dat de mogelijkheden kwa intelligentie groter. De router zou zijn eigen code kunnen verbeteren op die manier als ie zelf kan compilen..

Ik moet hier nog niet zo ver over nadenken.. eerst maar eens zorgen dat het ding leeft...

[ Voor 25% gewijzigd door Verwijderd op 24-04-2008 13:35 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Ik zit met een klein probleempje.. Ik ben pagina 19 aan het doornemen van die SunSpot site, (linkje naar SunSpot nog maar een keer http://www.sunspot.co.uk/Projects/sweexproject.htm)

Nu wil ik het rootfs waar de C compiler in zit mounten, echter loop ik al metteen vast bij het commando mount -o loop ............. output die ik krijg is dit.

code:
1
2
3
4
5
6
7
BusyBox v1.1.0 (2006.04.30-19:37+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

T1# cd /
T1# mount -o loop root_fs_mipsel.ext2 root_fs
mount: Couldn't setup loop device
T1#


Als ik ga googelen op de fout "Couldn't setup loop device" schijnt het iets typisch BusyBox te zijn.. Echter lees ik ook dat dit een bug zou zijn die in 2005 al opgelost was... Weet iemand wat dit kan zijn?

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op maandag 28 april 2008 @ 11:49:
..
Nu wil ik het rootfs waar de C compiler in zit mounten, echter loop ik al metteen vast bij het commando mount -o loop ............. output die ik krijg is dit.
...
mount -o loop doe je niet op de router, maar op je linuxdoos, met als eenige doel om je tool-chain op je stick te kopieeren.

Gerrit.

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op maandag 28 april 2008 @ 15:31:
[...]


mount -o loop doe je niet op de router, maar op je linuxdoos, met als eenige doel om je tool-chain op je stick te kopieeren.

Gerrit.
Bedankt!

Moet je ook maar net weten.. Staat niet echt duidelijk dat het nog over de linux doos ging.. :)

Acties:
  • 0 Henk 'm!

Verwijderd

Bullseye!

code:
1
2
3
midge# ./helloworld
Hello World, I'm a C++ program.
midge#


Dit is vet gaaf, 3 more steps.

1 - leer C++ icm I²C bit banging.
2 - leer assembly of ook C++ icm AVR ---- I²C >> "devices"
3 - maak de "devices" ;)

Dit word echt een vette tijd. Morgen maar eens een Atmega8 aan mijn lpt poort knopen, ik heb ZIF sockets dus ik kan lekker vlot expirimenteren.. Ik ben me aan het verdiepen in electronica, je zou m'n kamer eens moeten zien... wat een mess, anyway nu maar eens gaan slapen, morgen hele dag vrij en dan maar eens verder hobby'en.

I wonder... Will I dream... =)

Acties:
  • 0 Henk 'm!

Verwijderd

Vraagje, hoe kom ik er achter welke van de 2 leds de SCL en SDA lijn zou moeten zijn? Op het moment dat ik een bit verstuur naar de I²C bus knipperen de 2 oranje leds. Op de sunspot site staat onder item 6 dat de led rechts naast de power led de SDA is, en de led daarnaast de SCL.

Ik heb echter de BR6104PK en die heeft twee leds meer, twee oranje leds zijn denk ik extra, en die zijn de de i2c.. Ik weet alleen niet goed welke van de twee nu SCL en SDA zijn. Als ik iets verstuur naar /dev/i2c/0 met echo dan knipperen ze allebij even heel snel. Ik heb geen scope meter ofzo, anders was ik er zo achter denk ik..

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 15:20

SA007

Moderator Tweaking
Probeer het?

Werkt het niet, draai je ze om, niet alsof je iets sloopt ofzo.

Acties:
  • 0 Henk 'm!

Verwijderd

SA007 schreef op zondag 04 mei 2008 @ 15:54:
Probeer het?

Werkt het niet, draai je ze om, niet alsof je iets sloopt ofzo.
Ik was natuurlijk zelf al aan het klooien.. ik doe alleen een vreemde ontdekking.

De leds op het router pcb heb ik er af gehaald en op de twee + lijnen een breadboard draadje gesoldeerd. de 2 orginele leds in het breadboard geprikt en ben een gaan kijken of de leds nog hetzelfde doen als ze voorheen doen zodra ik "echo "1" >> /dev/i2c/0" doe.

Wat blijkt, er zijn dus 2 led punten, allebij met een + en een 0, logisch.. Nu zitten er op de 2 + punten 2 draadjes naar mijn breadboard, deze lopen naar de + van de 2 leds ie uit het pcb van de router komen. Nu dacht ik eerst maar eens uit te gaan zoeken welke ground ik moet nemen. Echter, wat blijkt. de leds moeten persé hun eigen ground draad hebben. Ze werken dus alleen als ik ze afzonderlijk aansluit, precies zoals ze dus op de pcb zelf ook zitten. Ik kan dus niet gewoon direct de ground pakken van de router, nee ze willen persé de ground lijn die normaal ook aan de led zit.

Opzich maakt dat niet veel uit, ik zou de leds terug kunnen zetten, ik kan ook de boel zo laten n de leds later eventueel op het 2e pcb solderen waar de overigge hardware aan verbonden wordt.


Heeft iemand mischien wat referenties / voorbeelden naar dat i2c gebeuren? Wat de bedoeling is uiteindelijk, de router gaat i2c praten met de atmega8, de atmega 8 stuur hardware aan aan de hand van wat de router request. In feite is de atmega dus een vertaal stukje die de router laat praten met de hardware. Daarnaast zal het daadwerkelijk breind dus op de router zelf draaien, voldoende geheugen, en cpu power wat mij betreft.

Ik zou graag iets willen schakelen vanaf de router. Dus als ik op de router bijvoorbeeld een appje run, die praat weer over de i2c met de atmega8, en die zet bijvoorbeeld een led aan die op de atmega zit.

Ik ben wel een hoop tegengekomen over atmega programmeren, maar dat programmeren van de i2c communcatie is me helemaal niet duidelijk, ik vind allemaal informatie die maar van een kan uitleg geeft. ik zou iets moeten hebben als voorbeeld wat dus de master en de slave side laat zien. Wat moet er op de masterside in C gedaan worden, en wat moet er op de slave side in C gedaan worden. Bestaan er van die voorbeelden? tutorials? howto's?

Acties:
  • 0 Henk 'm!

  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 08-09 13:10

IWriteCode

Less = more

Volgens mij kan je het beste beginnen met het aansturen van een kant en klare i2c chip. Dan hoef je je in eerste instantie alleen te focussen op de router kant van het verhaal. Als dat dan vervolgens helemaal werkt, dan heb je de router kant op orde. Vervolgens ga je aan de slag met je atmel om die als client aan de praat te krijgen.

Als i2c client zou je iets van een PCF8574 kunnen gebruiken. Dat is een redelijk standaard 8 bits I/O expander. Daar kan je bij philips (gratis) samples van aanvragen.

Less = more


Acties:
  • 0 Henk 'm!

Verwijderd

Jamal schreef op maandag 05 mei 2008 @ 09:54:
Volgens mij kan je het beste beginnen met het aansturen van een kant en klare i2c chip. Dan hoef je je in eerste instantie alleen te focussen op de router kant van het verhaal. Als dat dan vervolgens helemaal werkt, dan heb je de router kant op orde. Vervolgens ga je aan de slag met je atmel om die als client aan de praat te krijgen.

Als i2c client zou je iets van een PCF8574 kunnen gebruiken. Dat is een redelijk standaard 8 bits I/O expander. Daar kan je bij philips (gratis) samples van aanvragen.
Hmm, het lijkt mij gewoon mogelijk om te beginnen met een Atmega8.. Het is slechts een kwestie van wat code op de router die praat met de atmega, en wat code op de atmega die praat met de router en met de devices.

Die philips chip zou ik toch ook na kunnen maken met mijn atmega? Trouwens, het is een port expander, dat wil zeggen alleen output signalen? Dat zou geen optie zijn. wat is een robot met alleen output..

Acties:
  • 0 Henk 'm!

  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 08-09 13:10

IWriteCode

Less = more

Natuurlijk is dat mogelijk, maar door het probleem in twee stukken op te delen, wordt het volgens mij een stuk minder lastig. En het is idd een kwestie van code op de router en code op de atmel die met elkaar praat. Alleen de 'slechts' ben ik het niet helemaal mee eens :)

En die I/O expander is een Input/Output expander, dus zowel input als output. In de datasheet van m'n vorige posting staat ook het een en ander over de timing e.d. die bij I2C spelen... dus zeker de moeite van het doorkijken waard.

En het punt is niet dat je dat ding moet / gaat gebruiken, maar dat je dus een goed werkende I2C client pakt om je I2C master (router) te ontwikkelen / testen. Als je weet dat je master dan in orde is, kan je daarna je client (atmel) gaan ontwikkelen.

Edit: Nog een document met interessante informatie/uitleg over I2C: I2C handleiding van philips

[ Voor 16% gewijzigd door IWriteCode op 05-05-2008 12:20 ]

Less = more


Acties:
  • 0 Henk 'm!

Verwijderd

Jamal schreef op maandag 05 mei 2008 @ 12:15:
Natuurlijk is dat mogelijk, maar door het probleem in twee stukken op te delen, wordt het volgens mij een stuk minder lastig. En het is idd een kwestie van code op de router en code op de atmel die met elkaar praat. Alleen de 'slechts' ben ik het niet helemaal mee eens :)

En die I/O expander is een Input/Output expander, dus zowel input als output. In de datasheet van m'n vorige posting staat ook het een en ander over de timing e.d. die bij i2c spelen... dus zeker de moeite van het doorkijken waard.

En het punt is niet dat je dat ding moet / gaat gebruiken, maar dat je dus een goed werkende i2c client pakt om je i2c master (router) te ontwikkelen / testen. Als je weet dat je master dan in orde is, kan je daarna je client (atmel) gaan ontwikkelen.
Aha op die manier, ik ben het daar wel mee eens. Ik zal er eens achteraan gaan, kijken of ik zo'n philips chipje kan krijgen ergens.

Thanks!

Acties:
  • 0 Henk 'm!

Verwijderd

Goed nieuws, ik kan de PCF8574AP Remote 8-bit I/O expander for I2C-bus bestellen, en waarschijnlijk ook voor weinig. Onderdelen kom uit china via een actie op samenkopen.net. Ik had daar al wat besteld, dus deze kunnen dan mooi mee met dezelfde bestelling.

Zover ik weet is de PCF8574AP en de PCF8574 precies hetzelfde, ik krijg namelijk gewoon de PCF8574 datasheet van Philips als ik zoek op de PCF8574AP versie..

Wat ik even niet begrijp van deze iC zijn de A0, A1 en A2 pinnen. Hiermee geef ik de iC een adres? Wacht even, dat doe ik toch via I²C dmv de SDA en SCL pinnen? Waar connect ik die A0~2 pinnen aan dan?

Acties:
  • 0 Henk 'm!

  • Paul
  • Registratie: September 2000
  • Laatst online: 12-09 20:09
Die pull je up of down (of als er intern al weerstandjes zitten, connect je die rechtstreeks met GND of VCC, moet je even in de datasheet kijken), om zo te bepalen op welk adres die chip moet luisteren :)

Je hebt 3 pinnetje, dus kun je 8 van die chips (of andere, als die de rest van het adres hetzelfde hebben) op 1 I2C-bus aansluiten. Over SDA/SCL stuur je dan vervolgens een adres waarmee je aangeeft dat je _die_ chip aan wilt spreken, maar die chip moet zelf wel weten wie hij is :)

Zonder deze lijnen zit het adres dus 100% ingebakken in de chip. Met Dallas 1wire niet zo'n probleem, die adressen zijn 64bit en dus vrijwel gegarandeerd uniek. I2C echter heeft echter over het algemeen slechts 7 adresbits, en met 128 apparaatjes wereldwijd kom je niet ver :)

"Your life is yours alone. Rise up and live it." - Richard Rahl
Rhàshan - Aditu Sunlock


Acties:
  • 0 Henk 'm!

Verwijderd

Paul Nieuwkamp schreef op dinsdag 06 mei 2008 @ 14:44:
Die pull je up of down (of als er intern al weerstandjes zitten, connect je die rechtstreeks met GND of VCC, moet je even in de datasheet kijken), om zo te bepalen op welk adres die chip moet luisteren :)

Je hebt 3 pinnetje, dus kun je 8 van die chips (of andere, als die de rest van het adres hetzelfde hebben) op 1 I2C-bus aansluiten. Over SDA/SCL stuur je dan vervolgens een adres waarmee je aangeeft dat je _die_ chip aan wilt spreken, maar die chip moet zelf wel weten wie hij is :)

Zonder deze lijnen zit het adres dus 100% ingebakken in de chip. Met Dallas 1wire niet zo'n probleem, die adressen zijn 64bit en dus vrijwel gegarandeerd uniek. I2C echter heeft echter over het algemeen slechts 7 adresbits, en met 128 apparaatjes wereldwijd kom je niet ver :)
Ah op die manier, het werkt dus een beetje als bij scsi schijven. daar heb je dan 4 jumpers = adres 1, 2, 4 en 8 waarmee je dan je scsi ID kunt instellen van 1 tot 15.

Komt wel in orde denk ik dan zo ;) Dankje!

Acties:
  • 0 Henk 'm!

Verwijderd

Je kunt ook de MCP23016 i2c I/O expander gebruiken, dan heb je gelijk 16 I/O's. Te koop bij voti.

Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

Ik heb trouwens op de koninginnedag zo'n Experia Siemens SX551-doos gevonden. Ik las een tijd terug dat er meerdere mensen 'iets' mee wilden doen, dus ik deel de volgende informatie even: Bij mij was het zo dat als je 'remote access' (ofzo) aanzette voor alle IPs, je daarna kon telnetten naar het apparaat op poortje 8081. Login met admin, pw leeg, en je hebt een vrij uitgebreide telnet-interface tot je beschikking :)

Ik heb mijn unit trouwens ook alweer gesloopt :/ Maar es kijken of ik hiero in de buurt (Enschede) nog goedkoop aan een vervanger kan komen; 't zijn leuke dingen.

[ Voor 16% gewijzigd door Sprite_tm op 06-05-2008 15:29 ]

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 08-09 13:10

IWriteCode

Less = more

Sprite_tm schreef op dinsdag 06 mei 2008 @ 15:28:
heb mijn unit trouwens ook alweer gesloopt :/ Maar es kijken of ik hiero in de buurt (Enschede) nog goedkoop aan een vervanger kan komen; 't zijn leuke dingen.
Gesloopt? Goed dood? Niet te herstellen?

Less = more


Acties:
  • 0 Henk 'm!

Verwijderd

Hmm, de PCF857 hebben ze ook bij Voti, ik zie dat ie zelfs duurder is dan de MCP23016. Ik zie ook in de datasheet van de MCP23016 een clock pin, CLKIN. Zie http://www.digchip.com/da...6561&part-number=MCP23016

Nu heb ik de datasheet gelezen, (page 4) daar staat dat ik een externe clockgenerator nodig heb. Een kristal dus? Welke kristal moet ik daarbij kopen dan? Is het gewoon hoe sneller (meer mhz) hoe beter, of zijn er factoren waarmee ik rekening moet houden?

Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

Jamal schreef op dinsdag 06 mei 2008 @ 16:02:
[...]

Gesloopt? Goed dood? Niet te herstellen?
Iets met druk bezig met jtag en een uitgeschoten 12V-kabel. Het ding was al stuk (als in: verkeerd geflashed) vandaar dat ik met jtag bezig was, maar na de 12V-behandeling wilde 'ie niet meer in jtag-debug-mode terechtkomen dus is 'ie compleet niet meer te reflashen. Ach, hij heeft me maar een tientje gekost en de volgende Experia-box waar ik mijn grubby hands op kan leggen kan ik in 1 keer laten doen wat ik wil, dus waardevol is het wel geweest.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

Verwijderd

Op de site van Sunspot bij item 6 I²C notes staat een voorbeeld code om de PCF8574 aan te sturen, namelijk http://www.sunspot.co.uk/...ot/PCF8574_addr_byteout.c

De code begrijp ik eigenlijk vrijwel helemaal wel, mede door de comments en mede door mijn lichte ervaring met C++. Een ding volg ik even niet. Er staat:
code:
1
write(i2c,buf,1);

buf is een integer, die wordt aan het begin van de code gespeceficeerd. Het programma werkt als volgt. Eerst geef je de naam op van dit programma dus, met daarachter 2 inputs. De eerste input is de adres byte, daarnaa volgt de byte bestaat uit een getal tussen 0 en 255. Deze gooit dan 8 poorten op de chip maximaal open.

Dit stuk begrijp ik, ik heb binair rekenen op school gehad (thank god..) Wat ik me alleen af vraag, en dat is de main clue van het verhaal, de rede waarom ik zo'n chip zou kopen. Wat gebeurt er in de chip zelf. Ik zou met deze chip gan klooien om het deel op de router alvast running te krijgen. Oke, ik koop dus zo'n chip, ga wat experimenteren met de outputs dmv dit scriptje.

Het enige wat ik dan weet is dat de router goed functioneerd op I²C gebied, ik ga de chip dus ook kopen om dat te kunnen testen. Echter blijf ik dan nog steeds hangen op het gedeelte wat op de Atmega8 moet komen. Ik kan van alles versturen over de I²C naar de Atmega, ik kan de Atmega8 ook van alles laten doen door hem bits aan te leveren. Probleem is dan nog steeds hoe kom ik er achter hoe dat C++ deel en I²C werkt. Zijn hier geen gespecialiseerde websites over? Ik leer nu alleen vanuit 1 kant werken... Ik kan best wel achter het I²C gedeelte aan gaan rennen wat ik op de router kan versturen, ik kan ook best wel mezelf gaan verdiepen in het TWI (I²C) deel van de Atmega8, de main question blijft dan nog steeds, hoe knoop ik die 2 uber mooie devices aan elkaar.

Als ik alleen dat al zou hebben is het grote deel al klaar, Ik kan dan beginnen met mijn eigen protocol ontwerpen waarmee ik via de Atmega hardware aanstuur en uitlees....

Edit:

Ik heb er nu op dit moment ff geen tijd voor, maar dit vond ik op internet na een enorme string in google te laden. http://www.atmel.com/dyn/...rod_documents/doc2565.pdf

Ik denk dat ik hier zeker wat mee kan, hier staat oa in hoe ik een Atmel als Slave speceficeer. Inc wat code voorbeeld.. Heb trouwens net de pull-up resistors geplaatst op mij breadboard. Ook maar metteen wat breadboard draadjes besteld, ze beginnen schaars te worden.. :)

Edit2:

Hier heb ik trouwens mij verzameling staan aan data wat ik allemaal verzamelt heb afgelopen tijd mbt dit router projectje.. Maybe iets voor in de TS?

http://cyberdyne.hopto.org/br6104/

[ Voor 13% gewijzigd door Verwijderd op 06-05-2008 21:15 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op dinsdag 06 mei 2008 @ 16:13:
Hmm, de PCF857 hebben ze ook bij Voti, ik zie dat ie zelfs duurder is dan de MCP23016. Ik zie ook in de datasheet van de MCP23016 een clock pin, CLKIN. Zie http://www.digchip.com/da...6561&part-number=MCP23016

Nu heb ik de datasheet gelezen, (page 4) daar staat dat ik een externe clockgenerator nodig heb. Een kristal dus? Welke kristal moet ik daarbij kopen dan? Is het gewoon hoe sneller (meer mhz) hoe beter, of zijn er factoren waarmee ik rekening moet houden?
Allen R en C nodig, staat ook in het datasheet

Acties:
  • 0 Henk 'm!

Verwijderd

Ik deel even wat linkjes met jullie. De meeste sites gaan specefiek over I²C / TWI in combinatie met een AVR. AVR kan zowel slave als master zijn in een I²C systeem, ik heb eigenlijk als doel gehad te zoeken naar slave modus, maar er staat ook wat leesvoer over het master gebeuren.. Zodra er wat tijd is ga ik deze info doorspitten.

http://www.mcselec.com/in...task=view&id=32&Itemid=41
http://www.avrprojects.net/articles.php?lng=en&pg=72
http://members.shaw.ca/climber/avri2cdebug.html
http://homepage.hispeed.c...__pfleury__ic2master.html
http://www.lcdforums.com/...8b207355ff360e2ada090e01b
http://www.avrfreaks.net/...printview&t=51326&start=0
http://www.nalanda.nitc.a...atmel/acrobat/doc1450.pdf
http://www.hs-augsburg.de...c2000_2i2c_8c-source.html

Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 15:51
Zo'n SX5511 doos heb ik hier ook in gebruik. Niet als modem, maar als switch :P DHCP uitgezet, en dan gewoon 1 van de 4 UTP poorten als ingang gebruiken, en de overige 3 als uitgang.

Binnenin zit trouwens een miniPCI kaart :P
Die heb ik eruit geript en in m'n laptop gestopt.
Na enig onderzoek bleek de kaart gebaseerd te zijn op de Atheros AR5212 chip, en hij ondersteund ook 108Mbps :D
Pagina: 1 ... 9 10 Laatste

Let op:
Lees eerst dit topic goed door. Dit is geen 'vraag maar raak' topic. Maak dus eerst gebruik van de naslagwerken (Google etc.) en houdt het vooral on-topic en schoon.