The Korean fleet arrived near Busan on 20 August in 1597. As the day was about to end, they met a force of 500 to 1,000 Japanese ships arrayed against them. Won Gyun ordered a general attack on the enemy armada, but the Japanese fell back, letting the Koreans pursue. After a few back and forth exchanges, with one chasing the other, one retreating, the Japanese turned around one last time, destroying 30 ships and scattering the Korean fleet.
Won's men docked at Gadeokdo and ran ashore to find water where they were ambushed by 3,000 enemy troops under Shimazu Yoshihiro. They lost 400 men and several vessels.
From Gadeok, Won retreated north and west into the strait between Geoje and the island of Chilchon, Chilchonnyang. Won Gyun then retired to his flagship and refused to see anyone. The entire fleet sat in the strait for an entire week.
The Japanese commanders convened on 22 August to plan a joint assault on the Koreans. Shimazu Yoshihiro ferried 2,000 of his men to Geoje, where he arrayed them on the northwest coast, overlooking the Korean fleet below.
On the night of 28 August, a Japanese fleet of 500 ships moved into the strait and attacked. By dawn, nearly all the Korean ships had been destroyed.
Won Gyun fled to the mainland but could not keep up with his men. He sat down under a pine tree until the Japanese found him. It is assumed that his head was cut off.
Yi Eokgi also died during the battle after drowning himself.