che c'è tutta una parte di codice che NON è all'interno di una funzione.?
cioè se questo è il tuo sketch manca un bel pò di roba, il setup(), il loop(), gli eventuali #include, la tua funziona updatePid fa return solo se l'if è vero
(riguardo l'errore sui valori sputati fuori sarà colpa dell windup?)
mi si è rotta la sfera di cristallo, e di sicuro non è questo il codice che usi visto che non compila. In particolare bisogna capire anche QUALI valori passi al pid e QUANDO