Forum: Mikrocontroller und Digitale Elektronik Rasp Pi Alternative


von Letters (Gast)


Lesenswert?

Hi,

Ich wollte euch mal Fragen ob ihr eine Raspberry Pi Alternative in 
kleinerer Skalierung kennt.

Ich mag den Raspberry Pi sehr gerne da man hier direkt mit einem 
Betriebssystem arbeiten kann. Also der Code auch Portabler wird. Suche 
aber für meine Verwendungen eine kleinere Skalierung gerne im Austausch 
für funktionalität. So ist der GPU völlig unwichtig für mich. Wichtig 
ist eigentlich nur die Reihe der GPIO pins und deren Connectoren ( SPI / 
I2C / UART )


Kennt ihr da geräte die in den Bereich. Also mit OS, klein, mit SPI / 
I2C / UART reinpassen?

von NurEinGast (Gast)


Lesenswert?


von Letters (Gast)


Lesenswert?

Das DIP Modul sieht sehr brauchbar aus danke ^^

von W.S. (Gast)


Lesenswert?

Letters schrieb:
> So ist der GPU völlig unwichtig für mich.

Also, genau DAS verwundert mich. Wozu ist das ganze Raspberry denn 
nütze, wenn man den wichtigsten Teil, nämlich den Bildschirm ignoriert?

Wenn man ne Menge I/O und Peripherie haben will, dann ist eigentlich 
jeder verbastelbare uC deutlich besser geeignet als das Raspberry. 
Irgend ein Cortex im 70..120 MHz Bereich ist auch garantiert deutlich 
schneller mit seiner Peripherie als ein Raspberry, da der Bremsklotz 
"Betriebssystem" entfällt, man ausgiebig mit Interrupts arbeiten kann 
und sich nicht wie beim Raspberry mit irgendwelchen Porterweiterungen 
herumschlagen muß.

W.S.

von Noch mehr (Gast)


Lesenswert?


von Harald (Gast)


Lesenswert?

schau dir mal das Carambola bzw. Carambola 2 an 8devices.com

von Linüx (Gast)


Lesenswert?

W.S. schrieb:
> Letters schrieb:
>> So ist der GPU völlig unwichtig für mich.
>
> Also, genau DAS verwundert mich. Wozu ist das ganze Raspberry denn
> nütze, wenn man den wichtigsten Teil, nämlich den Bildschirm ignoriert?
>
> Wenn man ne Menge I/O und Peripherie haben will, dann ist eigentlich
> jeder verbastelbare uC deutlich besser geeignet als das Raspberry.

Da brauchst du dich nicht zu wundern. Das ist Arduinostyle. Man erhofft 
sich das ganze Threading usw. zu sparen oder benötigt viel Speicherplatz 
(-> 3D Animationen, etc) und versucht so fälschlicher Weise den RP als 
Mikrocontroller zu verwenden.

W.S. schrieb:
> Irgend ein Cortex im 70..120 MHz Bereich ist auch garantiert deutlich
> schneller mit seiner Peripherie als ein Raspberry, da der Bremsklotz
> "Betriebssystem" entfällt,

Wenn man natürlich nur einen vorkompilierten Kernel verwendet und da am 
besten noch ein GUI drauf hat, dann wundert mich da garnichts. Dann kann 
man getrost von einem Bremsklotz reden. Kompilierst du aber deinen 
Kernel selbst nur mit den minimalen Treiber, lässt die GUI weg und haust 
dir nen Echtzeitpatch drüber dann geht's aber ab wie Schnitzel.

Harald schrieb:
> Carambola 2 an 8devices.com

Schade dass es sowas nicht mit einem der Freescale i.MX6 gibt. Damit 
könnte man arbeiten. Gibt's aber meistens nur in so komischer Bauform 
mit 2xx pol Steckverbinder á la RAM-Riegel. Schade eigentlich.

von Nils Stec (Gast)


