He cleared the AC flight to land on the runway and then cleared firetruck to cross the same runway at the same time. That’s the first error. When he realized his error, he started saying stop, but didn’t indicate who on the radio that command was meant for until he had said the word 4 times already. (Eg “Stop, stop, stop, stop, Truck 1, stop, stop, stop. Stop, Truck 1, stop” instead of “Truck 1, stop, stop, stop, stop, Truck 1, stop, stop, stop. Stop, Truck 1, stop”.
It may not have made a difference anyway…if the truck was already crossing the runway, stopping on the runway probably meant that they were still in the path of the plane.
The ATC even said “I messed up” on the audio right after the crash. Apparently he handling both air and ground control at the time.