Router

In diesem selbstgewählten Projekt wird der Versuch unternommen, einen einfachen Hardwarerouter umzubauen. Als Grundsystem wählte ich den Edimax BR6104K.Diesen erwarb ich für 8EUR via ebay (Orginalverpackt).


Technische Daten:
  • ADM5120 Controlle
  • 175Mhz / 225MIPS (Million Instructions per second)
  • 32Bit MIPS Architektur
  • 5 x IEEE 802.e FastEthernet-Schnittstellen
  • 2 SDRAM-Bänke für maximal 128MB (dieses Modell hat 16MB)
  • 2 Flash-Bänke mit maximal 4MB (dieses Modell hat 2 MB)
  • 2 AMBA UART Schnittstellen
  • AHB-PCI Bridge
  • USB 1.1 HostController
Betriebssystem: über diverse Patches ist es mäglich einen 2.4 oder 2.6 Linux-Kernel darauf zumlaufen zu bringen.

Schnittstellen:
Seriell:
Es besteht über eine Schaltung mittels eines MAX232 eine serielle Konsole (serielle Schnittstelle) anzubringen. Es ist eine Schaltung mit dem MAX232 notwendig, da der Controller nur mit maximal +/- 3 V Signalen arbeitet, aber bekannterweise die Serielle Schnittstelle des PCs mit +/- 12V arbeitet. Eine andere Alternative zu der MAX232-Schaltung ist ein Schnittstellenkabel eines alten Siemenshandys, da ist quasi dsa gleiche realisiert.

USB:
Durch die Unterstützung des Controllers ist es möglich an den Router USB zu bringen. Da bei der Firma Edimax auch Varianten des Routers mit Serienmässiger USB-SChnittstelle gibt, sind die Pads auf der Platine schon vorhanden. Es müssen "nur" noch die entsprechenden Bauteile plaziert werden.

JTAG:
Die JTag-Schnittstelle ist eine Debugging-Schnittstelle. Hierdurch ist es möglich Informationen aus der Interna des CPUs zu bekommen. es besteht die Möglichkeit direkt die CPU zu programmieren, die Registger auszulesen bzw neuzubeschreiben. Desweiteren hat man hierbei auch die Möglichkeit bei einem kaputten Bootloader den Speicher mit einem Image zu befüllen. Der Edimaxrouter hat das  EJTAG v2.6 implementiert und unterstützt kein DMA.
Um mit JTAG arbeiten zu können wird ein spezielles JTAG-Kabel benötigt, dieses sit relativ einfach selber herzustellen:




Hier ist nun das JTAG to LPT mapping zu sehen
  • TDI   - DATA3   - pin 5
  • TDO   - BUSY    - pin 11
  • TMS   - DATA1   - pin 3
  • TCK   - DATA2   - pin 4
  • nSRST - DATA0   - pin 2
  • nTRST - DATA4   - pin 6

Der 14 Pin-JTAG Header auf dem PCB hat folgende Belegung (und ist zum EJTAG-Standard konform)
  1. nTRST 
  2. GND
  3.  TDI
  4. GND
  5. TDO
  6. GND
  7. TMS
  8. GND
  9. TCK
  10. GND
  11.  nSRST
  12. n/a
  13. n/a
  14. Vcc
 
 
 
 
 
Bilder / Links/ Schaltpläne und weitere Informationen kommen sobald mal wieder Zeit sein sollte.......