So, the first amendment gives you the right to free speech, and yet inciting a riot or other dangerous forms of speech are still not protected.
Arms does not mean guns. It just means weapons and/or armor. Dangerous things can and should be protected. Not all weapons need be for the public, as I’m pretty sure no one would be okay with any civilian having their own nuke stockpile. I don’t see why we can’t dial it back a bit more to try and reduce access to guns when we’ve continually seen how much destruction they can cause.