Hallo,
mein Raspberry Pi 3b+ und Arduino UNO sollen über die serielle Schnittstelle kommunizieren. Auf dem Raspi nutze ich ein Python Programm, welches die serielle Schnittstelle steuert. Der Arduino soll dabei als ADC für den Raspi arbeiten. Das Problem ist, wenn ich den Arduino einmal vom Raspi trenne (oder den Raspi neu starte) bekomme ich anschließend nach Ausführen des Python Programms erst nach dem Senden der zweiten Botschaft eine Antwort vom Arduino. Was auch interessant ist: Wenn die .ino Datei nach dem Reconnect (USB) erneut auf den Arduino geladen wird (nutze die Arduino IDE auf dem Raspi) besteht dieses Problem nur beim ersten Ausführen des Python Programms. Im Anhang findet ihr die Consolue Outputs, damit sollte es verständlich sein.
In der Vergangenheit hatte ich bereits ein ähnliches Problem: Arduino hängt am Windows-PC und kommuniziert über die serielle Schnittstelle mit einer Windows-Form. Allerdings bekam ich auch hier nach dem Reconnect des Arduino (USB) oder Neustart des PCs erst eine Antwort nach der zweiten gesendeten Botschaft. Damals hatte ich es einfach gelöst indem die Windows-Form zusätzlich eine erste Botschaft sendet, welche der Arduino ignoriert (falls er es nicht eh schon tut). Kann man das auch schöner lösen? Scheinbar mache ich irgendwo einen Fehler.
Arduino_Kommunikationstest_py.txt (970 Bytes)
MEASURE.ino (532 Bytes)
Console_Output_1.txt (1.3 KB)
Console_Output_2.txt (1.41 KB)