Calliope mit iPad - plötzlich Bluetooth Probleme

Wir sind eine Calliope Arbeitsgruppe an einer Grundschule in Aalen und haben im vergangenen Schulhalbjahr mehr oder weniger erfolgreich eine Calliope AG abgehalten. Die Schule ist mit iPads ausgestattet und zu Beginn hatten wir das volle Programm mit gescheiterten Lightning-Kabel Verbindungen (kapiert: das geht nicht) und auch wiederholt Problemen mit Bluetooth Verbindungen. Die Calliope App musste von der Schul-IT installiert werden (man darf nicht selbst einfach was installieren) und die WLan-Verbindung war anfänglich schwach und nicht stabil, es musste extra och ein Repeater installiert werden usw. - letztlich arbeiteten wir dann aber einige Wochen doch sehr erfolgreich und bis vor 4 Wochen hatten wir alles soweit im Griff.

Nun hatten wir 4 Wochen Pause und fangen nun mit einer neuen Schüler-Gruppe an. Was soll ich sagen - nichts geht mehr. Wenn wir Programm Nr. 25 neu laden bekommen wir meistens 1x eine Bluetooth-Kopplung hin - aber das wars. Jede weitere Übertragung scheitert. In der App wird eine erfolgreiche Kopplung angezeigt, aber sobald man ein Programm übertragen möchte, kommen Fehler „Gerät nicht gefnden“ oder ein Kopplungs-Dialog, wo man einen Kopplungs-Code eingeben muss - das war sonst nie der Fall. Ich vermute mal, iOS hat ohne unser Wissen ein Update erhalten. Da wir nie nachgeschaut haben, wissen wir nicht, welche iOS Version wir früher benutzt hatten. Ich tendiere jetzt dazu, sowohl die Calliope-App durch die Schul-ID aktualisieren zu lassen, als auch eine neue Firmware auf den Calli aufzuspielen.

Ist das Problem hier bekannt? Ich habe hier bereits ähnliche Beiträge gefunden, aus denen sich mir aber nicht wirklich erschließt, ob es eine Lösung gibt und wie diese lautet.

Ist außerdem irgendwann damit zu rechnen, dass die App auch ohne Internet läuft (wie gesagt, es gibt noch genügend Schulen ohne gutes WLan) und dass man zwingend eine Internet-Verbindung benötigt, macht es sehr schwer, solche Kurse „überall“ abzuhalten. Ich würde sagen „Offline Betrieb“ wäre äußerst wichtig. Und weiterhin wäre wirklich wichtig, dass man Programme per Lightning-Kabel auf den Calliope laden kann, damit man das (langsame) Bluetooth, den Affengriff und diesen seltsamen Programm Nr. 25 Workaround los wird. Die Welt könnte so schön sein - aber sorry, diese Workarounds machen es wirklich schwer.

Ich finde den Calliope und NEPO wirklich eine hervorragende Plattform, die den Schülern und uns „Lehrern“ (wir sind allerdings keine ausgebildeten pädagogischen Fachkräfte sondern machen das ehreamtlich bzw. bekommen Unterstützung von unserer Firma) viel Spaß macht.

Ich bin nun wirklich kein notorischer „Meckerer“ oder Kritiker, und kann mir auch vorstellen, mich hier irgendwie einzubringen, da ich selbst Softwareentwickler bin (allerdings habe ich noch nicht Bluetooth Verbindungen oder FAT16 Laufwerke selbst programmiert). Unsere Firma unterstützt und fördert solche MINT Projekte und ich könnte mir auch vorstellen, mich hierfür stark zu machen - vielleicht könnte man Geld oder Ressourcen aus dem Förderprogramm rausleiern um hier an besseren Lösungen arbeiten zu können. Damit diese Kinderkrankheiten endlich beseitigt werden.

Aktuell scheitert unsere AG allerdings an dem plötzlich neu aufgetretenen Bluetooth Problem…

Hallo, ich bin mit in der AG und habe mir die Hardware eben geholt, um noch die Versionen anzugeben:
Die App hat Version 2.5
Das iPad hat Version 15.7.1, es ist ein iPad der 9. Generation

