By placing the ip condition in the where clause you turned the outer join into an inner join. Move it to the join condition
select coalesce(sum("count"), 0), minute
from
generate_series(
'2014-05-14 0:00:00'::timestamp,
'2014-05-14 23:59:59',
'1 minute'
) minutes(minute)
left join
t on
minutes.minute = date_trunc('minute', t.date)
and
ip = '232.232.232.23'
group by minute
order by minute
http://sqlfiddle.com/#!15/31483/5
To have the timestamp as a comma separated string replace
select coalesce(sum("count"), 0), minute
by
select
coalesce(sum("count"), 0),
to_char(minute, 'YYYY,MM,DD,HH24,MI') as minute