Hallo
Ich bin absoluter Anfänger hier und habe mir das Programm Arduino runtergezogen und die Software (cnc-werkstatt/Table Router Shield at master · timo1235/cnc-werkstatt · GitHub)
auch nun ist mein Problem wie kriege ich das auf den ESP32
Zuerst musst du rauskriegen, wie man die Arduino Software für ESP (die ja eigentlich keine Arduinos sind) erweitert.
In kurz hier bei Wolle. ausführlicher z.B. bei Heise.
Bitte keine Sketche und Fehlermeldungen als Foto posten.
Das geht wunderbar als Text in Code-Tags und ist damit besser lesbar.
OK und wie geht das ich habe doch gesagt ich bin Anfänger
Und deshalb bist du nicht in der Lage das hier zu lesen ?
In dem Fall (IDE 2.x.y) sogar ziemlich einfach:
Du hast doch da das Popup mit der Schaltfläche "Fehlermeldungen kopieren". Da drauf drücken und dann hier in einem Post mit Code-Tags einfügen (davor und dahinter ```
).
Fertig.
Und ich will nix mehr von Anfänger lesen, das waren wir alle mal. Es braucht auch ein klein wenig Eigeninitiative um diesen Status hinter sich zu lassen.
Ich Danke Dir wno158
Das ist ja einfach
WARNUNG: Bibliothek LiquidCrystal I2C behauptet auf avr Architektur(en) ausgeführt werden zu können und ist möglicherweise inkompatibel mit Ihrer derzeitigen Platine, welche auf esp32 Architektur(en) ausgeführt wird.
C:\Users\mader\Downloads\cnc-werkstatt-master\cnc-werkstatt-master\Table Router Shield\Sketch\v2.0\vscode-table-router-shield\lib\RotaryEncoder\examples\LimitedRotator\LimitedRotator.ino:29:23: error: 'A2' was not declared in this scope
RotaryEncoder encoder(A2, A3);
^~
C:\Users\mader\Downloads\cnc-werkstatt-master\cnc-werkstatt-master\Table Router Shield\Sketch\v2.0\vscode-table-router-shield\lib\RotaryEncoder\examples\LimitedRotator\LimitedRotator.ino:29:23: note: suggested alternative: 'T2'
RotaryEncoder encoder(A2, A3);
^~
T2
exit status 1
Compilation error: 'A2' was not declared in this scope
Genau...noch einfacher ist es, wenn man sich selbst schlau macht.
Aber ok....
Das Programm wurde für einen UNO oder Mega2560 oder dergleichen geschrieben, wo die Pinbezeichnungen Ax bekannt sind. Bei einem ESP32 ist das aber nicht der Fall. Programm und Hardware passen also nicht zusammen.
Als Anfänger kannst Du Dich für eine steile Lernkurve entscheiden und das vorhandene Programm umschreiben oder Du suchst nach einem auf Deiner Hardware lauffähigen Programm.
EDIT: Beim Blättern bin ich über dieses Programm gestolpert:
// Pin configuration
const byte buttonProbePin = 36;
const byte limitBottomPin = 39;
const byte limitTopPin = 34;
const byte limitProbePin = 35;
const byte potiRotationSpeedPin = 32;
const byte spindlePwmPin = 33;
const byte pullPin = 25;
const byte dirPin = 26;
const byte enaPin = 27;
const byte d14Pin = 14; // unused
const byte buttonSpindleStartPin = 12;
const byte d13Pin = 13; // unused
const byte buttonDirectPin = 23;
const byte encoderBPin = 19;
const byte encoderAPin = 18;
const byte buttonOkPin = 5;
const byte d17Pin = 17; // unused
const byte d16Pin = 16; // unused
const byte spindleOnOffPin = 4;
const byte d2Pin = 2; // unused
const byte buttonWZWPin = 15;
Das sieht eher nach ESP32 aus, hast Du möglicherweise das falsche Programm ausgewählt?
Zusätzlich zu den von @agmue schon erwähnten inkompatiblen Pin-Bezeichnungen steht ganz oben noch eine Warnung:
"avr"-Architekturen: Arduino Uno/Nano/Mega und Clone
"esp32"-Architektur: Das was Du vermutlich vor Dir liegen hast und mit dem `DOIT ESP32 DEVKIT V1" auch als Zielsystem ausgewählt hast.
Wie kommt man - noch ohne viel Erfahrung - dann weiter? Ich schreibe mal auf, was ich mache:
- Suchmaschine (in meinem Fall Bing)
- Suchbegriff "liquidcrystal_i2c esp32", erster Treffer bei randomnerdtutorials (m.E. eine gute Adresse mit vielen nützlichen Hinweisen).
- Da findest Du dann, dass Du eine weitere Library brauchst, die I2C-LCDs am ESP32 bedienen kann.
Ob es das ist, kann ich nicht sagen; habe weder die DOIT- noch das "Table Route Shield" (letzter Upload auf das Archiv war vor drei Jahren...)
Was hast Du eigentlich vor?
Da muss ich mich mal die Tage durchwühlen was ist vorhabe sieht man hier https://youtu.be/HAaH0m0teQM?si=NqRY5i8Jkreyt8Sc
Kennst Du das hier? Flashen (= SW aufspielen) ohne Kompilieren - direkt bei dem, der den Fräslift gebaut hat.
Okay, das scheint für das Open CNC Shield zu sein, ich weiß jetzt nicht, ob Du das im Einsatz hast.
nein das habe ich nicht
sondern das Table Router Shield | 1.6 | SW10012.2
Sodele (ich brauchte mal eine Pause von der Steuererklärung...)
Man kann es hinbekommen:
Sketch uses 297137 bytes (22%) of program storage space. Maximum is 1310720 bytes.
Global variables use 22460 bytes (6%) of dynamic memory, leaving 305220 bytes for local variables. Maximum is 327680 bytes.
Der Kollege Timo, der das konstruiert hat, macht es nicht einfach, denn sein Github-Archiv enthält keine direkt mit der Arduino-IDE kompilierbare Version der Software.
Der Sketch ist wie von @agmue in #11 nach dem Edit vermerkt als main.cpp
im Github versteckt. Das Ding hast Du ja auch schon in Deiner IDE, wie ich dem Screenshot aus #4 entnehme.
Anleitung in lang
Also erstmal IDE schließen, dem main.cpp
einen sinnvollen Namen (z.B. tablerouter.ino
) geben und in ein namensgleiches Verzeichnis (z.B. tablerouter
) packen. Dann mit der Arduino-IDE öffnen.
Libraries können - bis auf die fürs Display - alle unmittelbar in der IDE selbst geladen werden:
(Das ist dieselbe Rotary, die auf Timos Github liegt)
Die Display-Library lädst Du als ZIP-Archiv von hier (Tipp von randomnerdtutorials) und speicherst das irgendwo. Installieren über Sketch -> Include Library -> Add .ZIP library:
Dann solltest Du den Sketch kompilieren, linken und nach Auswahl des richtigen COM-Ports auch auf den ESP laden können.
Wie die Lottozahlen: Ohne Gewähr! (weil ich die Hardware nicht habe)
Super !!!
Danke dir wno158 mein dank gehört dir.
Wenn ich das richtig ferstehe lag das nur an die falsche Display-Library
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.