Ich versuche momentan den Calliope Mini im Rahmen einer Arbeit in meine eigene Website einzubinden. Da generiere ich eine .hex Datei aus MicroPython. Diese kann ich ohne Probleme per Drag´n´Drop auf den Mini ziehen und es funktioniert. Nun versuche ich die HEX mithilfe von WebUSB auf den Mini zu flashen. Ist das von der technischen Seite überhaupt möglich? Und falls ja, welche Firmware brauche ich dafür?
Meine Beobachtungen bis jetzt:
Es gibt ein online WebUSB Flashing tool von SEGGER, das spuckt aber raus, dass der Mini nicht kompatibel mit Web Flashing ist, da habe ich die Firmware auf der SEGGER Website gebraucht J-Link WebUSB target firmware update
Das online WebUSB Flashing Tool von MBED erkennt funktioniert auch nicht, auch mit der Firmware wo im DETAILS.TXT CMSIS-DAP steht. Diese habe ich installiert, weil das Tool von MBED mit DapJS funktioniert. DAPjs Demo
In der unterstützen Platform Liste von mbed ist der Callipe nicht drinn, geht das also nicht mit DapJS?
Ich habe auch versucht mit Zadig verschiedene USB / Serial Treiber zu installieren, bis jetzt kein Erfolg
Ich hoffe jemand kann mir sagen ob es technisch möglich ist, und falls ja welche Firmware ich denn dafür bräuchte.
es hängt generell erstmal von der mini Version ab.
Bis zum Calliope mini 1.3 (inkl.) nutzen wir DAPLink. Da sollte ein Update die Möglichkeit bieten.
Wir überarbeiten gerade den Punkt auf der Webseite. Sobald der neu ist, sollte es funktionieren.
Bei den minis ab 2.0 nutzen wir JLink, da hat Segger WebUSB direkt implementiert (allerdings technisch anders).
Leider konnte das bei MakeCode nicht implementiert werden, eine eigene Umsetzung dürfte aber durchaus möglich sein.
Warum das Beispiel auf der Segger Seite aktuell nicht funktioniert, wissen wir auch leider nicht.
Das geht aber mit keinem Gerät und scheint mit aktuellen Browsern nicht klar zu kommen.
Für meinen Zweck brauche ich die 2.0 Minis, also dann muss ich mit JLink arbeiten.
Ich habe den Code auf der SEGGER Demo angeschaut, und bin den Fehler mit dem Browser umgangen. Danach gibt es trotzdem einen Error: „This J-Link does not support file flash download“.
Ich versuche nun mit dem SEGGER Support in Kontakt zu treten, um herauszufinden was da los ist.
Hello Joel, Sorry for the delay in response. The Calliope mini supports WebUSB in the regards to use WinUSB as USB enumeration mode and therefore is accessible via the WebUSB API, from within the web browser.
If you know the full USB protocol, you can communicate with the Calliope mini as a J-Link.
At no point it says that the WebUSB from the wiki, which requires the probe to also report certain capabilities, works with the Calliope mini. It only refers to J-Link OB, but I agree that the information is not really specific.
We will rework/extend the article.
The thing with WebUSB is that it only specifies if a device is accessible via the API.
The protocol and specific WebUSB „applications“ may have further requirements to the device, beyond to the pure raw USB API accessibility.
Das habe ich als Antwort bekommen, also das Web example unterstützt den Mini nicht.
Aber die Kommunikation sollte möglich sein wenn mal das „full USB protocol“ kennt… Ist nun die Frage was gemeint ist.