timo1235 / ocs2.x-esp32-software

This Software is for the ESP32 on the OPEN-CNC-Shield 2.x
Other
5 stars 6 forks source link

Output 4 Problem (Not-Aus über das Panel) #4

Closed HartmutA closed 1 year ago

HartmutA commented 1 year ago

Ich wollte über das Panel einen Not-Aus realisieren. Der Not-Aus Schalter sollte ein Endstop simulieren. Timos Vorschlag dazu war:

Stelle am Panel ESP32 in der Software ein, dass z.B. Output 4 damit geschaltet wird. Dann zieh eine Strippe von Output4 an einen der Eingänge.

Für das Panel habe ich die Version vom 11.12.2022 18:36 genommen. Für das Shield habe ich die Version vom 12.12.2022 17:49 genommen. Für das Panel habe ich in der configuration.h das so eingestellt:

// --- Inputs configuration ---
// This section defines, what types of inputs are connected to the panel
#define HAS_JOYSTICK                true // Includes joystick X, Y and Z
#define HAS_FEEDRATE_POTI           true
#define HAS_ROTATION_SPEED_POTI     true
#define HAS_OK_BUTTON               true
#define HAS_AUTOSQUARE_BUTTON       true
#define HAS_MOTOR_START_BUTTON      true
#define HAS_PROGRAMM_START_BUTTON   true
#define HAS_AXIS_SELECT_BUTTONS     false // Includes X, Y and Z axis select buttons

#define HAS_ENA_BUTTON              true // If true it needs to be mapped to a free button, see buttons 1-4 below
#define HAS_SPEED1_BUTTON           false // If true it needs to be mapped to a free button, see buttons 1-4 below
#define HAS_SPEED2_BUTTON           false // If true it needs to be mapped to a free button, see buttons 1-4 below
#define HAS_OUTPUT1_BUTTON          false // If true it needs to be mapped to a free button, see buttons 1-4 below
#define HAS_OUTPUT2_BUTTON          false // If true it needs to be mapped to a free button, see buttons 1-4 below
#define HAS_OUTPUT3_BUTTON          false // If true it needs to be mapped to a free button, see buttons 1-4 below
#define HAS_OUTPUT4_BUTTON          true // If true it needs to be mapped to a free button, see buttons 1-4 below

// Uncomment to enable debug messages over serial communication(usb)
#define OCS_DEBUG

// Button configuration - what is the button used for?
// Possible values: "ena", "speed1", "speed2", "output1", "output2", "output3", "output4", "menu", "none"
#define BUTTON_1 "output4"
#define BUTTON_2 "ena"
#define BUTTON_3 "speed2"
#define BUTTON_4 "menu" // Typically used for menu since the onboard button does not work on pcb version 1.04

In der protocol.cpp habe ich in der loop 2 Zeilen ergänzt:

        DPRINTLN("Button 1 (" + String(BUTTON_1) + "): \t" + String(dataToControl.output4));
        DPRINTLN("Button 2 (" + String(BUTTON_2) + "): \t" + String(dataToControl.ena));

Dann wird korrekt 0 oder 1 je nach Zustand auf der Console ausgegeben. Daher vermute ich mal ist die Panel Seite OK.

Dann habe ich einen Draht von Out4 zu In 7 gezogen. Estlcam bekommt nichts davon mit. Auch die LED leuchtet nicht. Siehe Bild: Out4toInput7

Was kann ich noch tun?

timo1235 commented 1 year ago

Sollte auch mit dem Merge request #5 gefixed sein. Da fehlten ein paar zeilen.