The Jamaican, who won three gold medals at the 2008 Beijing Games, had a slow start but pulled ahead in the final stretch to finish in 10.04 seconds.
Bolt, who failed to improve his season best of 9.82 from a May meet in Jamaica, sounded disappointed with the time.
“It’s hard to explain. I don’t really know what went wrong,” Bolt said.
Ahead of the race, Bolt said he was working on his notoriously slow start to improve and be ready to attack his world records in the 100 and 200 in London.
“At the start I didn’t feel explosive as I normally feel like,” he said.
Kim Collins of St. Kitts and Nevis finished second in 10.19 and American Darvis Patton was third in 10.22.
This was his sixth competition in Ostrava.
“I was looking to coming here for a good time. I guess it’s one of those days,” he said. “I just never got going.”
The runners had to start twice after Simon Magakwe false started.
That was something familiar for Bolt who failed to defend the world championship title in the 100 in Daegu, South Korea, after he was disqualified for a false start.
But Bolt said that was not a problem for him Friday. He said he felt good ahead of the race.
“I did some starts and I was flying from the blocks so I said, ‘Yeah this is good.’ I can’t tell you what happened.”
Bolt will have another chance to lower his times in Diamond League meets in Rome on Thursday and Oslo on June 7 before returning to Jamaica for the national trials.
In the meantime, he said he will seek advice from his coach.
“I have to look at the tape and see what went wrong and call my coach to explain to me what I did wrong.”