Coder Social home page Coder Social logo

Comments (16)

danrauch avatar danrauch commented on June 2, 2024

Hallo Gregor,

man müsste dazu die letzten beiden Einträge im SDOSE Ausgabestring (im Moment steht da fix zwei mal „0“) mit Leben füllen:

sprintf(cerea_command_out, "@sdose;%d;0;0;0;%d;%d;%d;%d;%d;0;0;END",...

Das kann man 1 zu 1 so machen wie das schon bei „links“ und „rechts“ umgesetzt ist. Die Datenstruktur für den aktuellen Cereastatus sieht sogar schon entsprechende Einträge vor (turn_left, turn_right).

VG

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

Ich verwende derzeit die Version 0.2.1.

Kann leider die genannten Stellen nicht finden im Sketch, welche zu ersetzen sind.

Evtl. diese?; (siehe Bild)

Und wie genau muss ich hier die Textstellen ändern?

Bin leider noch nicht sehr geübt in der Arduino Programmierung.

Danke!
Freundliche Grüße,
Gregor
image

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

image

Ah, habs übersehen.

Und was muss ich hier jetzt genau alles anpassen im Sketch?

from arduino-cerea-remote-control.

danrauch avatar danrauch commented on June 2, 2024

Als erstes müsste man sich überlegen, wie man die Funktion bedienbar macht. Da gibt es generell folgende Möglichkeiten:

  • Man führt 2 weitere Touchbuttons ein. Dies wäre einfach zu bewerkstelligen; jeder Button müsste aber dafür kleiner werden.
  • Man nutzt 2 vorhandene Buttons, was ebenfalls trivial wäre. Die überschriebenen Funktionen würden so aber natürlich nicht mehr zur Verfügung stehen.
  • Man führt eine zweite "Seite" mit den zusätzlichen Buttons und die entsprechende Seitennavigation ein. Das wäre eher aufwändig.

Die eigentliche Funktionalität ist im jedem Fall so nachzurüsten:

  1. Buttons erstellen (äquivalent zu anderen Buttons). Diese könnten z.B. BUTTON_TURN_LEFT und BUTTON_TURN_RIGHT heißen.
  2. Bei Buttondruck "turn_left" bzw. "turn_right" der cerea_commands-Struktur in der switch-Anweisung auf true setzen, z.B.:
    case BUTTON_TURN_LEFT: cerea_commands.turn_left = true; break;
    case BUTTON_TURN_RIGHT: cerea_commands.turn_right = true; break;
  3. Status der Flags zur Ausgabe hinzufügen:
    sprintf(cerea_command_out, "@SDOSE;%d;0;0;0;%d;%d;%d;%d;%d;%d;%d;END", cerea_commands.marc,
                                                                           cerea_commands.A, 
                                                                           cerea_commands.B,
                                                                           cerea_commands.auto_on,
                                                                           cerea_commands.left,
                                                                           cerea_commands.right,
                                                                           cerea_commands.turn_left,
                                                                           cerea_commands.turn_right);
  4. Flags auf false zurücksetzen, äquivalent zu z.B. left.

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

from arduino-cerea-remote-control.

danrauch avatar danrauch commented on June 2, 2024

In diesem branch liegt eine etwas abgewandelte v0.2.1, welche die Relaisfunktionen mit Wenden ersetzt:
https://github.com/danrauch/arduino-cerea-remote-control/tree/turn_no_relais

Konnte es aber nicht testen...

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

Hallo Daniel!

Hab's soeben getestet.
Folgender Fehler wird angezeigt beim hochladen;

Arduino: 1.8.9 (Windows Store 1.8.21.0) (Windows 10), Board: "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

C:\Users\grego\Downloads\arduino-cerea-remote-control-turn_no_relais\arduino-cerea-remote-control-turn_no_relais\cerea-remote\cerea-remote.ino: In function 'void loop()':

cerea-remote:296:22: error: 'BUTTON_RELAY_AUTO' was not declared in this scope

         if (b != BUTTON_RELAY_AUTO) {

                  ^

exit status 1
'BUTTON_RELAY_AUTO' was not declared in this scope

from arduino-cerea-remote-control.

danrauch avatar danrauch commented on June 2, 2024

Das war noch vom alten drin, tatsächlich. Ist behoben.

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

Hab nun den Sketch hochgeladen und getestet.
Das ging schon mal, und auch die Oberfläche sieht sehr gut aus.

Jedoch gibts noch zwei Probleme:
Die 2 Tasten zum Wenden funktionieren noch nicht. Bei Tastendruck reagiert das Bedienelement garnicht.
Alle anderen Tasten funktionieren in Cerea.

Außerdem gibt es keine Vibrationsrückmeldung mehr bei Betätigung sämtlicher Tasten.

Lg

from arduino-cerea-remote-control.

danrauch avatar danrauch commented on June 2, 2024

Ist behoben, sorry, ich hab zur Zeit keine Hardware zum testen verfügbar - bin quasi blind :-)
War jedoch nur ne Anzeigesache. Den Befehl zum Wenden sollte das Programm dennoch geschickt haben.
Falls Cerea das nicht annimmt, haben die das noch nicht implementiert...
Auch die Vibration sollte funktionieren - hier Achtung: Sie müssen #define VIBRATION_MOTOR_PIN LED_BUILTIN entsprechend Ihrem Anschlussschema anpassen. Z.B. meist nutzen die Leute Pin 13. Dann muss es so aussehen: #define VIBRATION_MOTOR_PIN 13

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

Ok., kein Problem.
Hab ja alles zum testen. :-)

Ok., das mit dem Vibrations PIN hätte ich wissen können.

Funtioniert jetzt soweit.
Er nimmt jetzt auch den Tastendruck auf links und rechts wenden wahr.
Jedoch kommt noch nix bei Cerea an.

Muss ich evtl. in Cerea Einstellungen ändern?

Lg

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

...Zusatzinfo!

Bei Cerea ist in der Config „o“ als turn_left und „p“ als turn_right Befehl angegeben!
Mit einer Tastatur bei Betätigung der Tasten „p“ und „o“ funktioniert das automatische wenden!

Danke für deine Bemühungen!

from arduino-cerea-remote-control.

danrauch avatar danrauch commented on June 2, 2024

Kann keinen Fehler im Code mehr feststellen. Im Forum schreiben die Leute, dass Wenden in diesem Zusammenhang „ohne Funktion“ ist: https://cerea-forum.de/forum/index.php?thread/91-befehle-für-tastatureingaben-von-arduino-zu-cerea/
Das könnte aber auch noch nicht der Weisheit letzter Schluss sein... evtl. nochmals im Forum nachfragen, ob wer die Lösung kennt.
Ich selber hab kein Cerea, kann es also nicht testen...

from arduino-cerea-remote-control.

GregorAUT avatar GregorAUT commented on June 2, 2024

Ok., dann probier ich selbst nochmal alles Mögliche durch!

Und dass man einfach den Buchstaben „o“ und „p“ rausgibt bei Tastendruck, als ob man eine Tastatur betätigt würde nicht funktionieren denkst du?

Bei einer Tastatur funktioniert es nämlich.

Danke auf jeden Fall für deine Bemühungen!

Hier noch das Video:
https://youtu.be/sUeeW8SyTd4

from arduino-cerea-remote-control.

danrauch avatar danrauch commented on June 2, 2024

Leider bewegen wir uns hier in einen ganz anderen Context wie eine Tastatur.
Wie gesagt, das Forum könnte weiterhelfen. Ich schließe den Issue, da der Sketch wahrscheinlich nicht das Problem ist.

from arduino-cerea-remote-control.

Related Issues (11)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.