I mentioned double bursting codes earlier as a way to increase range. This is done by using short bust of codes and then subsequently a long bust there after. This creates a optical pump affect that can be useful to increase range with some IR receivers.
Are you planning to build in a macro feature into your program ? One that has timed events would be extremely helpful especially at the gym.
All in all I would love the ability to just leave my phone on the night stand and let it flip through the pre-defined channels i set giving me the ability to rule out ("drop") channels as i go along using only a single button click.