Run a script using msgbus when new primitive added
Run the following script in the text editor.
Add any mesh primitive, the origin is adjusted to the bottom of its bounding box as long as the following conditions are met.
Object is a mesh.
The active operator is a mesh primitive add.
Code put together from
Set origin to bottom center of ...
I've fixed it for you.
You needed to keep the Y-axes of the steering wheel aligned to the direction perpendicular to the plane of rotation (shown below). The purpose of parenting the steering wheel to the empty was so the axis of the steering wheel stayed aligned for your desired rotation axis.
All I needed to do was to enable Transform Only > Origins, ...
You can enable Snapping by pressing the magnet at the top of the screen. If you click on the drop-down menu next to the magnet icon, you can change what Blender will snap to.
To toggle snapping via a keyboard shortcut, press Shift+Tab. Pressing Ctrl+Shift+Tab will bring up a pop-up menu for changing the snapping object.
If you don't want to toggle snapping,...
Unfortunately, there is no way to change the default location of the origin.
Perhaps I can help quicken the process of moving the origin for you though.
Open the sidebar usingN, switch to the "Tool" tab, and under Affect only select Origins. Then, with the target object selected, press G to grab/move the origin, Z to lock movement to the Z-axis, and hold ...