My Silverado had a loose screw in it, you could hear it rolling around and bouncing on the plastic. It sounded like a screw would if it was in your cupholder or some other kind of small plastic tray. I thought it was in the dash. It wasn't.
In the driver seat, it sounded like it was in the front far right corner. In the passenger seat, it sounded like it was in the front far left corner. Turns out, it was in the overhead storage compartment. I found that out when I was driving and the screw rattled, this time there was 2 of them and it was a bit louder and sounded like it was above me this time. I looked up and my ceiling storage compartment was falling off.
It was a bittersweet finding. Bitter because my ceiling storage compartment was coming off, sweet because I found the annoying rattle that has been plaguing my truck for a year.
I'm going to describe what I had to do to fix it, and I have a disclaimer, I am not, in any way, responsible for any damage you cause to your vehicle.
It was pretty easy. Here's the general process.
Pry off the cover to the compartment. It's not the whole thing, just the part holds the door/on/off switch, the nice light and buttons for the garage door. I used a plastic putty knife. I don't recommend a screw driver, it's too narrow and will end up messing up the cover. I started from the side closest to the sunglass's holder. It didn't take a lot of effort.
Once you have the cover off, disconnect the wires. I used a small flat head screwdriver to help with getting the tabs pushed in where needed. It was a bit confusing because they were all different, but after a little trial and error they all came off.
Remove the 2 little silver screws that are near the sunglasses compartment.
Now, to remove the actual cover. Read this whole thing before you do it. If you look up through the cover, up front near the windshield, you'll notice 2 plastic stands, one on each side, going into the roof. You may or may not see little metal clips where the plastic enters the roof. Those plastic towers are in extremely tight. Grab ahold of the whole compartment where the cover was, up near the windshield. You'll want to pull down with the same amount of force on both sides closest to those towers. Pull straight down. And it took a lot of effort to pull it off. By a lot of effort, I was hanging from it for about a second before it came down (I'm 150lbs). When it comes free, immediately stop pulling, there's a connector that is mounted on the side of the compartment. I bent the clip when I pulled mine off but was easily able to bend the clips back in place.
Now that the compartment is down, the 2 screws that were loose went flying into the passenger seat and the little black holder that they held in place flung into the back seat, I put it all back together. I hunted down the 2 black screws (about an inch long) and used them to mount the black piece to the roof. I tightened the screws enough to make sure I didn't strip out the metal clips that they screwed into. Then I pushed the main compartment cover back up into place. It took a lot less effort to push it up than it did to pull it off. I then screwed in the silver screws to secure the cover. After that I re-attached the wires to the cover and snapped that back into place.
And now, no more rattle. I read some place that there is nothing more satisfying than finding the rattle in your dash. Too true.