The components of a computer controlled firing system include
1. A laptop
2. Fireworks show designing software
3. Firing software
4. A firing control console.
5. Remote firing module boxes which active "electric matches" - nichrome wire and a small amount of gunpowder that ignites the fireworks when a current is applied.
6. A large battery to power the system
7. Cabling and WiFi access points to connect the entire system.
A show designer inputs the inventory of fireworks to be used into the show designing software, including the name and size of each firework. Interestingly, each explosive also has a known time delay between ignition and effect, which is also part of the show design database.
The show designer uses this software to develop a firing sequence. If the fireworks are to be synchronized to music, the music is converted to a time series such as a midi and uploaded to the fireworks design. Synchronizing an aerial bomb with a cymbal crash is easy - just launch the shell taking into account the time delay between ignition and effect.
On the day of the fireworks display, the fireworks are assembled in launching mortars, connected to electric matches, and cabled to firing models. The modules are in turn connected to the firing console. The entire system is checked for electrical integrity and the show is ready to begin.
The pyrotechnicians start the firing software on cue and the entire show is delivered automatically, without human intervention. If a fire or other problem occurs during the show, the program can be stopped and restarted once the hazard has been resolve
Of course, all this computerized complexity can introduce points of failure into fireworks shows.
As expected, Slashdot had the usual pointed commentary.
Next time you watch a fireworks show, you'll know all the cool technology behind it!