Tens of thousands of Brazilians took to the streets on Wednesday calling for a crackdown on corruption and better public services.
In Belo Horizonte 40,000 people gathered to demand better education and healthcare as Brazil's third-largest city hosted a Confederations Cup semi-final between Brazil and Uruguay - a warm-up for the 2014 World Cup.
Youths threw stones at police who used teargas to stop marchers just a mile from the stadium. A banner hung from a bridge read "FIFA go home".
More top news
The country's counter-terrorism forces have regained control of the facility.
The commissioner of the Metropolitan Police has said he cannot promise the public an attack will not take place.
The showers are likely to be particularly heavy across northern parts of the country.