Neue Blockly Version! Beta Test und Feedback

Hallo Zusammen,

In den letzten Wochen/Monaten haben wir eine komplett neue Lern- und Programmierumgebung für die senseBox geschaffen. Die Basis bildet hierbei weiterhin Google Blockly und das Frontend wird über React realisiert. Fast alle Blöcke wurden bereits aus der alten Version in die neue Version migriert.

Die neue Oberfläche könnt ihr über vorerst über: https://blockly-react.netlify.app/ testen.

Da es sich hierbei noch um eine aktuelle Entwicklung handelt treten sicherlich noch an der ein oder anderen Stelle Fehler auf. Es wäre super, wenn ihr die Fehler entweder hier im Thread oder über Github meldet.

Was ist Neu?

eine Ausführliche Auflistung der Neuigkeiten gibt es unter: https://blockly-react.netlify.app/news

  • Login über den openSenseMap Account ermöglicht den direkten Zugriff auf eure senseBoxen
  • Tutorials zu verschiedenen Themen (werden noch ausgebaut!)
  • Projekte können online gespeichert werden
  • Teilen von Projekten
  • Projektgallery mit Beispielen
  • ein Tutorialbuilder zum erstellen von Tutorials (falls ihr diesen testen wollt meldet euch bitte eurem openSenseMap Login und ich schaltet es frei)
  • ein Tooltip Viewer zeigt euch direkt eine kleine Hilfe, wenn ein Block ausgewählt ist
  • onBoarding Tour für neue Nutzer:innen
  • viele kleine Updates in Blockly

Ich freue mich auf Feedback und viel Spaß beim ausprobieren,

Mario

5 Likes

Hallo Mario,

ich hab den neuen Block TTNMapper ausprobiert.
den Decoder zur Überprüfung der Payload habe ich selbst geschrieben nachdem ich nix online gefunden habe.

function Decoder(bytes, port) {

var value=bytes[3]<<24 | bytes[2]<<16 | bytes[1]<<8 | bytes[0];
if(bytes[3] & 0x80)
{
value |=0xFFFFFFFF00000000;
}
var latitude=value/10000000;
value=bytes[7]<<24 | bytes[6]<<16 | bytes[5]<<8 | bytes[4];
if(bytes[7] & 0x80)
{
value |=0xFFFFFFFF00000000;
}
var longitude=value/10000000;
var altitude = (bytes[8] | bytes[9]<<8) /10;
var pdop = bytes[10] | bytes[11]<<8;// Fehler da Werte dreistellig.

return {
latitude: latitude,
longitude: longitude,
altitude: altitude,
pdop: pdop,
};
}

Die Werte von lat,lon,alt sind korrekt.
Einzig der pdop Wert liegt immer im Bereich von 170-190. Lt. Empfehlung sollte dieser 2-3 sein.
kann es sein, dass ich durch 100 dividieren muss, dann wären meine pdop bei 1,7-1,9?
wenn dem so ist müsste im Blockly Source Code dies als Hinweis ergänzt werden?

vielleicht kann du den korrekten Payload Decoder im Tutorial ergänzen.

Danke
Rolf

Hi Rolf,

dankeschön für das Feedback! Den Decoder werde ich im Tutorial ergänzen und ich schaue mir auch nochmal den pdop-Wert an.

Viele Grüße

Mario

Moin Mario,

gibt es seit gestern und heute Probleme mit der blockly Umgebung, nicht nur die beta Umgebung, kann ich noch verstehen, sondern auch die alte blockly.sensebox.de Umgebung?
Ich wollte sie gern morgen demonstieren an meiner Uni in Leuven und es wäre wirklich schade genau am diesem Moment das malfunctioning.

Danke schon für die Antwort.

Hi @wdebbaut,

eigentlich laufen alle System ohne Probleme. Ich habe die Blockly Umgebung heute morgen auch in unsere Status Seite (https://status.sensebox.de/) eingebaut. Funktioniert es bei dir aktuell nicht?

Viele Grüße
Mario

Dank Mario für die schnelle Antwort,

ich wuste gar nicht das sie ein StatusPage haben. Super zu wissen!
Wir wollten in der Zukunft mit unserem MINT Academie in unserem Uni von Leuven mehrere Experimente machen mit Ihrer blocky Umgebung und OpenSenseMap. Daher das die Status interessant ist.

Am Augemblick kann ich nicht kompilieren mit Blockly. Die Seite ist ohne Probleme zu erreichen, aber bald ich meine bestehenden xml compilierten woltte mit blockly.sensebox.de (nicht blocky in Beta obwohl das auch super funktionierte einige Tage her), bleibt er in einer Schleife hangen und kann kein bin file mehr erunterladen, trotz es vor zwei Tage gut gang.

Vielleicht eine neure Start wie Felix gemacht hat einmal?

Kannst du mir die XML Datei einmal zuschicken an mario@sensebox.de?

Kompiliert wieder online Mario! Gar kein Problem mehr. Und die XML file ist weg.
Danke vielmal für die super schnelle Intervention.

Hallo @mario,

die neue Blockly-Version ist doch immer noch Beta, oder? Melde ich Fehler bzw. Anregungen daher nun hier oder besser unter Issues · sensebox/React-Ardublockly · GitHub ?

Einen Fehler habe ich gefunden, den ich gleich mal hier loswerden will. Das Folgende unter der alten Blockly-Version funktioniert, während das gleichwertige Gegenstück unter der Beta-Blockly-Version einen Compilerfehler erzeugt.

Alte Blockly-Version:
display_versuch_01

Und hier sind auch im Arduino Source Code die librarymanager-Links verstümmelt:
http://librarymanager/All#Adafruit_GFX_Library
etc.

Grüße, Jörn

Beta-Blockly-Version:
display_versuch_02

Ich hatte in der alten Blockly-Version das „Clear Display“ vergessen, aber egal, ob ich es noch hinzufüge, oder bei der Beta-Blockly-Version auch wegnehme, es bleibt bei:

Alte Blockly-Version → funktioniert vs. Beta-Blockly-Version → Compilerfehler

Anregung:

display_versuch_03

Die alte Form des „Show Text/Number“-Blocks, also der „Write Text/Number“-Block mag umständlicher erscheinen, da man hier erst noch so kleine „A number“-Blocks anflanschen muss, bevor man die Schriftgröße und die Koordinaten spezifizieren kann. Das hat aber den Vorteil, dass man auf diese Weise nicht nur von Hand eingegebene Werte zuweisen kann, sondern auch Werte, die sich z.B. als Rückgabe-Werte von Funktionen ergeben. So wird im obigen Fall aus der gewünschten Schriftgröße von 1,9 die am nächsten daranliegende mögliche Schriftgröße von 2, während bei der Beta-Blockly-Version eine von Hand eingegebene Schriftgröße von „1.9“ einfach abgeschnitten und damit auf 1 reduziert wird.

Grüße,

Jörn

Hi Jörn,

danke für das Feedback! Das ist ein wichtiger Punkt, mir fallen gerade auch schon Beispiele (z.B. Blockly for senseBox dort ist es allerdings ein Punkt und kein Text, der sich dann verschiebt) ein, bei dem die Koordinaten über externe Blöcke verändert werden.

Ich überlege mir da mal was… Die Idee der Slider zu verwenden war, dass es so deutlicher wird in welchem Bereich die Werte überhaupt liegen können.

Viele Grüße
Mario

@jbehre danke für den Fehler! Ich bin dran :wink: