Here's a picture of the Maelzel's Panharmonicon (from pianola.org). This was a mechanical device which could play pre-programmed orchestral music, kind of like a gigantic music box. Beethoven composed Wellington's Siege (Battle of Vittoria) Op.91 (1813) for it and then created a score for regular orchestra. Actually the score has 2 parts, a 'battle' symphony and a 'victory' symphony. The 'victory' part was composed for the panharmonicon. Maelzel (who invented the metronome as well as Beethoven's ear-trumpets) more or less told Beethoven which themes he wanted for this device and that's why this piece is usually considered an embarrassment. Actually it's a light piece of program music and I still like it for what it is. It basically provides music and sound effects to evoke the Battle of Vittoria where Britain's Wellington defeated Napoleon. In fact, cannon and musket shots are actually written into the score (the battle part). Yes, Beethoven used graphic notation in 1813. You can here a midi version of this piece and more info below from
(Wind Band version)
Interestingly, I recently learned that the ensemble which premiered the orchestral version of Wellington's Siege included Salieri (cannon supervisor), Hummel (percussion), and Meyerbeer (large thunder machine)...no wonder it was a hit!