Hallo, Ich habe schon viele unterschiedliche Mikrocontroller (STM32, ATSAM, NXP) programmiert, habe ich auch große Sammlung Zuhause. Aber diese Single-Chip Linux Welt hat eine andere Tür geöffnet. z.B. Den Milk-V Duo (CV1800B-SG200x MCU) kann man einerseits bare-metal wie Mikrokontroller programmieren, und gleichzeitig daneben Linux für Storage oder Connectivity laufen lassen. (Ich habe schon ein Data-Logger Projekt auf Milk-V Duo basis.) Der Milk-V Duo mit Ethernet braucht nur 60 mA, weniger als viele Cortex-M7 Mikrokontroller. Und es ist sehr billig auch. Ähnlich zu Milk-V Duo (oder Lichee RV Nano) ist der Luckfox Pico (und seine Variante) mit dem Rockchip RV1103/RV1106 Single Chip Linux. Aber der hatte keine richtige SW support oder MCU Manual. (Die HW Reference ist schon erreichbar, aber erst viel Jahre später) Der RV1106 ist nicht besonders besser als the SG2002, und ohne dokumentation hat mich es nicht interessiert. Seit paar Monate gibt aber der Luckfox Lyra Serie. Diese nutzen den Rockchip RK3506 Mikrokontroller. Der RK3506G2 hat intern: - 128 MB RAM - 3 x ARM Cortex A7 @ 1.2 GHz (?) - 1 x Cortex-M0 @ 200 MHz, mit 48 k dedizierten SRAM - Flexible IO Matrix ( = fast jeder pin kann alles) - Bessere Periferien als der SG200x Obwohl keinen Reference Manual erreichbar war, habe ich einen Luckfox Lyra Plus gekauft (für 17 EUR von amazon.de). (Idle Strom hier ist auch sehr niedrig, gegen 80 mA. Beim starten habe ich 110 mA gesehen.) Auf Papier ist es viel besser als der SG200x (in Milk-V Duo). Aber mir wäre wichtig den Cortex-M0 Core nutzen können, z.B um einen External SPI ADC zu treiben. Ich habe ziemlich viel Zeit investiert um für den RK3506 einen guten Linux und Entwicklungsumgebung zu haben. Meinen eigenen Kernel mit Yocto Linux bootet in 5 Sekunden. Ich habe angefangen ein Linux Remote Processor Kernel Modul für den Cortex-M0 Kern von RK3506 zu entwickeln. Es sind alle wichtige teile da, aber leider der M0 Kern startet immer noch nicht. Seit paar Wochen einen Reference Manual auch erreichbar, aber damit konnte ich auch nicht weiter kommen. Ich habe ein Projekt auf github kreirt, was alles nötige enthaltet, beschreibt: https://github.com/nvitya/rk3506-mcu Ich suche hilfe, vielleich könnte jemand von euch mir dabei helfen. Alle Infos sind auf dem github Projekt Page. Wenn das funktionieren würde, hatten wir einen sehr universellen Hybrid Mikrokontroller und ich werde dann wahrscheinlich beispiele publizieren. lg. nvitya
QFN128. Immerhin, kein BGA. Und kann man sich von jlcpcb auch gleich bestücken lassen. Aber "kein Reference Manual verfügbar"? Möchte man wirklich Zeit in so etwas versenken?
Die Hauptfrage ist wohl eher wofuer man so ein Monster ganz genau braucht. Den so eine krasse Stromaufnahme von 80mA und eine Bootzeit von 5s mache das Teil ja fuer die meisten kleinen Anwendungen unbrauchbar. Das muss einem schon was spezielles vorschweben wofuer man z.B die Netzwerkfaehigkeiten von Linux braucht. Vanye
Datasheet und reference manual: https://github.com/DeciHD/rockchip_docs/tree/main/rk3506 Jemand hat geschafft auf den RV1106 (Luckfox Pico Max) den RV32I Core ins Lauf zu bringen: https://github.com/luyi1888/rv1106-mcu Also ich denke, hier nur ein wenig fehlt. Mit dem kernel module ich kann diese Trusted Firmware auch aufrufen. Wenn der rk3506 funktioniert, vielleicht kaufe ich einen RV1106 und ajdustire den remote processor treiber für diesen auch. Aber der RK3506 ist viel besser für mich. Beim CV1800/SG2002 (Milk-V Duo) funktioniert schon alles. So einfach ist soeinen MCU zu einsetzen aber nicht. Die brauchen: - SDCARD oder NAND Flash (für das booten) - 1.8 V Versorgung - 1.35 V Versorgung - 0.9 V Versorgung Schematics für Milk-V Duo: https://github.com/milkv-duo/duo-files/tree/main/duo/hardware Aber man kann das Modul einsetzen, wie ich das gemacht habe. Für den Milk-V Duo gibt auch Arduino library! Der Linux kern lauft mit Linux und den RT Kern kann man mit Arduino programmieren. Wenn jemand diesen welt nicht kennt, dann empfehle ich den Milk-V Duos anzuschauen (besser den Milk-V Duo 256). Datentausch zwischen die zwei kerne einfach über Shared Memory, das Messagebox ist nicht unbedingt notwendig.
Unseren ganz konkreten Applikation war das ein Netz / Verbrauch monitor. Extenen SPI ADC + risige Daten zu speichern. Erstmal haben wir mit einem IMXRT versucht. Die SD-Karte und USB Storage Treiber von NXP waren Instabil, also wir haben auf Linux wechselt.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.