Lesenswert?

Linüx schrieb:

> Wenn man natürlich nur einen vorkompilierten Kernel verwendet und da am
> besten noch ein GUI drauf hat, dann wundert mich da garnichts. Dann kann
> man getrost von einem Bremsklotz reden. Kompilierst du aber deinen
> Kernel selbst nur mit den minimalen Treiber, lässt die GUI weg und haust
> dir nen Echtzeitpatch drüber dann geht's aber ab wie Schnitzel.

So ein quark. Meine Boards laufen mit dem Stock-Kernel genauso schnell 
wie mit eigenem, und nein ich bin kein Dau, ich baue mir seit bald 10 
Jahren meine Systeme selbst aus dem Source zusammen.
Und der RT-Patch macht ein System auch nicht schneller, er ermöglicht 
definierte Reaktionszeiten.

Und wenn ich die Treiber 100 Wlan Karten und 30 GPUs im Kernel habe - 
der wird deshalb nicht langsamer, die Treiber werden gar nicht erst 
geladen, wenn die HW nicht existiert.

Und mal so am Rande, er will gar keine GPU und GUI, wie kommt ihr dann 
da drauf?!

von MaWin (Gast)


Lesenswert?

> Wichtig ist eigentlich nur die Reihe der GPIO pins und deren
> Connectoren ( SPI  I2C  UART )

Wie?
Kein Ethernet, keine Festplatten, kein Display, keine Tastatur ?

Der Rasperry hat seine Begründung genau dort, wo man die vorhandenen 
Schnittstellen braucht (und dann auch ein Betriebssystem braucht um sie 
bedienen zu können).

Wenn man ohne Bildschirm und Tastatur auskommt, ist der Rasperry 
letztlich nichts anderes ein ein DSL Modem ohne DSL (und genau dort 
haben auch die ersten Bastler angefangen, das Linux nutzbar zu machen).

Auch Sat-Receiver haben oft Linux und einen Prozessor mit Festplatte und 
Ethernet oder zumindest USB, und eben dem SAT-Receiver.

Definiere also deine tatsächlichen Schnittstellenanforderungen, und 
suche dir dann eine Fertigplatine, die diese zum möglichst günstigen 
Preis enthält.

Man muß nicht alle Schnittstellen verwenden, aber wenn man mehr zahlt 
ohne sie zu verwenden ist das auch irgendwie blöd.

