ENC28J60 hänger sig
Re: ENC28J60 hänger sig
Den hängde sig fortfarande efter en viss körtid. Efter att ha hittat diverse sympton när den hängt sig vid mottagning av data och resettat antingen MAC eller hela ENC28J60 tror jag att jag fått den hyfsat stabil.
Jag körde ett test under några timmar där jag kopplat Firefox och internetexplorer samtidigt och varje browser skickade en webfrågan varje 2,5 sek och fick svar på en websida på ca 1 kB. Samtidigt pingade jag 10000 ggr och gjorde lite slumpmässiga UDP och TCP kommandon. Resultet av testet blev:
Ping: Paket: Skickade = 10000, mottagna = 10000, Förlorade = 0 (0 %),
Websidor skickade: 9077
Inte helt säker på att jag lyckats tygla den helt men det ser betydligt mer lovande ut än vad det gjort tidigare.
Jag körde ett test under några timmar där jag kopplat Firefox och internetexplorer samtidigt och varje browser skickade en webfrågan varje 2,5 sek och fick svar på en websida på ca 1 kB. Samtidigt pingade jag 10000 ggr och gjorde lite slumpmässiga UDP och TCP kommandon. Resultet av testet blev:
Ping: Paket: Skickade = 10000, mottagna = 10000, Förlorade = 0 (0 %),
Websidor skickade: 9077
Inte helt säker på att jag lyckats tygla den helt men det ser betydligt mer lovande ut än vad det gjort tidigare.
Re: ENC28J60 hänger sig
Utvecklingstid skulle jag gissa....
Funkar det ok för Rick81 så är det bara köra på.
Funkar det ok för Rick81 så är det bara köra på.
Re: ENC28J60 hänger sig
Ett tips för att simulera last är att skriva ett (perl) skript som helt enkelt laddar hem med lite slumpvald fördröjning emellan. Man kan givetvis lägga flera sådana som körs simultant.
Re: ENC28J60 hänger sig
Micke_s har helt rätt, det tar mycket tid att byta SPI till Ethernet när man har implementerat den.
Bra tips med skript men får nog bli C# istället för Perl. Har redan gjort ett program som skickar UDP paket från C# till PICen, bara att lägga till slumpmässiga sändningsinterval och slumpmässiga längder på paketen.
Bra tips med skript men får nog bli C# istället för Perl. Har redan gjort ett program som skickar UDP paket från C# till PICen, bara att lägga till slumpmässiga sändningsinterval och slumpmässiga längder på paketen.
-
- Inlägg: 8449
- Blev medlem: 15 april 2006, 18:57:29
- Ort: Typ Nyköping
Re: ENC28J60 hänger sig
Att det kostar utvecklingstid är ju självklart.
MEN om man aldrig får en stabil produkt så är ju den ärliga frågan.
När skall man sluta kasta goda timmar efter dåliga.
Dvs ju mer man felsöker desto mera timmar slösar man bort.
Till dags dato har jag aldrig hör talas om någon "rock solid" implementation av ENC28J60, dvs som fungerar i tusentals timmar med rejäl last (dock väl inom 10Mbit osv).
Många kör med tidsbaserade RESET- funktioner som startar om ENC28J60 någon eller några ggr per dygn för att få systemet stabilt eller när den inte har sett trafik på ett tag, då antar man att den har kraschat och startar om den...
I stort sett alla dess konkurrenter är tvärstabila.
Your choice....
MEN om man aldrig får en stabil produkt så är ju den ärliga frågan.
När skall man sluta kasta goda timmar efter dåliga.
Dvs ju mer man felsöker desto mera timmar slösar man bort.
Till dags dato har jag aldrig hör talas om någon "rock solid" implementation av ENC28J60, dvs som fungerar i tusentals timmar med rejäl last (dock väl inom 10Mbit osv).
Många kör med tidsbaserade RESET- funktioner som startar om ENC28J60 någon eller några ggr per dygn för att få systemet stabilt eller när den inte har sett trafik på ett tag, då antar man att den har kraschat och startar om den...
I stort sett alla dess konkurrenter är tvärstabila.
Your choice....
Re: ENC28J60 hänger sig
Fördelen med ENC28J60 är att den är välkänd pga. ålder.
Nackdelen är att den är sjuk på så många sätt att det är skrämmande... Man blir ju mörkrädd av att läsa erratan.
Jag kan förstå att det kan ta sin lilla tid att fixa en LAN<->SPI funktion men att lägga den tid på att lappa ett såll känns inte riktigt meningsfullt.
Nackdelen är att den är sjuk på så många sätt att det är skrämmande... Man blir ju mörkrädd av att läsa erratan.
Jag kan förstå att det kan ta sin lilla tid att fixa en LAN<->SPI funktion men att lägga den tid på att lappa ett såll känns inte riktigt meningsfullt.