Calliope MotionKit2 und MicroBlocks

Hier zum testen die MotionKit2 Erweiterung für MicroBlocks.
Infrarot fehlt noch.
Viel Spaß!

Michael

Calliope Motionkit2.ubl (5,1 KB)

3 „Gefällt mir“

… und mit der Fernbedienung klappt es jetzt auch. Besser wie in Makecode, da ist das ganze sehr unklar..
Calliope Motionkit2.ubl (7,2 KB)

3 „Gefällt mir“

Hier schonmal das passende Video

MotionkitFernbedienung.ubp (12,2 KB)
In der Programmdatei fehlen leider die Farbanweisungen. Das Feature ist noch zu neu in MicroBlocks.

Calliope MotionKit2.ubl (6,9 KB)

Würde noch gerne die AppInventordatei hochladen, das Forum unterstützt aber keine .aia Dateien @joern.alraun

AppInventor_MicroBlocks_MotionKit2.aia (241,5 KB)

Jörn hat die Datei freigeschaltet, Danke! Einfach in Appinventor hochladen und .apk generieren.

Viel Spaß

Michael

5 „Gefällt mir“

Das ist super! Für MakeCode gibt es Ende des Monats übrigens eine Anleitung und die wird wohl im übernächsten Update der App auch unter iOS erreichbar sein (dafür per Bluefy Browser)…

1 „Gefällt mir“

Ach ja, die File-Endung ist freigegeben, du solltest AppInventor-Daten nun abspielen können.

3 „Gefällt mir“

Guten Tag, das Video hat mich begeistert! Microblocks ist wirklich witzig und einfach. Jetzt haben wir nur die Calli:bots der Firma Knotech im Einsatz… scheinbar sind die nicht 100% kompatibel? Zumindest kriege ich nicht den Motor in Bewegung. Habt ihr einen Tipp?
LG Karsten

2 „Gefällt mir“

Ja,
Ich kann auch noch eine Calliboterweiterung programmieren. Habe allerdings nur Version 1. Du könntest aber bestimmt für mich testen :grin:

Melde mich hier wenn ich fertig bin

Bis denne

Michael

2 „Gefällt mir“

SUPER! Kann ich gerne machen! Mir ist gerade aufgefallen, dass ich auf den Calli:bots auch noch Version 1.3 montiert habe… :wink:
Wollte ich gerade ergänzen

Bis dann
Karsten

2 „Gefällt mir“

Hallo Karsten,

hier funktionieren schonmal alle Blöcke für den Calli:bot V1 falls du noch wie ich so einen alten hast :wink:

Calliope Callibot V1.ubl (7,8 KB)

4 „Gefällt mir“

Hier ist eine I2C Register Liste zum Calli:bot (alle Versionen). Die ist zwar alt, aber ich habe Oktober 2024 bei Knotech angefragt und die selbe alte Version noch mal bekommen.

calli2bot/2021-11-12a_Callibot2_Software-Infos.pdf at master · calliope-net/calli2bot

Im Register I2C_CB2_GET_FW_VESION gibt es ein Byte Typ.
Der Wert ist 3 bei Calli:bot2E mit Encoder
und 4 bei Calli:Bot2 ohne Encoder.
In der Liste wird nach CB2, CB2E, CB2A unterschieden. Erklärt wird der Unterschied nicht.
Aber es stimmt, dass ich bei Typ 3 und 4 die Versorgungsspannung auslesen kann.
Einen Typ 1 und 2 habe ich nicht.

Tut der alte Calli:bot auch 8 I2C Adressen 0x20 bis 0x27 blockieren, obwohl er nur 2 braucht?

3 „Gefällt mir“

Hallo @Boltberg

Hier die Bibliothek mit der Unterstützung zum Callibot V2.

Calliopecallibot4.ubl (7,9 KB)

Stoßstange kann auch abgefragt werden, der Encoder der Luxusversion nicht. Hast Du die Luxusvariante?

Bei der LEDsteuerung vom V2 gibt es ein Problem wenn man mit dem Farbmischer die Farbe auswählt: Die Farben sind immer zu hell. Außerdem geht die linke vordere LED aus wenn man eine andere anmacht. Die Steuerung mit den vorgegebenen Farben funktioniert einwandfrei. Nehme an, dass ist ein Firmwarefehler. Muss nochmal in Makecode testen.

So, Farbenproblem gelöst. Die Werte dürfen nur bis 16 gehen. Da werden die Farben halt nicht so doll.

Viel Spaß

Michael

3 „Gefällt mir“

