I'm not a fan of loose dash vents that vibrate and spin all around on their own every time you hit a bump, plus they have a hard time staying wherever you direct them.
I have my dash vent out and decided to see if there was anything I could do.
I bought some rubber washers at lowes in their hardware section, they have a 3/16 hole in the center which matches the tiny post on the vent. I believe the washers were .92 cents for a pack of two.
The smallest outer diameter I could find was 1-1/4". It will work fine like this, but the rubber washer will be visible from the outside, so I took scissors and trimmed some of the excess material off. I trimmed the washer to an outer diameter of about 3/4".
I gently popped the dash vents out of the trim and used my fingernail to scrape the original dried up and flattened foam buffer off the vent where I would be putting the rubber washer.
I cleaned all the original adhesive off so the washer would sit as flat as possible. I put two tiny drops of super glue on the vent to secure that rubber washer, and set the washer on the small plastic post of the vent. It doesn't take any time at all for the glue to bond.
I reinstalled the vent and tested how much resistance there was to spin it. Not bad, maybe just a hair snug. Not tight enough to bother me, but I did take the vents back out and add just a small amount of white lithium grease to the rubber and smear it around with my finger. Reinstalled the vents and I couldn't be more pleased.
Plus having the vents out is a good excuse to detail strip them and clean all the dust out of the slats, especially when you have vent OCD like this guy!