> nur die Reihe der GPIO pins und deren Connectoren ( SPI  I2C  UART

Klingt als ob ein AVR reicht.

von Martin P. (billx)


Lesenswert?


von Christian B. (casandro)


Lesenswert?

W.S. schrieb:
> da der Bremsklotz
> "Betriebssystem" entfällt

Naja, das hängt immer davon ab was man machen will. Erstmal braucht das 
Linux auf der Kiste quasi keine Rechenzeit, zweitens bringt so ein 
Debian (was da ja drauf läuft) schon eine Menge mit. Sprich vom 
Dateisystem bis zum (vollwertigen) Netzwerkstack ist das halt alles mit 
drin. So werden halt manche Probleme trivial lösbar.

Natürlich gibts auch Echtzeitaufgaben die man auf einem reinen 
Mikrocontroller einfacher und schneller lösen kann.

von W.S. (Gast)


Lesenswert?

Christian Berger schrieb:
> Erstmal braucht das
> Linux auf der Kiste quasi keine Rechenzeit, zweitens bringt so ein
> Debian (was da ja drauf läuft) schon eine Menge mit.

Wir reden hier von I/O, also ganz konkret von einer Breitseite Portpins 
und von Interruptprogrammen. Stell dir zum Beispiel mal ne 3 Phasen 
Motorsteuerung vor: Pro Phase ein PWM, dazu für's Ganze noch ein Timer 
mit 3 Capture/Compare-Einheiten, Pins, die bedient sein wollen ohne daß 
es in der angeschlossenen Leistungselektronik KAWOMM sagt, Interrups im 
30..40 kHz Bereich. Sowas kannst du mit nem 48 MHz Toshiba machen, aber 
nie und nimmer mit ner Applikation auf dem Raspberry.

W.S.

von klausr (Gast)


Lesenswert?

W.S. schrieb:
> Wir reden hier von I/O, also ganz konkret von einer Breitseite Portpins
> und von Interruptprogrammen. Stell dir zum Beispiel mal ne 3 Phasen
> Motorsteuerung vor: Pro Phase ein PWM, dazu für's Ganze noch ein Timer
> mit 3 Capture/Compare-Einheiten, Pins, die bedient sein wollen ohne daß
> es in der angeschlossenen Leistungselektronik KAWOMM sagt, Interrups im
> 30..40 kHz Bereich. Sowas kannst du mit nem 48 MHz Toshiba machen, aber
> nie und nimmer mit ner Applikation auf dem Raspberry.

Ok, du hast (bedingt) recht, allerdings aus einem anderen Grund, als du 
denkst: Der RPi hat nur zwei PWM Kanäle 
(http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf) 
- hätte er drei, wärs wohl machbar, wenn auch nicht einfach. Mit einem 
entsprechenden Device-Treiber geht das schon, nur braucht man dann halt 
gute Embedded und Linux Kernel Kenntnisse, der typische embedded 
Entwickler hat letztere nicht, tut sich daher enorm schwer. Mit einem 
reinen Userland Programm dürfte das nicht gehen, da gebe ich dir recht.

von klausr (Gast)


Lesenswert?

Im ürbigen zwingt dich ja niemand, Linux auf einem RPi einzusetzten: Du 
kannst dir auch dein OS/Kernel selbst schreiben: 
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=72&t=10850 und 
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=72&t=10167

Zugegeben, einfach ist es nicht, man kann wohl auch nicht den schönen 
VideoCore voll nutzen und muss sich um alles selbst kümmern, aber 
machbar wäre es.

von Norbert M. (Gast)


Lesenswert?

Angeregt dadurch, daß ich mir selbst derzeit Gedanken darüber mache, mir 
demnächst zum Herumspielen einen Raspberry Pi zu besorgen, erlaube ich 
mir, diesen Thread wieder hervorzuholen - nochdazu wo meine Intentionen 
wohl ähnlich gelagert sind wie jene des TE.

W.S. schrieb:
> Letters schrieb:
>> So ist der GPU völlig unwichtig für mich. Wichtig ist eigentlich nur
>> die Reihe der GPIO pins und deren Connectoren (SPI, I2C, UART )
> Also, genau DAS verwundert mich. Wozu ist das ganze Raspberry denn
> nütze, wenn man den wichtigsten Teil, nämlich den Bildschirm ignoriert?

Den Bildschirm kann man nutzen, muß man aber nicht. Ist doch bei euch in 
der AVR-Fraktion genau das Selbe, wie oft hört man hier im Forum "nimm 
den nächstgrößeren AVR" oder "nimm statt dem Kleinen lieber gleich den 
ATMega-schlagmichtot" etc. weils ja nicht viel mehr kostet.

Der RaspPi ist eben saugünstig für das was er kann. Ich würde sofort 
zuschlagen, wenn's einen RaspPi für einen 10er günstiger gäbe, ohne das 
GPU- und HDMI-Zeugs das ich sowiso nicht brauche.

> Wenn man ne Menge I/O und Peripherie haben will, dann ist eigentlich
> jeder verbastelbare uC deutlich besser geeignet als das Raspberry.

Bei solchen Plattformen wie dem RaspPi geht eben alles einfach. Ich gebe 
zu, ich war immer extrem skeptisch, was dieses ganze Raspberry- und 
Arudindo-Zeus betrifft und wenn ich ehrlich bin, bin ich sogar nicht 
einmal gerade der große Fan von Hochsprachen wie C auf einem uC (jaja, 
jetzt kommt sicher wieder irgendwas von wegen Portabilität und 
Wartbarkeit). Aber ab einer gewissen Komplexität machen solche 
Plattformen wie der RaspPi einfach Sinn, zum Beispiel wenn man Dateien 
vom USB-Stick einlesen will und einen Web-Server über Ethernet 
draufklatschen will. Ich persönlich finde es da immer noch sinnvoller, 
gleich einen RaspPi zu nehmen, als diese Bastlerlösungen mit dem 
AVR-Miniwebserver oder gar mit dieser VUSB-Bitbang-Frickler-Library.

> Irgend ein Cortex im 70..120 MHz Bereich ist auch garantiert deutlich
> schneller mit seiner Peripherie als ein Raspberry, da der Bremsklotz
> "Betriebssystem" entfällt, man ausgiebig mit Interrupts arbeiten kann
> und sich nicht wie beim Raspberry mit irgendwelchen Porterweiterungen
> herumschlagen muß.

Mag sein, daß der "nackte" Cortex schneller ist, aber das Betriebssystem 
kann ja gerade der Vorteil sein. Wenn man den Zeitaufwand mitrechnet 
(und da setze ich sicher keine Stundenlöhne eines Ingenieurs an), dann 
lohnt es sich für den Anfänger sicher dann bereits den RaspPi zu nehmen, 
wenn er Beispielsweise ein paar Relais via Weboberfläche steuern will. 
Von der Erweiterbarkeit ganz zu schweigen: Beispielsweise komme ich bei 
so einem Relais-Steuerprojekt drauf, daß es schön wäre, einen FTP-Zugang 
zu haben um darauf womöglich irgendwelche Python-basierten 
Relais-Steuerscripts raufzuklatschen: Das geht auf so einer Plattform 
sowas von easy. In nächsten Schritt komme ich drauf, daß ich die 
Steuerscripts doch lieber gerne in XML hätte: Geht alles ganz easy an 
einem verregneten Nachmittag. Beim nackten Cortex bist Du in der 
gleichen Zeit wahrscheinlich noch dabei, die ftp-Library anzupassen - 
ganz zu schweigen von Python.

Linüx schrieb:
> Man [..] versucht fälschlicher Weise den RP als Mikrocontroller zu verwenden.

Aber man kann's ja keinem verdenken. Klar, überdimensioniert, aber es 
geht eben schnell und einfach. Und das Zeug ist eben billig. Überhaupt 
ist es meiner Meinung nach schwierig von "falscher Verwendung" zu 
sprechen. Und das Argument "aber da lernst Du nix" ist sicher richtig, 
aber das selbe Argument wäre ja genau so richtig, wenn ich es zu einem 
AVR-Nutzer sage, der nur in C programmiert. Könnte man genau so gut 
sagen: "Da bist Du zu weit von der Hardware weg, da lernst Du nix, da 
verstehst Du nie, wie der Controller arbeitet".

MaWin schrieb:
> Der Rasperry hat seine Begründung genau dort, wo man die vorhandenen
> Schnittstellen braucht (und dann auch ein Betriebssystem braucht um sie
> bedienen zu können).

Der RaspPi (und ähnliche Plattformen) kann auch dort eine Begründung 
haben, wo ein Betriebssystem vieles eben einfach erleichtern würde. Und 
er ist eben so günstig, daß man es sich auch mal erlauben kann, 
vorhandene Schnittstellen einfach nicht zu nutzen. Ist doch in der 
Mikrocontroller-Welt nicht anders: Von mir aus brauche ich 2 ADCs und 
eine PWM - wer macht denn da demjenigen einen Vorwurf, der den 
Controller mit von mir aus 4 ADCs und 3 Hardware-PWMs nimmt?

> Wenn man ohne Bildschirm und Tastatur auskommt, ist der Rasperry
> letztlich nichts anderes ein ein DSL Modem ohne DSL (und genau dort
> haben auch die ersten Bastler angefangen, das Linux nutzbar zu machen).

Eben, genau dort haben die "Bastler" angefangen. Und wieso?: Weil's 
keine günstigen Alternativen gab. Sicher gibt's PC-104 oder Mini-ITX 
oder was weiss ich, aber da stellt sich eben dann wieder die 
Kostenfrage. Die DSL-Modems und Sat-receiver waren für diese Bastler 
auch nur eine Krücke, aber dank Pollin und Konsorten einfach günstig zu 
kriegen. RaspPi und Co. drücken die Preise im Embedded-Platforms-Segment 
noch mehr, ist doch schön für diese Klientel.

> Man muß nicht alle Schnittstellen verwenden,

Genau meine Rede.

> aber wenn man mehr zahlt ohne sie zu verwenden ist das auch
> irgendwie blöd.

Aber wenn man beispielsweise nur Ethernet und I2C braucht, und kriegt 
HDMI, USB, etc. gratis dazu (weil die Alternativlösung auch nicht 
wirklich billiger ist), dann ist das doch schön :-)

