(DATEPART(MINUTE, [timestamp]) % 10)
will be the same for any hour of the day. That means, you have to get the hour into that value somehow. I'd suggest to use
(DATEPART(HOUR, [timestamp]) * 10 + DATEPART(MINUTE, [timestamp]) % 10)
(both in SELECT and GROUP BY).