Seite 1 von 5
LPCxxxx und Ethernet
Verfasst: 15. Mär 2020, 01:42
von Tobi
Hallo zusammen,
ich werde voraussichtlich bald ein Projekt starten, in dem ich u.a. Ethernet (UDP) und KNX an einen ARM verwenden werde. Um das ganze dann auch SELFBUS-Kompatibel zu gestalten, möchte ich einen NXP-ARM verwenden. Hier gibt es nun mehrere Punkte, die ich im ersten Schritt bedenken bzw. dann auch entscheiden muss.
Verwenden des LPC1115:
- unterstützt KEIN Ethernet
- Ethernet über "Spezial-IC" bspw. W5100 möglich:
- Eventuelle Bugs im TCP/IP Stack können nicht behoben werden
Als alternativen NXP-ARM mit Ethernet habe ich den LPC1769/68/67/66/64 gefunden:
- Portieren/Anpassung der sblib -> Aufwand?!
- Gehäuse: LQFP-100 -> vermutlich (für "Anfänger") schwer zu löten
- TCP/IP SW-Stack vorhanden
Für SELFBUS könnte das interessant sein, weil man durch eine Erweiterung/Anpassung meines Projektes, ein IP-GW entwickeln könnte. Somit benötigt man keinen RPi mehr (jedenfalls nicht als IP-Router/GW). Ehrlich gesagt weiß ich jedoch noch nicht so ganz, wie komplex diese Erweiterung wäre. Hier könnte man eventuell den Source-Code von KNXD/EIBD angucken.
Meine Fragen:
- Gibt es Vorschläge, wie ihr hier vorgehen würdet (LPC1115+"Speziel-IC" oder LPC176x oder einen ganze anderen Weg)?
- Hat eventuell schon jemand Erfahrungen zu dem Thema und kann Tipps geben?
Danke und viele Grüße
Tobi
Re: LPCxxxx und Ethernet
Verfasst: 16. Mär 2020, 15:02
von Mirko
Hallo Tobi,
ich bin auch seit 2 Jahren dabei demnächst genau so ein Projekt zu starten
Meine Recherchen dazu haben ergeben, dass die meisten Controller nur einen Ethernet MAC enthalten. Da ist dann zusätzlich ein Physical Interface Chip (PHY) nötig, der nicht nur Platz benötigt, sondern auch schwer zu bekommen ist. Beim LPC1769 verhält es sich genauso. Dann könnte man auch einen ESP32 (OK, ist kein ARM) nehmen und hätte noch WLAN und Bluetooth mit an Board.
Ich würde da eher auf ein fertiges W5100, besser W6100 (IPv6 fähig) Board setzen. Man könnte auch über den ENC28J60 nachdenken. Ist nicht mehr so taufrisch aber 10MBit Ethernet braucht deutlich weniger Strom.
Mein aktueller Favorit ist der W7500P, eine Kombi aus einem W5500, einer PHY und einem ARM M0 in einem 64 LQFP Gehäuse und das für 3,81EUR inkl. Steuer. Es gibt auch ein bezahlbares Entwicklerboard im WizNet EU Shop.
Grüße
Mirko
Re: LPCxxxx und Ethernet
Verfasst: 16. Mär 2020, 22:50
von Tobi
Hi Mirko,
danke für deine Infos!
Ja, das mit dem PHY-Chip ist mir auch schon aufgefallen. Aber interessant, was WizNet da alles im Angebot hat. Danke für die Auflistung. Eventuell wäre es dann aber für SELFBUS "besser" den LPC1115 und dann einen separaten Ethernet (TCP/IP) IC zu verwenden. Der von dir genannte ENC28J60 von Microchip wäre eventuell am besten geeignet. 10MBit reichen ja völlig aus, und den gibts auch bei reichelt...
Viele Grüße
Tobi
Re: LPCxxxx und Ethernet
Verfasst: 17. Mär 2020, 08:55
von Mirko
Und den ENC gibt es sogar als DIL
Allerdings ist der 25MHz Quarz für Parallelresonanz schwierig zu bekommen. Reichelt hat ihn aber scheinbar - zumindest als SMD Variante.
Ich würde da eher auf die fertigen China-Module setzen. Die sind günstiger als die Einzelteile und wenn es unbedingt ein Eigendesign sein soll, kann man die Bauteile auch dort herunter löten. Eine Heißluftstation ist sowieso eine prima Investition, wenn man mit SMD arbeiten möchte.
Kritisch könnte aber sein, dass der ENC keinen IP Stack enthält, d.h. der Prozessor hat da einiges zu tun. Ob das parallel zur Echtzeitverarbeitung für die KNX Dekodierung klappt, muss man ausprobieren.
Re: LPCxxxx und Ethernet
Verfasst: 17. Mär 2020, 11:46
von Tobi
Ok, ich hätte mal das Datenblatt lesen sollen, bevor ich etwas schreibe
Ich dachte, dass der ENC, wie die China-ICs, auch einen HW-TCP/IP Stack haben.. Du hast vermutlich recht. Das wird der LPC1115 vermutlich nicht alles schaffen...
Aus meiner Sicht bleiben dann die folgenden Möglichkeiten:
- W7500P -> ARM M0 + Ethernet + TCP/IP alles zusammen
- LPC1115 + W6100 (oder ein anderer Ethernet-TCP/IP-WizNet-IC)
- LPC176x + PHY
- SW-TCP/IP -> Ich glaube da gibts einen "fertigen" von NXP direkt
Ich habe nur "Bauchschmerzen" bei der Frage, wie lange es den W5100/W6100 geben wird, oder ob der dann in den nächsten Jahren abgekündigt werden wird. Andereseits kann man auch argumentieren, dass es dann vermutlich einen vergleichenbaren IC geben, und sich die Anpassungen (SW und HW) in Grenzen halten wird.
Ich gucke mir nochmal die Möglichkeiten an, und gucke dann, wie ich mich entscheide.. Danke nochmal für die Infos..
Heißluftstation ist natürlich vorhanden
Viele Grüße
Tobi
Re: LPCxxxx und Ethernet
Verfasst: 17. Mär 2020, 12:53
von Mirko
Dann werfe ich mal noch einen in den Ring:
NXP bietet auch recht schöne Dual-Cores an z.B. LPC54114. Da hätte man dann einen M0+ Kern für das Baseband-Prozessing und einen M4 fürs Ethernet. Der könnte mit seinen 100MHz evtl. auch kräftig genug für TLS sein.
Als Addon gibt's dann noch USB dazu fürs Firmware-Update oder die Erstkonfiguration.
Dann ist da noch die Geschichte mit der Potentialtrennung. Da sind zwar die Ethernet-Übertrager, die genügen aber sicher nicht der SELV Spec. Das heißt, man muss da noch eine Trennung zw. KNX und Ethernet/USB einbauen.
Da wäre zum einen die Bastellösung aus dem Raspi-Interface - funktioniert ganz gut, macht bei mir aber Ärger, wenn ich den Raspi vom Strom nehme - oder man nimmt z.B. den TPUART, der aber teuer ist. Eine andere Idee ist, zwei getrennte Controller zu verwenden z.B. einen billigen M0+ und einen mit Reserven fürs Ethernet.
Grüße
Mirko
Re: LPCxxxx und Ethernet
Verfasst: 17. Mär 2020, 13:07
von Doumanix
Kurze Anmerkung zum TP-UART : Der alte TP-UART ist recht teuer, ja. Kostet inkl. Versand auf jeden Fall über 10 EUR.
Allerdings gibts ja neure Lösungen - die zugegebenermaßen nicht mehr so einfach von Hand zu löten sind. Siehe
https://www.st.com/en/interfaces-and-tr ... stknx.html , welcher auch schon in
viewtopic.php?f=15&t=468 angesprochen wurde.
Re: LPCxxxx und Ethernet
Verfasst: 17. Mär 2020, 14:11
von Tobi
Der LPC54114 hat aber kein Ethernet-MAC, oder? Benötigt also bspw. noch den ENC als MAC+PHY, wenn ich das richig verstehe. TCP/IP Stack gibts dann glaube ich auch von Microchip?!
Bzgl STKNX:
Ja, der ST-KNX-IC hat im Gegensatz zum TPUART ein Bit-Interface. Von der SW also komplexer anzusprechen, als der TPUART. Ist dadurch aber auch vielseitiger. Bei meiner letzten Mouser-Bestellung habe ich mir mal 3 Stück mitbestellt. Habe aber noch nichts damit gemacht. Ich hatte die Idee, dass man ggf. den STKNX als Alternative zur aktuellen SELFBUS-KNX-Schaltung auf die Boards bringt, sodass man beim Löten selber entscheiden kann, was man bestücken möchte und dann entsprechend jumpert. In der SW müsste dann auch ein "Schalter" sein, ob man STKNX oder SELFBUS-KNX kompilieren möchte. Irgendwie so hab ich mir das vorgestellt
Vorausgesetzt, dass genug Platz auf den Platinen ist
Meine Hoffnung war nämlich auch, dass wir dadurch mit der "originalen" KNX-HW mithalten können, was die Buskommunikation angeht (ich hatte ja bspw. Probleme mit knxd+TUL-Stick beim parametrieren mit der ETS, was ich vorher bei originaler HW nie feststellen konnte -> läuft seit 6Monaten ohne Probleme)
Re: LPCxxxx und Ethernet
Verfasst: 17. Mär 2020, 15:52
von Mirko
Ja, richtig. Ob es auch einen Dual Core mit MAC gibt, habe ich nicht nachgeschaut. Ist aber vermutlich dann auch deutlich teurer als 6 EUR. Den IP-Stack für den ENC gibt es bestimmt bei Arduino, die WizNet Treiber recht sicher.
Für den STKNX hatte ich mal ein Breakout Board angefangen. Würde vielleicht auch fertig werden, wenn sich hier Interesse zeigt
Die Verarbeitung des QFN Gehäuses stellt aber sicher eine größere Hürde beim Nachbau dar, auch wenn das Löten evtl. in der Bratpfanne machbar ist.
Ein eindeutiges Pro wären die Einsparung der großen Drossel und das integrierte Schaltnetzteil (und natürlich die sauberen Logikpegel).
Eine zukunftsfähige Lösung könnte etwa so aussehen:
STKNX --> ISOlator --> LPCxxx --> Ethernet
Preislich könnte man auch ein embedded Linux Board (Z.B. Onion Omega2) statt LPC/Ethernet nehmen. Aber das wäre dann eine ganz andere Baustelle.
Re: LPCxxxx und Ethernet
Verfasst: 17. Mär 2020, 16:00
von Hendrik
Ich habe nicht alles gelesen, aber wollte kurz darauf hinweisen, dass der ENC28J60 (wie jedes Ethernet-Interface) einen nicht unerheblichen Stromverbrauch hat. Das Datenblatt spricht von 120mA bzw. 180mA beim Senden.