Hi!

Erstmal VIELEN DANK!!! Ich hab privat die alte Version, in der Anstalt haben wir beide neuen Versionen. Ich hab mir auch extra einen aus der Schule mitgenommen zum Testen, hab es aber - ehrlich gesagt - im Ferienmodus verdrängt… Ich teste die Tage und berichte!

Liebe Grüße

Karsten

1 „Gefällt mir“

Hi Karsten,

nun habe ich noch die Encoder hinzugefügt und im erweiterten Modus kannst Du die Batterie abfragen.

calliopecallibot.ubl (9,5 KB)

Werden demnächst auch noch die Makecodeerweiterug updaten.

Habe ein wenig herumexperimentiert.

Bin mit den Encodern nicht ganz glücklich weil sie manchmal zu spät abgefragt werden und der Callibot dann zu weit fährt. Versuche es nochmal mit einer Schleife und einer Wartezeit von ein paar Microsekunden.

Finde die Stoßstangenfunktion aber gut, ist wie mein Saugroboter :slight_smile:

Das ist ein Vorteil gegenüber dem Motionkit.

Viel Spaß

Michael

3 „Gefällt mir“

Hallo Michael,

VIELEN DANK! Du bist wirklich ein Hexer in meinen Augen! Da habe ich doch direkt was für die nächste Freistunde :wink:

LG Karsten

2 „Gefällt mir“

Hallo Lutz,
ich probiere gerade deinen Hinweis aus, über das Register I2C_CB2_GET_FW_VERSION an die dort gespeicherten Informationen zu kommen. Ich verwende MicroBlocks dafür, aber den Programmablauf sollte man verstehen können.

Zuerst lege ich einen Buffer mit 10 Bytes an, weil das von dir verlinkte Dokument über das Register 0x82 10 Bytes liefern soll. Dann setze ich den Zeiger für das Register auf 0 und lese 10 Bytes in den Buffer. Anschließend zeige ich die 10 Bytes in der Programmierumgebung an. Die Byte-Nummern sind von 1 bis 10, nicht von 0 bis 9 wie im Dokument angegeben, da MicroBlocks hier anders zählt.

Die Antwort deute ich folgendermaßen:
Byte 1 - 130 (= 0x82)
Byte 2 - 4
Byte 3 - 1 - Firmware 0.10 - 0.1
Byte 4 - 0
Byte 5 -10
Byte 6 - 0
Byte 7 - 255 - Seriennummer Byte 0?
Byte 8 - 255 - Seriennummer Byte 1?
Byte 9 - 255 - Seriennummer Byte 2?
Byte 10 -255 - Seriennummer Byte 3?

Steht die 4 in Byte 2 für den Typ CalliBot 2?
Die Firmwareversion und die Seriennummer sind für mich nicht besonders aussagekräftg, da nichts dazu dokumentiert ist. Und eine solche Seriennummer ist auch nicht besonders, wahrscheinlich bei allen CalliBots gleich.

Beste Grüße
Ralf

Hier der Callibot 2E

V1

Mein V2 ohne E

Nehme an 255 bedeutet leer

Also Byte 2 ist entscheidend behaupte ich.

1 „Gefällt mir“

In der Register Liste gibt es CB2, CB2E, CB2A.
Byte 2 = 3 CB2E mit Encoder
Byte 2 = 4 wir haben wahrscheinlich CB2A ohne Encoder

Byte 2 = 2 müsste dann CB2 sein, die gibt es wahrscheinlich gar nicht. In der Liste sind da weniger Kreuze. Z.B. keine Versorgungsspannung auslesen und LED anders.

Und CB1 hat die I2C Adressen 0x21 und 0x22 gar nicht, da kann aus dem Register nichts raus kommen. So einen habe ich nicht.

Meine Projekte sind hier, falls jemand Anregung braucht.
Die Ziffern am Ende bedeuten MakeCode Version 4..7 und Calliope Version 1..3.

GitHub Repositories q=calli

.. natürlich auch mit zweitem Calliope, Bluetooth und Joystick fernsteuern.

2 „Gefällt mir“

Ich habe bezüglich Typ, Firmware und Seriennummer die MakeCode-Erweiterung Calli2bot von Lutz ausprobiert. Ich kann selber habe nur den CalliBot 2 zum Testen.

  • Typ 04
  • Firmware 01.00.0A.00
  • Seriennummer FF.FF.FF.FF

Das entspricht dem, was ich mit MicroBlocks herausgefunden habe, nur das Lutz die Zahlen im hex-Format ausgibt.