The backflow preventer was preventing water flowing the correct way. I install my garden hose (which I had to cut because the end was bent) into the weep output. When I did this it worked but there was a weird noise like a gush of water then everything worked normally again. I guess the water flowing the wrong way into the backflow preventer made it work again. It needs to be replaced though.
The backflow preventer is 7 1/2 inches long.