If you have turnouts are you routing with waypoints before and after the turnout?
The AI will select another route if the one you wish to use is occupied by another train, in effect absolute block.
I tend to use a lot of waypoints up to 40 per train if the layout of track is complex so it has a definitive pathing to reach the final destination.
I've tried waypoints (until I ran out of usable points). Then I found out that that didn't do anything to help. I've tried ripping out extra waypoints (to have track switching) and it helped a little. (Just stations highlighted on the route menu.) Then trains started ignoring open stations (that are unobstructed), and running them instead of stopping.
I've been trying to get extra tracks done so that I can have multiple trains on the same track with several running down the extras (for maximum efficiency), but they aren't listening to the commands that are given.
It's like; Stop at Coal Mine 1, Wait until full. -> Ignore Station 1 -> Ignore Station 2 -> Stop and Unload at Station 3 ->Ignore Station 4 ->Ignore Station 5 -> repeat.
Somewhere in there, it loses track of where Station 3 is, or just straight up ignores it and runs through.
I don't know what's causing the issue, but I can't run trains down certain lines (even with space), because they will either ignore the station for loading, unloading, or just not find it to begin with and circle around in the wrong area even when told a specific route.
I forgot to mention that I use OpenLoco. (>.>)