I fiddled with this a lot and finally figured out what I think is happening.
The object scanner has two sound effects:
- a static buzz: this helps you tell the direction toward the target object by getting louder when you point away from it. This works even when very far from the object, though it gets quieter at longer ranges.
- the beep: this helps you tell the distance to the target object, by beeping faster as you get closer. It only beeps when already fairly close to the object and pointing towards it.
For some reason the static buzz is broken for crash sites, until you are within beep range. The buzz seems to remain "locked" to the previous target item (e.g a berry) instead of switching to the crash site. This means that the object scanner is basically useless for finding crash sites because it lies to you at long range and only starts working once you are already right next to the crash.
- switch the object scanner to crash site mode
- find a crash site and point the object scanner at it
- back away until the beeping stops
- notice that the static buzz is still correct; it goes quiet when pointing toward the crash site
- now find a berry plant
- switch the object scanner to berry mode: you get beeping while pointing towards the berry and the static buzz while pointing away from it
- switch the object scanner back to crash site mode and note that the behaviour is now broken; the static buzz is still locked to the berry plant!
- walk back towards the crash site... the problem with the scanner will fix itself once you get back within beep range
I would guess that this is a bug with a code optimization that was used to make locating the "closest" object of a given type more efficient (e.g a cache that is updated intermittently).