# Kommunikation ### Überblick Calliopes senden und empfangen Nachrichten über ein einfaches Funkprotokoll (Nordic EnhancedShockBurst/Gazell). Dafür stellt OpenRoberta Kommunikationsblöcke bereit. Die Kommunikationsteilnehmer müssen den selben Kommunikationskanal gewählt haben und können danach auf diesem Kanal Nachrichten austauschen. Der Calliope mini hat einen kleinen Empfangspuffer, in den empfangene Nachrichten automatisch geschrieben werden. Sender und Empfänger sollten im selben Moment aktiv sein, damit die Nachricht sicher übertragen wird. Eine gesendete Nachricht wird an alle Empfänger (des selben Kommunikationskanals) gleichzeitig übertragen (Broadcast-Verfahren). [![Bildschirmfoto 2025-05-31 um 11.48.27.png](https://calliope.codingkidz.de/wiki/uploads/images/gallery/2025-05/scaled-1680-/bildschirmfoto-2025-05-31-um-11-48-27.png)](https://calliope.codingkidz.de/wiki/uploads/images/gallery/2025-05/bildschirmfoto-2025-05-31-um-11-48-27.png) Quelle: [https://calliope.cc/projekte/funk](https://calliope.cc/projekte/funk)

**Besonderheiten:** Senden und Empfangen sind für den Programmfluss nicht blockierend. Das bedeutet, dass eine Nachricht von Sender im Fire-and-Forget Prinzip übertragen wird. Dabei erfolgt keine Prüfung ob die Nachricht tatsächlich beim Empfänger angekommen ist. Der Empfang von Nachrichten ist ebenfalls nicht blockierend. Das heißt, dass der Empfänger den Empfangspuffer ausliest. Sind dort Nachricht enthalten, dann wird die älteste ausgegeben und aus dem Puffer gelöscht. Ist der Empfangspuffer leer, dann wird eine leere Nachricht ausgegeben.

### Beispiel [![Bildschirmfoto 2025-05-31 um 12.08.22.png](https://calliope.codingkidz.de/wiki/uploads/images/gallery/2025-05/scaled-1680-/bildschirmfoto-2025-05-31-um-12-08-22.png)](https://calliope.codingkidz.de/wiki/uploads/images/gallery/2025-05/bildschirmfoto-2025-05-31-um-12-08-22.png)
NameProgrammBeschreibung
Zahlen Senden und Empfangen[Zahlen\_SendenEmpfangen.xml](https://calliope.codingkidz.de/wiki/attachments/62) [Zahlen\_SendenEmpfangen.hex](https://calliope.codingkidz.de/wiki/attachments/63) Das Programm auf die 2-n Calliopes spielen. 1. Die Empfänger werden durch Drücken der Taste B gestartet. Der Calliope zeigt ein E auf dem Display und eine grüne Lampe an. Nun der der Calliope bereit, Nachrichten zur empfangen. 2. Der Sender wird durch Drücken der Taste A gestartet. Der Calliope zeigt ein S auf dem Display und eine rote Lampe an. Nach nochmaligem Drücken der Taste A sende der Calliope die Zahlen 1,2,3,4,5 an alle Empfänger. 3. Die Empfänger zeigen ebenfalls die Zahlensequenz 1-5 an.
Channel Hopping Ping-Pong [Channel-hopping-liste.xml](https://calliope.codingkidz.de/wiki/attachments/64) [Channel-hopping-liste.hex](https://calliope.codingkidz.de/wiki/attachments/65) Das Programm wird auf zwei Calliopes gespielt. 1. Ping - der erste Calliope wird durch Drücken der Taste A gestartet. 2. Pong - zweite Calliope durch Drücken der Taste B. Beide Calliope tausche nun zyklisch die ID des nächsten Kommunikationskanals aus, auf dem Sie die Nachrichten senden und empfangen. Der Kanal wird von beiden Calliope auf dem Display angezeigt. Beide Calliopes sind versetzt zueinander sowohl Sender als auch Empfänger. Das grüne Licht des Senders wechselt zwischen den beiden Calliopes hin und her. (Ping-Pong)
### Inhalte im Kurs
NameBeschreibung / Link
FernbedienungSteuerung eines Calli:Bot durch eine Calliope Funk Fernbedinung Link: [8 - Calli:Bot Fernbedienung](https://calliope.codingkidz.de/wiki/books/calliope-mini-programmieren-kurs/page/callibot-6-fernbedienung "8 - Calli:Bot Fernbedienung")
Fake - Papier/Stein/ScheereSteuerung eines Calliope Papier/Stein/Scheere Spiels bei dem immer gewonnen oder verloren wird Link: [2 - Calliope Zufallsspiele](https://calliope.codingkidz.de/wiki/books/calliope-mini-programmieren-kurs/page/calliope-2-zufallsspiele "2 - Calliope Zufallsspiele")