bit more progress to report
I reached the point where:
-the system now auto calibrates the hall sensors. During calibration it asks you to spin the motor. The 30f will
then measure all hall edges and determine their position relative to each other and the rotor. How you connect the
hall sensors or whether you have one or more inverted (

) doesn't matter.
- after calibration the info from the hall sensors is used to determine the rotor position. This will typically yield
one out of 6 positions (360 divided by 3 and divided by 2 edges (rising and falling as produced by hall). These
are, in the ideal world, 60 degrees apart. Here however the system knows the relative position of each hall,
the distance in degrees is typically far from 60 degrees and depends on how good the hall sensors are positioned.
- while the rotor is spinning the 30F tries to determine the rotation time (based on info from the hall sensors,
their distance to each other in degrees and info from an internal Timer). When the rotation time is known the
30F jumps to a mode where the rotor position is determined by the last hall signal edge, the time since
this edge and the rotation time.

this is shown in this plot. On the x-axis is time, 1000 points per second. On the y-axis is the rotor
position (0 to 1 corresponds to 0 to 359 degrees). The first 0.3 seconds the system doesn't have an accurate
prediction yet of the rotor speed, therefore it outputs the position based on the hall sensors. This is why it's
one out of 6 levels. After 0.3 however the system 'has lock', now interpolation is used to calculate the position
also inbetween the hall sensors, this is why the line is linear rising instead of being 1 out of 6 levels.
In the mean time the system will keep monitoring how good it knows the rotor position. If something unexpected
happens (like massive deceleration, only possible by locking a wheel or something catastrophic like that) or
the rotation just becomes too slow (were talking 10 rpm here) the system loses 'lock' and will switch
back to using the info from the hall sensors again (so it goes back to the 6 levels). An example when this
happens: when you've come to a stop at a traffic light....