I just bought a bike and the horn didn't work. It was easy to fix. (I'm writing this for a 2006. If you have a different year, things may be very slightly different.)
There are essentially 4 parts to the horn circuit:
- The battery
- The horn itself
- The horn switch
- The wiring that connects these pieces
You can safely assume that the battery isn't the problem. If it isn't working enough to power a horn, you'll have lots of other problems that are more apparent.
The easiest thing to check first is the horn unit. It's located up above the front fender, and it looks like a round metal disk with 2 wires plugged onto it. Pull the 2 wires off and hook them up to a multimeter set to test 12 volts. Turn the key to the on position. It should read 0 volts. When you press and hold the horn button, your multimeter should read 12 volts. If it does, it's safe to assume the horn unit is the problem and needs to be replaced. You can confirm this by connecting 12 volts directly to the horn unit using some wire and any 12 volt battery. If you connect everything and the horn doesn't make a sound, its not working.
The next step would be to test the horn switch. You'll need to connect your multimeter up to the horn switch and set it to test for continuity. The horn switch has a few sets of wires coming off it, I believe it's one of the pairs, but you'll have to identify which are used for the horn. If you get to this point and can't figure it out, let me know. Hook the 2 horn wires up to your multimeter. When you press and hold the horn switch your multimeter should beep and light up to show you there is a continuous connection through the switch. If not, the switch isn't working and needs to be replaced.
If you still haven't found the problem, there is a break in the wiring somewhere. Good luck finding it, you're in for some fun....
When I did this I got lucky and the actual horn unit was the problem. You can easily buy a generic horn for any auto parts supplier for about $10-20.