Hey Leute,
ich habe hier ein ganz interessante Möglichkeit gefunden, um das leidige "full-duplex Switch" Thema in den Griff zu bekommen. Hierfür ist allerdings etwas Bastelarbeit und ein Switch mit geeignetem Controller nötig. In meinem Fall basiert die Modifikation auf einem Netgear FS105 Switch der einen Marvell LinkStreet 88E6060 Controller besitzt.
Zunächst habe ich nach einer Möglichkeit gesucht durch zusätzliche externe Beschaltung einen der Ports auf 10 MBit mit forciertem full-duplex Modus zu klemmen. Wäre zwar theoretisch möglich, allerdings war mir das Ganze zu unflexibel und ich hatte zudem keine Lust auf dem PCB rumzuschnitzen.
Netterweise besitzt der Switch Controller ein SMI (Serial Management Interface), welches den Zugriff auf die internen Register und somit eine softwareseitige Konfiguration erlaubt. An dieses habe ich einen kleinen PIC (PIC16F84A) drangehängt, den ich noch rumliegen hatte und einen SMI Host implementiert. Das SMI benutzt lediglich zwei Leitungen (MDC - Clock und MDIO - Data), der Lötaufwand hält sich daher in Grenzen und außerdem kann man das Ganze wieder recht einfach entfernen.
Der PIC lädt nach dem Start die neue Konfig und geht anschließend in den Sleep-Mode. Auf diese Weise wird einer der Ports fest auf 10 MBit full-duplex geklemmt. Hab das Ganze getestet und es funktioniert problemlos ! Hier mal ein Foto von dem umgebauten Switch:
http://wiki.tuxbox.org/wiki/index.php/B ... MIHost.jpg
Sofern man Lust und Laune hat, kann man die Geschichte noch weiter aufbohren und einen Controller mit UART einsetzen (PIC16F628A beispielsweise ist pinkompatibel zum PIC16F84A und hat zudem eine deutlich bessere Ausstattung) und ein kleines Config-Interface mit GUI aufsetzen, mit dem man den Switch dann völlig frei konfigurieren kann. Da wird der 20€ Billigheimer-Switch zum professionellen Equipment ;D
Die Firmware ist in Assembler implementiert (Register Read und Write) und ist nicht sonderlich komplex. Eine Portierung auf andere Plattformen sollte daher kein Problem darstellen. Einsetzbar ist eigentlich jeder 8Bit Furzcontroller, sollte lediglich 3,3V kompatibel sein und mindestens zwei IO-Pins aufweisen (einer der beiden mit Open-Drain Ausgang für die Data-Line). Ich würde am besten einen mit internem Oszillator nehmen, da reduziert sich die externe Beschaltung.
Wenn Interesse besteht, kann ich die Firmware gerne hochladen (hab irgendwie keine Möglichkeit gefunden Dateien anzuhängen).
Greets
HowTo: Self-made full-duplex Switch
-
- Neugieriger
- Beiträge: 14
- Registriert: Dienstag 16. März 2010, 12:41
HowTo: Self-made full-duplex Switch
Zuletzt geändert von zaphod333 am Dienstag 27. April 2010, 23:55, insgesamt 3-mal geändert.
-
- Administrator
- Beiträge: 2675
- Registriert: Donnerstag 28. September 2006, 19:18
Re: HowTo: Selfmade full-duplex Switch
Stells doch einfach ins Wiki. Da gehen nicht nur Bilder hochzuladen und das Thema dazu ist ja schon da und könntest es ergänzen: FullDuplexUmbau
-
- Neugieriger
- Beiträge: 14
- Registriert: Dienstag 16. März 2010, 12:41
Re: HowTo: Selfmade full-duplex Switch
Done... -> FullDuplexUmbau#Self-made_full-duplex_Switch
Feedback ausdrücklich erwünscht
Feedback ausdrücklich erwünscht
-
- Einsteiger
- Beiträge: 193
- Registriert: Donnerstag 11. Mai 2006, 09:26
Re: HowTo: Selfmade full-duplex Switch
@zaphod
Nette Sache das !
So'n Netgear-Teil liegt bei mir glaub ich auch noch irgendwo rum.
Wobei ich's aber dann doch lieber mit dem WLan-Router machen würde, der da schon steht,
sonst hab ich noch ne Büchse da rumstehen.
Aber da zickt im Moment noch die Firmware...
Greez !
Nette Sache das !
So'n Netgear-Teil liegt bei mir glaub ich auch noch irgendwo rum.
Wobei ich's aber dann doch lieber mit dem WLan-Router machen würde, der da schon steht,
sonst hab ich noch ne Büchse da rumstehen.
Aber da zickt im Moment noch die Firmware...
Greez !