Stand heute: Koppeln geht, aber beim Übertragen wird eine Bluetooth Kopplungsanforderung (Bluetooth) als PopUp gestellt. Da soll man einen Code eingeben, der auf dem Calliope mini [pazep] steht, passiert das nicht oder klickt man auf Abbrechen, kommt das Übertragungssymbol, aber es wird kein Fortschritt angezeigt.
Der Calliope zeigt allerdings keinen Code an, nur noch ein X auf der LED-Anzeige.

Am Mittwoch ging Programm 25 ausführen und erneute koppeln noch manchmal, um ein Programm einmalig herunter zu laden. Jetzt geht leider gar nichts mehr

Zum Vergleich habe ich mit dem iPhone mit SW Version 16.3.1 auch über die App und Nepo versucht zu koppeln, gleicher Fehler wie am iPad

Ich mache die AG in 3 Grundschulen, bei uns heißt das Ganztagsangebot. Ich habe das Privileg, dass ich in 2 von den Schulen der Admin für das MDM Jamf School bin und mir die iPads für Calliope selbst konfigurieren kann. In der dritten Schule, in der Stadt, wo die iPads auch noch SHARED sind, ist es eine Katastrophe. Man kann keine Apps und auch keine Updates installieren, die Calliope mini App habe ich aber dort vorgefunden. In der Schule gibt es aber auch Windows Laptops, die wir mit USB Kabel benutzen können. Mit dem USB klappt es aber auch nicht in jedem Computerkabinett. Einmal sind es Thin-Clients, ein anderes Mal ist ein USB-Stick verboten. Und die JavaScripts waren auch schon durch TimeForKids blockiert…

Ich benutze MakeCode, zu der Code Eingabe bei Roberta kann ich nichts sagen. Ich denke aber, dass das Koppeln in der App außerhalb vom Editor passiert. Wenn oben der Punkt grün ist, muss man eigentlich nicht noch mal koppeln. Die Übertragungsfehler haben einen anderen Grund (siehe unten).

Mit iPadOS 16 kommt der Fehler dazu, dass in der App im Editor das rote oder grüne Koppel-Symbol (in MakeCode) den Menüpunkt Einstellungen (Zahnrad) zudeckt und man nicht mehr nachgucken kann, welche Speicher Version eingestellt ist.

Mit der Calliope mini App 2.5 kommt Partial Flashing dazu, was wahrscheinlich die Ursache für euer Problem ist.

Wenn man als neues Projekt Calliope mini 2.x wählt, dann wird das Programm einmal übertragen (wenn auf dem Calliope noch das Demo Programm 25 ist). Bei der folgenden Übertragung vergleicht Partial Flashing den Code und überträgt nur die Änderungen. Das funktioniert solange die Änderungen gering sind.

Wenn man aber ein ganz neues Programm per Bluetooth Kopplung senden will, ist Partial Flashing nicht in der Lage alles neu zu übertragen. Es scheitert beim vergleichen der Änderungen und bricht dann ab (mit dem X oder den roten Kreis).

Die einzige Möglichkeit ist, Partial Flashing nicht zu verwenden, indem nur Projekte mit dem Typ 1.x erstellt werden. Dann funktioniert das Koppeln und übertragen wie vorher und man muss eben warten.

Das mit dem Affengriff und Programm 25 geht eigentlich schnell, wenn man es ein paar mal geübt hat. Ich habe gerade vor eine Woche ein Merkblatt dazu erfunden. Das könnt ihr hier auch drucken (A4 Vorder- und Rückseite). Für Verbesserungsvorschläge bin ich dankbar.

CALLIOPE und iPad

Viel Erfolg
Lutz

1 „Gefällt mir“

