Carl was a Terminator (T-800 unit) sent back to kill John Connor. He then became an ally of Sarah Connor, Dani Ramos and Grace.
Why He Sucks
The concept is very similar to the Guardian from Terminator: Genesys.
He killed John Connor in the first place.
His sentience contradicts the previous Terminator films as its stated in the first film that Terminators don't feel pity, remorse or fear. The only reason Uncle Bob (Terminator 2) was different was because the resistance reprogrammed him and even then he didn't actually feel anything, he just came to understand emotions. We are given no explanation with Carl.
His comic relief is very outta character for a powerful machine designed for killing.
He does not really do anything important during the film. He's just there for nostalgia.
He did regret Killing John Conner (Though Terminators can't be human) and join forces with Sarah and the others to stop the REV-9
He sacrificed himself by Killing the REV-9 in order to save Sarah Conner and Dani.