Here is a Bluetooth joystick that works with your Android, macOS, PC, Nintendo Switch, and Raspberry Pi. The 8Bitdo Pro 2 supports 3 custom profiles and has a 4-way mode switching button. It comes with rumble vibration, motion sensing, and 20 hours battery life.
The companion software lets you map keys, customize each stick, adjust the range of triggers, and modify vibration intensity. You can also use it to assign macros. More info is available here.