Christian Berger schrieb:
> Naja, das hängt immer davon ab was man machen will. [...] vom
> Dateisystem bis zum (vollwertigen) Netzwerkstack ist das halt alles mit
> drin. So werden halt manche Probleme trivial lösbar.

Genau das ist der Punkt. Da wird der RaspPi nämlich auch für jene Leute 
interessant, die Erfahrung mit der Administration und Programmierung von 
Rechnern haben, aber einfach keine Zeit haben, sich intensiv zum 
Beispiel mit dem Cortex auseinanderzusetzen.

> Natürlich gibts auch Echtzeitaufgaben die man auf einem reinen
> Mikrocontroller einfacher und schneller lösen kann.

Eben, ist auch keine Frage. Da kann man nur zustimmen.

W.S. schrieb:
> Wir reden hier von I/O, also ganz konkret von einer Breitseite Portpins
> und von Interruptprogrammen.

Wer ist "wir"? Der OP hat nur gesagt, daß er GPIO, I2C, SPI und UART 
will. Von interruptlastigen Programmen (oder gar Echtzeitanforderungen 
die meiner Meinung nach hier immer unterschwellig mitklingen) war doch 
gar nicht die Rede. Im Gegenteil, da stand sogar ausdrücklich:
>>>> Kennt ihr da geräte die in den Bereich. Also mit OS, klein, ...

