one problem area that fails is the passenger seat detection trigger. there's a trigger on the bottom of the seat that goes bad. it doesn't deploy the airbag if there's not body sitting there. if it's faulty... um... i'm not sure if it will still go off or not.
this is one of the reasons it comes on randomly... at least for me. other then that, you'll have to have carsoft or something of the light read and clear it out.