Pessoal rolou o seguinte, o boolean não estava gravando no banco de dados como 1, pois eu tinha colocado na query todas as values com ' ', resolvi tirar e deixar apenas no nome e descricao como esta no codigo do curso, e ai a coisa funcionou, a duvida minha é a seguinte, qual a real utilidade das ' ' nos values da query.
function insereProduto($conexao,$nome,$preco, $descricao, $categoria_id, $usado) {
$query = "insert into produtos (nome, preco, descricao, categoria_id, usado) values ('{$nome}', {$preco}, '{$descricao}', {$categoria_id}, {$usado})";
return mysqli_query($conexao, $query);
}