Bullard had his contract terminated by Hull after he had been suspended by the club following an incident on a pre-season trip to Slovenia.
The 32-year-old spent the final three months of last season on loan at Ipswich, scoring five times in 16 games for the club.
"We had been chipping away at Jimmy and Hull all summer to try and sort something out but Hull were adamant that we wouldn't be going out on loan again unless someone paid his wages," boss Paul Jewell told the club's official website.
"He had a few clubs to talk to but Jimmy made it clear that if we could sort out a deal then coming here would be his preference.
"It's a great feeling to know that even though he had the opportunity to go to a Premier League team he still wanted the opportunity to come here.
"Hopefully he can do what he did for us last year and beyond."