He was cold cocked because he did not exercise due caution.
He had every right to defend himself at that point. However, a little common sense and caution would have helped Zimmerman stay out of jail.
I think what the state of Florida is doing is a travesty of justice. Zimmerman did not commit any crime. I think he is a bit of a dolt, but even dolts don’t deserved to be falsely prosecuted.
What if Zimmerman had not done what he did and the black guy acting suspiciously broke into a house and killed someone? Zimmerman was trying to keep Martin in sight until the cops got there. I’m sure if he had it to do over, he’d let Martin do whatever the hell he wanted to do.