Tony Shields was hero and villain at London Road, putting Peterborough ahead with his first goal of the season only to blot his copy book in the second-half when gifting Swindon's Danny Invincibile an equaliser.
Swindon left goalkeeper Bart Griemink badly exposed on 35 minutes as a long throw by Matthew Gill was flicked on by Mark Arber for Irishman Shields to control the ball on his chest before sweeping a right-footed shot past former Posh goalkeeper Griemink.
As the Posh goal went in, Swindon were frantically trying to replace wing-back David Duke with Invincibile, relegated to the bench by manager Andy King after rejecting a new contract and announcing that he intends moving on at the end of the season.
Griemink saved superbly to deny Leon McKenzie as Posh chased a second goal and with Barry Fry's men retaining the initiative after the break, the Swindon cause was hardly helped when Eric Sabin was sent off after flattening Mark Arber.
Most of the players on the field became involved in skirmishes and there were heated verbal exchanges on the touchline between King and Fry before referee Graham Saliswbury restored order and also booked Posh's Sagi Burton.
But King was adamant Sabin was hard done by: "The officials were absolutely atrocious, the pitch was absolutely atrocious and there is no way Eric should have been sent off," he stormed.
Ten-man Swindon pushed Invincible up front and the gamble paid off on 70 minutes when Shields under hitting an awful back pass that the Australian intercepted with ease before firing past a bemused Mark Tyler.
Posh boss Fry could hardly believe his eyes, commenting: "One piece of carelessness on a bumpy surface cost us two points without a doubt. We just don't seem able to do it at home and never looked comfortable in attack and we still need three wins before we can relax."