Tester gesucht (TonUINO 3.1)

Die gehen weiterhin. Alle 40 Karten funktionieren ohne Probleme

Oh, habe gerade den Code überprüft und da ist tatsächlich ein Bug reingekommen beim Vergleich der Karten beim Einzelmodus.

Hmm, das kann ich mir nicht erklären. Kannst du mal irgendwie rauskriegen, wie das zu reproduzieren ist?

Die Karten von der 2.x gehen auch alle bei der 3.1 und damit auch die von der Android App. Bei der 3.1 ist bloß zwei Kartentypen hinzugekommen (Hörbucht einzeln und letzte Karte wiederholen), die kann man natürlich mit der App (noch) nicht erzeugen.

Cool, ist der appschreiber noch aktiv?

Danke fürs bestätigen. Ich vermute es gibt keine spontane Weihnachtsversion mehr, oder? Dann reverte ich mal lieber wieder auf 2.2 vor dem einpacken :wink:

Eine neue online Version wird es sicher nicht geben, aber wenn du von main selber bauen willst, das habe ich gleich fertig.

Wen meinst du denn? Gibt ja mehr als eine App im Forum. Aber zu jeder gibt es ein Thema und da findest du auch den Autor.

Auf main ist der Bug mit den Einzelmodus-Karten gefixt.
Gleichzeitig habe ich die Datei ‚tonuino.ino‘ nach ‚tonuino-TNG.ino‘ umbenannt und eine Anleitung zum Compilieren im Readme hinzugefügt. Im Projekt-Ordner gibt es jetzt eine Datei ‚platform.local.txt‘, die in den systemweiten AVR Ordner zu kopieren ist.

1 „Gefällt mir“

Eine weitere Beobachtung (bin mir nicht sicher, ob sie mit der obigen “Button-Diskussion” bereits gelöst ist):

Wenn ich im Album bei Lied 1 bin und auf den “Zurück”-Taster drücke, dann passiert nichts mehr (es fühlt sich an, wie ein Absturz. Man muss die Karte runter nehmen und wieder drauf legen.). Wunsch: Er startet Lied 1 von vorne.

Das gleiche Verhalten tritt auf, wenn man am Ende des Albums ist. Drückt man auf “Weiter”, ist der Tonuino “tot” bis man eine neue Karte auflegt. Wunsch: der “Zurück” und “Play”-Button gehen dennoch.

Hallo zusammen,

ich habe auch mal die 3.1 zum Test installiert. Oftmals wird die Karte vor dem Einschalten des TonUINO schon auf die Box gelegt. Wenn das der Fall ist, dann passiert gar nicht mehr. Es wird nichts abgespielt und die Box lässt sich auch nicht mehr bedienen. Ich habe mal zwei Logs erstellt.

  1. Karte liegt beim Anschalten schon auf der Box:
 _____         _____ _____ _____ _____
|_   _|___ ___|  |  |     |   | |     |
  | | | . |   |  |  |-   -| | | |  |  |
  |_| |___|_|_|_____|_____|_|___|_____|
TonUINO Version 3.1 - refactored by Boerge1

created by Thorsten Voß and licensed under GNU/GPL.
Information and contribution at https://tonuino.de.

loadSettingsFromFlash
Version: 2
Max Vol: 18
Min Vol: 5
Init Vol: 10
EQ: 1
Locked: 0
Sleep Timer: 15
Inverted Vol Buttons: 0
Admin Menu locked: 0
Admin Menu Pin: 1111
Pause when card removed: 0
Firmware Version: 0x92 = v2.0
enter Idle
Idle::react(b) 10
Idle::react(b) 1
Card Inserted
Idle::react(c) 2
Card UID:  14 94 be 74
PICC type: 4
Auth Classic
Data on Card:  31 73 3b 74 02 0b 02 00 00
Base -> StartPlay
enter StartPlay

Es werden keine Logs beim Betätigen der Buttons geschrieben. Beim Karte entfernen und auflegen kommt:

Card Removed
Card Inserted

Die Box lässt sich weiterhin nicht bedienen.

  1. Karte wird nach dem Start auf die Box gelegt:
_____         _____ _____ _____ _____
|_   _|___ ___|  |  |     |   | |     |
  | | | . |   |  |  |-   -| | | |  |  |
  |_| |___|_|_|_____|_____|_|___|_____|
TonUINO Version 3.1 - refactored by Boerge1

created by Thorsten Voß and licensed under GNU/GPL.
Information and contribution at https://tonuino.de.

loadSettingsFromFlash
Version: 2
Max Vol: 18
Min Vol: 5
Init Vol: 10
EQ: 1
Locked: 0
Sleep Timer: 15
Inverted Vol Buttons: 0
Admin Menu locked: 0
Admin Menu Pin: 1111
Pause when card removed: 0
Firmware Version: 0x92 = v2.0
enter Idle
Idle::react(b) 10
Idle::react(b) 1
Card Inserted
Idle::react(c) 2
Card UID:  14 94 be 74
PICC type: 4
Auth Classic
Data on Card:  31 73 3b 74 02 0b 02 00 00
Base -> StartPlay
enter StartPlay
StartPlay -> Play
enter Play

Ich kann leider nicht sagen, ob das bei Version 2.2 auch so ist. Meine Erwartung wäre, dass der TonUINO anfängt mit der Wiedergabe und weiterhin bedienbar ist.

Viele Grüße

Marco

