https://superuser.com/questions/110...op-set-keep-switching-places-between-monitors
I found this:
"I "solved" this problem using
https://github.com/jakehilborn/displayplacer. If I connect my hub and the monitors are incorrect, instead of having to rotate screens or reconnect cables, I can now run a script (via a hotkey) to resolve this.
First, make sure your monitors are in the correct configuration. Then install displayplacer and run it.
brew tap jakehilborn/jakehilborn && brew install displayplacer
displayplacer list
At the bottom of the output you'll see that it generates the command which will place your monitors in the back into the current configuration. Example:
displayplacer "id:C00DE6B5-2BF1-D707-8452-14BD6BFAAC84 res:1920x1080 hz:60 color_depth:8 scaling
ff origin
0,0) degree:0" "id
0823E00-B252-0F5C-DE87-D142F95D0CB4 res:1680x1050 color_depth:8 scaling
n origin
-1680,0) degree:0" "id:1A13BBCA-7176-912E-4048-7E7E22D786C2 res:1080x1920 hz:60 color_depth:8 scaling
ff origin
1920,-386) degree:90"
I then created a service/action and set a keyboard shortcut for this item. Now a quick keystroke will resolve the issue.
More info: The answer by Dan is the root of this problem for me. I have two identical monitors, both being connected to a hub via Displayport. That hub is connected to my mac via one USB-C connection. Randomly, the dock will load the settings in a different order which causes this issue. Since my 3rd monitor is rotated, this makes two screens now improperly rotated.
For months I have been disconnecting both DisplayPort connections on the hub, and then reconnecting in the reverse order. This solves the problem, but it was really annoying."
Might give it a shot. Pretty annoying though. Almost makes me want to get a Apple Thunderbolt Monitor....