Nadal nie wiadomo, jak jest rozwiązane zasilanie Arduino. Zgaduje, że 12V z zasilacza jest podawane na Vin Arduino, a z wyjścia +5V zasilany jest LCD.
Postawiłbym na to, że podczas startu pomp pobór prądu z zasilacza jest tak duży, że włącza się ograniczenie prądowe i napięcie na zasilaczu spada. I o ile Atmega na płytce Arduino nic się nie dzieje, to LCD gubi część transmisji (podczas spadku napięcia) i pojawiają się krzaki.
Można to sprawdzić bardzo łatwo zasilając Arduino z oddzielnego zasilania, np. z USB. Dodam, ze prąd rozruchowy silnika może być nawet 10 razy większy od prądu znamionowego.
Jeśli to pomoże, to należy zasilić Arduino z zasilacza do Vin przez diodę i dać duży (np. 1000uF) kondensator miedzy Vin a masę.
Nie wiem jaki sposób montażu zastosowałeś, ale możliwy jest okresowy brak styku między Arduino a LCD
Vitor Borba napisał(a):
Nie jest czasem tak ze same arduino jest już filtrowane?
Tak, na płytce Arduino są kondensatory blokujące zasilane, ale ich zadaniem jest dostarczanie energii na bardzo krótki czas (us).
W przypadku pomp rozruch trwa nieporównanie dłużej (ms lub s) i potrzebny jest dużo większy kondensator.