sì, questo è il tag code... c'è una bella differenza, che dici? ![]()
allora, tu fai:
durata = pulseIn(servo1,HIGH); // durata impulso
e fin quì ok.
poi fai:
adj_val1 = map(constrain(servo1_val, 1600, 1900), low1, high1, 0, 255);
ma servi1_val non viene "scritta"(si dice inizializzata) da nessuna parte, quindi contiene un valore a caso (in questo caso 0)
di conseguenza adj_val1 rimarrà sempre a 0!
devi mettere durata al posto di servo1_val. (errore di distrazione?)
per codice di debug della seriale intendo il codice con cui mandi i valori via seriale per controllare se sono giusti, appunto il debug.
in pratica il codice di debug è questo:
Serial.print("ch1: ");
Serial.print(adj_val1);
Serial.print(" ");
Serial.print("rc1: ");
Serial.print(servo1_val);
Serial.print(" ");
Serial.print("loop counter: ");
Serial.print(n);
Serial.println(" ");
a cui manca la print di durata.
il resto mi pare a posto, vabbè qualche variabile messa lì a far la muffa ma niente di grave