Hallo zusammen.
Es liegt (leider) am letzten Update von Open Roberta!
Ich habe ein Issue mit Infos angelegt (Calliope mini: Bluetooth password question · Issue #1471 · OpenRoberta/openroberta-lab · GitHub) und schreiben ebenfalls noch eine Mail ans Team. Ich hoffe, dass das schnell behoben wird.

Open Roberta wird vermutlich nie wirklich offline zur Verfügung stehen. MakeCode muss einmalig genutzt werden (inkl. HEX-Download) und ist dann unabhängig (außer ihr möchtet online Erweiterungen laden, aber das ist ja klar). Vielleicht ist das dann der Weg für euch? Ihr müsst dort auch nicht die Event-Blocks nutzen, könnt also identisch zu Open Roberta programmieren…

Grüße
Jörn

Hallo, vielen Dank für die ausführliche Antwort :slight_smile:
Ich verstehe dann aber nicht, wo Partial Flashing auf einmal hergekommen ist? Wir haben diese App installieren lassen (Schulamt) und seither aktiv kein Update gezogen. Oder zieht sich die App Updates selbst kontinuierlich? Wir standen in der letzten Stunde halt wie der Ochs’ vorm Berg, da sich innerhalb von 4 Wochen ein uns unbekannter Faktor geändert zu haben scheint.
Wenn wir die Calliope App öffnen, kommt auch nicht mehr die Roboter-Abfrage Dialog. Man im Editor der App dann zwischen „Calliope mini“ und „Calliope mini blue“ wählen - wie wäre es dann korrekt?
Lieben Dank und Grüße, Holger

Hallo Lutz,

das kann ich so nicht bestätigen. Wenn erkannt wird, dass Partial Flashing nicht möglich ist, dann wird das gesamte Programm übertragen. Danach wird erst Partial Flashing aktiviert.
Das mit dem X sollte mit Partial Flashing nichts zu tun haben, weil der Vorgang in der App geregelt wird und an der Stelle keine Info an den mini geht. Ich habe es mit allen iOS16 Versionen getestet und bislang noch nicht dieses Verhalten feststellen können.
Ich schaue es mir aber gern dahingehend auch nochmal an.

Grüße
Jörn

Der Code ist immer 0000 oder 00000 (habe ich gerade vergessen)… :slight_smile:

1 „Gefällt mir“

Hallo Jörn,
vielen Dank für die Antwort. Mein Stand war, dass MakeCode nicht weiter entwickelt wird und auf dem letzten Stand verbleibt, während OpenRoberta noch aktuell entwickelt wird? Das war eine der Entscheidungen, nicht MakeCode zu benutzen. Wir müssten dann halt unsere bisher entwickelten Projekte entsprechend umsetzen - ist natürlich machbar, wenn auch Arbeit.

Das Problem mit dem 0000 Code ist, dass wir gar nicht genau nachvollziehen können, wann das kommt. Das wechselt sich ab mit „Gerät nicht gefunden“, „Wähnen sie ignorieren für dieses Gerät“ und eben diesem Kopplungs-Dialog und dem dicken X auf dem Calliope (nichts geht mehr). Vielleicht müssten wir mal die neuste Firmware auf den Calliope laden? Unsere Calliopes haben noch den Auslieferungs-Stand. Gibts einen Link zur neusten stable Version (und einer Anleitung)?
Vielen Dank und Grüße, Holger

Hallo Holger,

das liegt alles am Editor.
Der Editor überspielt ja das gesamte „Betriebssystem“, deshalb kann man da eigentlich sämtliche Dinge am mini ändern. Generell lohnt es sich immer als erstes bei Problemen Programm 25 aus dem Speicher aufzuspielen, weil dann alles korrekt eingestellt ist. Es gibt einige minis, bei denen dies von Anfang an nicht 100% im Werk aufgespielt wurde, deshalb kann man so auch diese optimieren.
Das mit dem X kenne ich so nicht (s.o.) und ich weiß auch nicht, warum das erscheinen soll, da eine Fehlermeldung angezeigt werden sollte.

Wir können aber auch gern per Video das kurz besprechen, dann kann ich mal genau sehen, wie ihr vorgeht und was dann passiert. Das ist häufig hilfreich. Dazu einfach ne kurz Mail an info@calliope.cc senden.

Grüße
Jörn

Ich habe gerade die Info bekommen, dass das Problem anscheinend gelöst wurde, sollte der Fix nun schnell ins Lab eingespielt werden, sollte alles wieder ohne Passwort funktionieren…

Da klingt ja super :smiley:

Verstehe ich das richtig, dass, wenn man sein Nepo Programm auf den Calliope lädt, unter der Haube mehr als dieses Programm überspielt wird, also auch ein Teil der Firmware und Connectivität-Funktion auf den Calliope mit gespielt wird, und man deswegen immer dieses Programm 25 laden muss, um eine Grundfunktionalität wieder herzustellen („reset“)?

Ich denke mal, die Bluetooth-Verbindung erledigt ja die Calliope-App, denn eine Browser-Instanz (der Editor) kann (denke ich) nicht auf die Hardware eines Geräts zugreifen? Daher dachte ich, dass man eine neue App installieren müsste wenn es Bugs mit Bluetooth gibt.

Tatsächlich lag der Bug nun aber in dem Anteil der Firmware (was Du „Betriebssystem“ genannt hattest), die zum Calliope übertragen wird, so dass alles behoben ist, wenn der Editor neu geladen wird (wenn er denn neu deployed wurde)?

Gibt es eine Schulung oder Literatur, wie das System intern funktioniert? Über die tieferen Zusammenhänge? Als Softwareentwickler habe ich die „Internas“ noch nicht ganz verstanden. Nicht dass ich es wirklich bräuchte, aber mir hilft es persönlich, wenn ich ein gutes Stückweit kapiere, wie ein System „tickt“…

Vielen Dank und Grüße von der Ostalb, Holger

zum nachvollziehen:

  1. auf dem Calliope 2.0 ist Programm 25
  2. auf dem iPad ist die App 2.5
  3. in MakeCode wähle ich Neues Projekt, Calliope mini 2.x
  4. Knopf A, zeige Zahl 2 (oder irgend was)
  5. Herunterladen - (ist gekoppelt, funktioniert bis 100%) - Programm läuft
  6. MakeCode verlassen
  7. in der App das Startprogramm herunterladen (links - grün)
  8. oben der Punkt ist grün, weil noch gekoppelt
  9. das Startprogramm durch tippen auf den schwarzen Balken übertragen
  10. Übertragung läuft - rot - Device failed to connect

Wenn ein Projekt Typ 2.0 auf dem Calliope drauf ist, kann man danach kein anderes Projekt mehr übertragen (das sich von dem vorhandenen so stark unterscheidet, dass Partial Flashing keine Übereinstimmung findet).

Das passiert unabhängig vom Editor, auch wenn man nur eine vorhandene hex-Datei aus der App per Bluetooth übertragen will. Der Typ der neuen hex-Datei ist egal. Calliope sagt: Mein aktuell geladenes Programm ist bereit für Partial Flashing und etwas anderes akzeptiere ich per Bluetooth nicht. (Manchmal zeigt er das X.)

Das schon auf dem CALLIOPE befindliche Programm mit nur einer kleinen Änderung übertragen, funktioniert nach dem Fehler aber noch.

Workaround ist auf Partial Flashing zu verzichten, und nur neues Projekt 1.x verwenden.

Lutz

1 „Gefällt mir“

Danke für die genaue Anleitung. Damit sollten wir dieses Problem in der App fixen können!

Eure iPads haben endlich mal die App 2.5 installiert, die es seit 13. Sept. 2022 gibt. Über das MDM kann ich als Admin die Updates der Apps auslösen. Wenn das kein Admin macht, weiß ich auch nicht wann das passiert. Bei betreuten Geräten kann das der Benutzer nicht selbst.

Und in der Version 2.5 ist das Partial Flashing als neues Feature drin.

Für mich passt das zum „plötzlichen Bluetooth Problem“, das ich schon seit September habe.
Lutz

Hallo, gibt es schon eine Info, wann der Fix aktiv sein wird? Stand heute geht es immer noch nicht - und übermorgen haben wir wieder AG Stunde…

Ich habe nicht ganz verstanden, an welcher Stelle man das Partial-Flashing abschalten kann???

Das geht über das Zahnrad, allerdings macht das keinen Unterschied, nur Partial Flashing ist dann deaktiviert.

Aktuell kann es schon unter https://test.open-roberta.org aufgerufen werden.
Dort scheint nun auch Partial Flashing aktiviert zu sein, das (zweite) Übertragen des Programms dauert somit nur noch rund 20 Sekunden…
Das Update ist nun online, damit hat sich das Problem erledigt.