Kannst du ausschließen, das mit der HW, insbesondere mit dem Player oder der SD Karte, etwas nicht in Ordnung ist? Es sieht so aus, als ob der Player keine Rückmeldung gibt, dass er den Titel abspielt.

Also ich habe die AIO+ und damit sollte hoffentlich alles in Ordnung sein. Das Problem besteht bei mir nur, wenn ich den TonUINO mit aufgelegter Karte starte. Ist keine Karte aufgelegt und ich starte, dann funktioniert alles problemlos. Ich werde heute Abend noch mal die Version 2.2 testen und dann Rückmeldung geben.

Ich habe das gerade nochmal überprüft. Bei mir geht das problemlos auch wenn die Karte beim Einschalten schon liegt. Dann fängt die Box sofort an zu spielen.

Leider ist die Version vom Online Update schon etwas veraltet. @Thorsten: Könntest du mal eine neue Version beim Online Update bereitstellen?

Vielleicht kannst du auch die 3.1.1 vom Branch ‚main‘ mal selber bauen und aufspielen?

Ja, das Verhalten ist so gewollt. Das war meiner Meinung nach auch bei der 2.x so.

Glückwunsch!

Mir ist nichts von Testfällen bekannt. Meist wurde wohl versucht, einfach per Hand alle Features durchzutesten.

Ich habe mal angefangen, Unit Tests aufzusetzen, die auf dem Host laufen. Dabei verwende ich Google Test. Die HW wird dabei einfach simuliert, d.h. alle Header (Arduino.h, … und auch alle Libraries) werden ersetzt durch Implementierungen, die sich so wie die Originale verhalten, wo man dann aber checken kann, ob die Tonuino Software die richtigen Funktionen aufgerufen hat. Das Framework dazu habe ich fasst fertig. Bei den Testfällen kann ich dann sicher Hilfe gebrauchen. Ich melde mich wieder, wenn das Framework soweit fertig ist und auch ein paar Beispieltestfälle.

1 „Gefällt mir“

Ich habe mir gerade die Version 3.1.1 gebaut und aufgespielt, aber danach ging es immer noch nicht. Dann habe ich noch mal eine andere SD-Karte ausprobiert und jetzt funktioniert es wie gewünscht. Mir gefällt die neue Version 3.x wirklich gut. Vielen Dank für deine Unterstützung!

1 „Gefällt mir“

da ich Probleme mit dem Webupdate und mir dem selbst kompilieren habe
bitte ich um das Classic Update als Bin Datei.

hier TonUINO-TNG-bin findet ihr die Binaries für alle Varianten in der Version 3.1.1
Ich werde dort auch neue Versionen hinzufügen.

Da immer wieder Probleme beim Compilieren der 3.1 mit der Arduino IDE sind, bitte ich mal um Mithilfe von allen, die es schon geschafft haben. Das Problem ist, das richtige Verzeichnis zu finden, wo man die Datei platform.txt editieren kann oder (noch besser) die Datei platform.local.txt hinkopieren kann.
Bitte schreibt doch mal folgende Angaben:

  • Betriebssystem
  • Arduino IDE Version
  • TonUINO HW Variante
  • Verzeichnis (wo die Datei platform.txt zu finden ist)

Ich werde das dann im Readme besser beschreiben.

Wie angekündigt habe ich das Unit Test Framwork fertig und auch schon mal ein paar basic Tests implementiert. Das Ganze ist nach main gemergt.
In Github laufen jetzt immer die Tests automatisch ab, wenn ein Pull Request nach main erstellt wird (dann auf dem Branch von dem der PR ausgeht) oder wenn in main was committet wird. Das kann man unter Actions sehen. Ein PR lässt jetzt nur noch mergen, wenn die Tests erfolgreich waren.

Wer Lust hat, kann sich das ja mal auf Github anschauen.

Wer Lust und Zeit hat, kann jetzt auch dabei helfen, die Testfälle aufzustellen, die dann zu implementieren sind. Die Testfälle können völlig analog dazu aufgestellt werden, was man auch per Hand mit einem richtigen TonUINO testen würde. Man kann Chip Karten auflegen mit beliebigen Inhalt, man kann Tasten drücken, man kann die SD Karte bestücken (in welchem Ordner liegen wie viele Dateien), man kann überprüfen, was der Player gerade abspielt, … Und noch wichtiger, man auch Fehler der HW simulieren und schauen, dass sich die Software dabei richtig verhält und wenigstens den Fehler ausgibt.

Wer die Test mal selber ausführen will: Es wird cmake und ein c++ Compiler benötigt. Dann einfach im TonUINO-TNG Verzeichnis folgendes ausführen:

mkdir build
cd build
cmake ..
make all
make test

BTW: ich habe noch Fehler beseitigt, die durch die Umbenennung vom TonUINO-TNG.ino reingekommen sind. Jetzt funktioniert das Compilieren wieder mit platformio und Arduino IDE.

1 „Gefällt mir“

Ich habe es geschafft TonUINO-TNG selbst zu übersetzen, auch mit ein paar Anlaufschwierigkeiten. So ging es dann aber:

  • MacOS 13.1
  • Arduino 1.8.16 (schon etwas älter)
  • /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/platform.txt
  • TonUINO Classic

  • MacOS 13.1
  • Arduino 1.8.16 (schon etwas älter)
  • ohne Änderung an platform.txt
  • TonUINO AiO+

@Boerge1 : Danke für den Hinweis.

1 „Gefällt mir“