I had this working, then like a fool I decided to try it in the new Input System.
I have it working again, but it left me with a question.
What is the difference between updating the velocity in FixedUpdate() versus Update()? Even without a Time.deltaTime multiplier in Update(), they seemed the same.