Forum: Mikrocontroller und Digitale Elektronik UPnP auf µC portieren


von diabolo (Gast)


Lesenswert?

Hallo zusammen,

ich habe vor einen UPnP Stack auf einem µC (MSP oder Stellaris mit max. 
256k Flash o.Ä.) zum Laufen zu bekommen.

Ich habe da nen TOP Stack gefunden(~100k nur!!!), der ist aber preislich 
nicht vertretbar!

http://www.ebsembeddedsoftware.com/NewWebSite/AboutOtherIp.html

Kennt jemand noch einen weiteren Stack der ähnlich schmal ist?

Leider sind die meissten >1MB, gerade der XML Parser is sehr groß!!!

Und ein externer Speicher am µC kommt erstmal wegen diverser Gründe 
NICHT in Frage!

Der CyberLink Stack ist gut, wenn er sauber implementiert worden wäre.
Leider hat der Programmierer hier an vielen, eklatanten Stellen den 
Standard nicht sauber implementiert!

besten dank im voraus für Tipps!

mfG

PS: Den Vorschlag selber einen zu proggen steht erstmal nicht zur 
Diskussion! :-)

von DirectX (Gast)


Lesenswert?

Wie schon hier geschrieben:
Beitrag "UPnP (Universal Plug and Play Protocol)"

Überleg dir zuerst, WAS du mit UPnP machen willst.
Ich glaube nicht, dass du gleichzeitig Video-Server, Video-Anzeigegerät, 
Internet-Router und Fernbedienung(Control) in einem kleinen µC-Gerät 
brauchst.
Je nach Anwendungszweck brauchst du nur einen Webserver mit einem 
(fast)-Statischem XML-Dokument und ein UDP-Paket verschicken. Das geht 
in < 32kb, und rein mit OpenSource Mitteln.

Und wenn du wirklich den Video-Teil von UPnP verwenden möchtest: da 
würde ich, allein wegen der Hardware-Verfügbarkeit, gleich auf das 
(Nachfolge?)-Protokoll DLNA setzen.

von NoName (Gast)


Lesenswert?

Wie sieht's aus, hat jemand lust das ganze mit mir für Cortex M3(128kB 
RAM, 512 kB ROM)  zu implementieren.
Folgende Funktionen sollte eigentlich machbar sein:
- UPnP AV Media Renderer (nur Audio z.B. MP3, OGG, AAC)
- UPnP AV Control

von Sascha P. (poggie)


Lesenswert?

Hi Mädels

genau sowas habe ich auch vor.
Ich überlege eine Ethernet Soundkarte zu bauen, welche per UPnP erkannt 
wird.

Als erstes würde ich das auf dem Olimex Eval Board für den STM32F107
http://www.olimex.com/dev/index.html    AVR --> STM32-P107 PROTOTYPE 
BOARD
entwickeln und dann auf eigene Hardware portieren.
Auf dem STM32 wird ein FreeRTOS laufen bzw läuft schon. Sodass wenn 
nötig auch mehrere Threads zur Verfügung stehen würden.
Der Analog Teil zur Audioausgabe steht schon.


Wenn ich das richtig verstanden habe müsste ich einen MediaRenderer 
implementieren. Siehe upnp.org
Ein XML Parser dürfte damit ja nicht notwendig sein. Die Ethernet 
Soundkarte müsste nach meinem Verständnis auf einem Port die Anfragen 
verarbeiten und dann die Beschreibung als xml dokument zurücksenden.

Jetzt meine Fragen:
Wie werden dann die Befehle an die Soundkarte verarbeitet (z.B. 
Lautstärke)?
Wie kommen die Daten an den uP ? UDP Stream? Fester Port?
Ist ein Rückkanal für Statusmeldungen möglich ?

PS: Die Idee dahinter ist das man mit seinem Smartphone per App, Windows 
oder Linux Rechner Sound auf der Ethernet Soundkarte, welche sich dann 
ja irgednwo im Netzwerk befindet ausgeben kann. Dann könnte man mal was 
im Wohnzimmer ausgeben, mal was in die Küche streamen usw. Je nachdem 
wie viele von den Soundkarten man sich ins Netzwerk hängt.
By the way: gibts ne Möglichkeit auch an 2 Soundkarten zu streamen?

gruß
Sascha

von hp-freund (Gast)


Lesenswert?

Hm. Ist das nicht ein Web-Radio?

http://code.google.com/p/arm-webradio/

von Sascha P. (poggie)


Lesenswert?

hp-freund schrieb:
> Hm. Ist das nicht ein Web-Radio?

Ja das habe ich auch schon überlegt. aber dann müsste das streaming 
device ja einen "lokalen Radiostream" zur Verfügung stellen
Das geht auch alles z.B. über Jamcast, aber ich denke es ist 
praktischer, wenn die Ethernet Soundkarte als Device erkannt wird, seine 
Parameter zurück gibt und dann den Audio Stream empfängt.Implementierung 
von UPnP oder DLNA hat meiner Meinung nach den Vorteil das es dann durch 
jedes Betriebssystem  oder Smartphone bespaßt werden kann und auch 
Parameter wie die Lautstärke gesteuert werden könnten.

Gruß
Sascha

von peter (Gast)


Lesenswert?

Ist hier inzwischen was bei raus gekommen?

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.