England paceman Stuart Broad struck twice as India began their 194-run chase for victory in the first Specsavers Test.
Edgbaston was close to boiling point as Broad dismissed openers Murali Vijay and Shikhar Dhawan to leave India 22 for two.
Vijay had been dropped on one by Dawid Malan, the Middlesex player spilling his third catch of the match after putting down India skipper Virat Kohli twice on Thursday.
But Malan was reprieved this time when Vijay padded up to Broad on six and was out lbw.
India paceman Ishant Sharma celebrates the dismissal of England batsman Ben Stokes (Nick Potts/PA)
England skipper Joe Root urged the crowd to get behind Broad and Dhawan soon nicked his attempted drive to wicketkeeper Jonny Bairstow.
That brought first-innings centurion Kohli to the crease and he soon saw Lokesh Rahul edge Ben Stokes behind to leave India 46 for three.
England were earlier dismissed for 180 in their second innings as Ishant Sharma claimed his eighth five-wicket Test haul.
Sam Curran made a Test-best 63 – his 65-ball stay including nine fours and two sixes – but the rest of the England batting was a tale of woe.
A 20 yr old giving England a Sniff .. Great stuff .. Love Sam Currans temperament .. Whatvever happens and whoever Wins this has been a Fantastic Test Match !!! #ENGvIND
— Michael Vaughan (@MichaelVaughan) August 3, 2018
Ravi Ashwin removed Keaton Jennings (8) and captain Root (14) before Ishant dismissed Malan (20).
Ishant then took three wickets in one over either side of lunch to leave England creaking at 87 for seven, and it was only Curran’s excellent effort which gave them hope.
India, however, would have to eclipse their highest successful run-chase in England to win – the 174 they managed at The Oval in 1971 for their first Test victory on English soil.