> Stell dir zum Beispiel mal ne 3 Phasen Motorsteuerung vor: Pro Phase
> ein PWM, dazu für's Ganze noch ein Timer  mit 3 Capture/Compare-
> Einheiten, Pins, die bedient sein wollen ohne daß es in der
> angeschlossenen Leistungselektronik KAWOMM sagt, Interrups im
> 30..40 kHz Bereich. Sowas kannst du mit nem 48 MHz Toshiba machen, aber
> nie und nimmer mit ner Applikation auf dem Raspberry.

Stell Dir mal vor, es bastelt einer eine Erweiterungsplatine für den 
RaspPi, die genau dieses zeitkritische Zeugs in einen Controller 
auslagert, der an den RaspPi von mir aus mit SPI angebunden ist. Und auf 
den RaspPi kannst Du dann mittels Ethernet Motersteuerungsprogramme 
raufladen oder über den Webserver Statistiken anzeigen, oder, oder...
Wär' sowas nicht geil? Die Plattform praktisch nur als Frontend für den 
User, und die zeitkritischen Sachen auf einer angeflanschten 
Erweiterungsplatine. Mit dem Ansatz kannst Du in relativ kurzer Zeit 
Sachen machen, für die Du mit dem nackten Controller Jahre brauchen 
würdest. Und wenn man schon die GPU vom Raspberry nicht versauern lassen 
will, dann kann man ja noch drei Stromwandler rankloppen und sich die 
Ströme der 3 Phasen in 7000 Regenbogenfarben animieren lassen und via 
HDMI am 50-Zoll-Flachbild des Heimkinosystems anzeigen lassen. Und von 
mir aus soll er noch nebenbei eine laststromabhängige Geräuschkulisse 
"komponieren" und zu codieren (damit man das Drehfeld auch hört), damit 
der Audio-Teil auch nicht "verschimmelt" oder ungenutzt bleibt (wenn man 
schon so viel Angst hat, etwas zu bezahlen und dann nicht zu benutzen).

In meiner Gedankenwelt gibt's nicht "entweder Plattform oder 
Controller", die Symbiose ist doch das, womit man wirklich coole Sachen 
machen kann. Und das in endlicher und sogar selbst erlebbarer Zeit.

In der Hoffnung niemanden zu langweilen,
LG, N0R

von Mehmet K. (mkmk)


Lesenswert?

Norbert M. schrieb:
> In der Hoffnung niemanden zu langweilen

In der Hoffnung niemand gelangweilt zu haben

von Stefan H. (stefan_h16)


Lesenswert?

Letters schrieb:
> Kennt ihr da geräte die in den Bereich. Also mit OS, klein, mit SPI /
> I2C / UART reinpassen?

https://www.olimex.com/Products/OLinuXino/iMX233/iMX233-OLinuXino-MICRO/open-source-hardware

Auch im (breiten) DIP Format, ohne Schnickschnack.

von Pete K. (pete77)


Lesenswert?

Ich habe für mich eine einfache Formel gefunden:
Wenn ich Ethernet brauche, danne nehme ich eine Linux-System (RasPi), 
sonst eher Atmega oder STM32.

Für das Gefrickel mit dem IP-Stack auf einem uC habe ich keine Zeit.

: Bearbeitet durch User
von Mehmet K. (mkmk)


Lesenswert?

Pete K. schrieb:
> Ich habe für mich eine einfache Formel gefunden:
> Wenn ich Ethernet brauche, danne nehme ich eine Linux-System (RasPi),
> sonst eher Atmega oder STM32.
>
> Für das Gefrickel mit dem IP-Stack auf einem uC habe ich keine Zeit.

Also Ethernet macht mir auch am meisten zu schaffen.
Deshalb war diese obige Einstellung eine Zeitlang auch die meinige.
Ich werde aber vermutlich wieder zurückkrebsen und alles wieder zu Fuss 
machen.
RasPi ist schon irgendwie toll gemacht; aber in ein industrielles Geraet 
könnte ich sowas nicht einbauen.
Cubieboard2 entspricht etwas mehr meinen Vorstellungen. Aber der Support 
ist sehr schlecht.
Am meisten Eindruck machte mir der mini2440 zusammen mit Pengutronix. 
Aber etwas zu gross und vorallen zu teuer.

von Daniel (Gast)


Lesenswert?

Ich würde auch gerne mal meine paar Sätze los werden wollen. Bei meinem 
aktuellen Projekt nutze ich auch dieses Zusammenspiel von RPI und AVRs. 
Es geht um eine Steuerung fürs Wohn- und Schlafzimmer. Der RPI stellt 
mir nur die Schnittstellen (TCP, WebService, RS232) zur Verfügung sowie 
den Webserver und SQL. Die Daten werden dann bei mir derzeit noch RS232 
an den Controller weitergereicht, der sich dann um die Hardware kümmert. 
Auf dem RPI ist schnell mal eine Software geschrieben die diese 
Schnittstellen zur Verfügung stellt. Für den Preis absolut unschlagbar 
und von der Zeit die man weniger investiert ganz zu schweigen.
Muss aber auch zugeben das es sich hier nicht um zeitkritische Elemente 
geht.

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
Noch kein Account? Hier anmelden.