Lost index center

Hello,

Sometimes when I put on the unit (and after phasing mode), SimuCube tool shows wrong wheel position center forcing me to “Reset Center” and recalibrate via “Set permanent wheel center”. It just works for that session but If I, for example, shutdown SimuCube unit, restart the computer and then check again sometimes loses center index.

I have tried full recalibrating from “Configure motor, encoder and center point” but the problem is still there.

So… What’s the problem? I’m on latest SimuCube Firm 0.11.2 and IONI 10707.

Hi,

Please read

https://granitedevices.com/wiki/SimuCUBE_Firmware_User_Guide#Hardware_Set-up_Tab:

to see how the indexing works.

Which encoder do you have? Can you post a debug log (from the advanced tab) in both cases

  1. index is correct for you
  2. index is incorrect and you have to recenter.

I have a “standard” encoder 10000ppr (40000cpr) not the new ones Sincos / Biss-C.

Here we go,

Correct Center

SimuCUBE Boot : 0
SimuCUBE Boot : 11
SimuCUBE Boot : 2
Flash settings data loaded : 0
Initial config has been previously performed. Initializing Drive. : 0
State: Initializing Drive : 0
First-time drive initialization : 0
SMBus baudrate initialized successfully : 0
Drive init stage 1, position : 5170
Read MMC value from Drive : 12500
Read Motor Resistance value from Drive : 2333
Read CPR from Drive : 40000
Read Drive Version ID from drive : 11201
SM Watchdog disabled successfully : 0
Waiting for faults to clear : 0
Waiting for servo to be ready : 0
Drive init stage 3, position after faults cleared : 5019
Drive init stage 4, phasing, current position : 4969
Drive init stage 4, phasing, current position : 1261
Drive init stage 4, phasing, current position : 164
Drive init stage 4, phasing, current position : 2154
Drive init stage 4, phasing, current position : 5632
Drive init stage 4, phasing, current position : 8445
Command: Request profile number : 0
Command: Request profile name for profile : 0
Command: Request profile byte data for profile : 0
Command: Request profile number : 1
Command: Request profile name for profile : 1
Command: Request profile byte data for profile : 1
Command: Request profile number : 2
Command: Request profile name for profile : 2
Command: Request profile byte data for profile : 2
Command: Request profile number : 3
Command: Request profile name for profile : 3
Command: Request profile byte data for profile : 3
Command: Set calibrated analog axis mode : 0
Drive init stage 4, phasing, current position : 9075
Drive init stage 4, phasing, current position : 7406
Drive init stage 4, phasing, current position : 5067
Drive init stage 4, phasing, current position : 3466
Drive init stage 4, phasing, current position : 3301
Drive init stage 4, phasing, current position : 4286
Drive init stage 4, phasing, current position : 5530
Command: Request profile number : 0
Command: Request profile name for profile : 0
Command: Request profile byte data for profile : 0
Command: Request profile number : 1
Command: Request profile name for profile : 1
Command: Request profile byte data for profile : 1
Command: Request profile number : 2
Command: Request profile name for profile : 2
Command: Request profile byte data for profile : 2
Command: Request profile number : 3
Command: Request profile name for profile : 3
Command: Request profile byte data for profile : 3
Command: Request hardware settings : 0
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 6176
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 0
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 1
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 2
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 5836
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 3
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 4
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 5
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 6
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 5436
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 7
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 8
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 9
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 5435
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 10
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 11
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 12
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 13
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 5434
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 14
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 15
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 16
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 5434
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 17
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 18
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 19
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 20
Drive init stage 4, phasing, current position : 12
Drive init stage 5, phasing complete, position : 11
Drive init complete, offset from startup position is : 11
event 96 : 11
SMBus baudrate initialized successfully : 0
State: Drive initialization was successful : 0
SM Watchdog enabled successfully : 0
State: Before operational - calculating new constant values : 0
State: Operational : 0
Command: Event log download request : 0

Wrong Center

SimuCUBE Boot : 0
SimuCUBE Boot : 11
SimuCUBE Boot : 2
Flash settings data loaded : 0
Initial config has been previously performed. Initializing Drive. : 0
State: Initializing Drive : 0
First-time drive initialization : 0
SMBus baudrate initialized successfully : 0
Drive init stage 1, position : 6120
Read MMC value from Drive : 12500
Read Motor Resistance value from Drive : 2333
Read CPR from Drive : 40000
Read Drive Version ID from drive : 11201
SM Watchdog disabled successfully : 0
Waiting for faults to clear : 0
Waiting for servo to be ready : 0
Drive init stage 3, position after faults cleared : 5961
Drive init stage 4, phasing, current position : 5911
Drive init stage 4, phasing, current position : 2212
Drive init stage 4, phasing, current position : 1131
Drive init stage 4, phasing, current position : 3142
Drive init stage 4, phasing, current position : 6620
Drive init stage 4, phasing, current position : 9424
Drive init stage 4, phasing, current position : 10133
Command: Request profile number : 0
Command: Request profile name for profile : 0
Command: Request profile byte data for profile : 0
Command: Request profile number : 1
Command: Request profile name for profile : 1
Command: Request profile byte data for profile : 1
Command: Request profile number : 2
Command: Request profile name for profile : 2
Command: Request profile byte data for profile : 2
Command: Request profile number : 3
Command: Request profile name for profile : 3
Command: Request profile byte data for profile : 3
Command: Set calibrated analog axis mode : 0
Drive init stage 4, phasing, current position : 8361
Drive init stage 4, phasing, current position : 6025
Drive init stage 4, phasing, current position : 4430
Drive init stage 4, phasing, current position : 4265
Drive init stage 4, phasing, current position : 5250
Drive init stage 4, phasing, current position : 6495
Drive init stage 4, phasing, current position : 7122
Command: Request profile number : 0
Command: Request profile name for profile : 0
Command: Request profile byte data for profile : 0
Command: Request profile number : 1
Command: Request profile name for profile : 1
Command: Request profile byte data for profile : 1
Command: Request profile number : 2
Command: Request profile name for profile : 2
Command: Request profile byte data for profile : 2
Command: Request profile number : 3
Command: Request profile name for profile : 3
Command: Request profile byte data for profile : 3
Command: Request hardware settings : 0
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 6930
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 0
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 1
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 2
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 6436
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 3
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 4
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 5
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 6
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 6402
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 7
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 8
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 9
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 6402
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 10
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 11
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 12
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 13
Drive init stage 4, phasing, current position : 6401
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 14
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 15
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 16
Command: Request analog input settings : 0
Drive init stage 4, phasing, current position : 1
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 17
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 18
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 19
Command: Request analog input settings : 0
Command: Request bytedata for analog profile : 20
Drive init stage 4, phasing, current position : 13
Drive init stage 5, phasing complete, position : 13
Drive init complete, offset from startup position is : 13
event 96 : 13
SMBus baudrate initialized successfully : 0
State: Drive initialization was successful : 0
SM Watchdog enabled successfully : 0
State: Before operational - calculating new constant values : 0
State: Operational : 0
Command: Event log download request : 0

Thanks, I will take a look at the logs tomorrow. Can you also observe if the phase search routine is happening in the same motor pole quadrant in both cases? That means that the wheel is roughly in the same location when the phasing happens.

Yep, same routine. If I move the wheel from it center slighty to the right before the initialization (put on the power switch), then all works properly.

So, as you and FAQ say, it works as intended. Every time I stop playing I always leave my wheel centered. Curiously, until now it worked without the need of moving physically my wheel.

Hello! I have same problem with my small MiGe (0.11.2 / IONI 10707). Every time i start up the box wheel is 27 degrees to the right.
I re-center the wheel and save it to base but at next startup its 27 degrees off again to the right.

Hi!

Are you using the Index point indexing mode or the Automatic indexing mode? Which encoder do you have?

22-bit Biss-C encoder - for 4.2 mil cpr resolution (Simracingbay latest)…
HOWEVER I just realized I never runned the Configure motor, encoder and center point…guide/setup (just got the wheel).

So after i runned this guide it seems to work! Sorry my bad. “Noob” lol

I have two different problems with centering my SC1 (large MIGE w/ SinCos 2,1 mil cpr, v0.50.4c). I have run the wizard a hundred times trying both of the indexing methods. Currently I use Automatic indexing.

  1. Whenever AC power is switched off for the Simucube (after PC shutdown), and then switched back on, the wheel centers itself to 23.30° (see screenshot).
    2019-12-03%2015_20_07-Simucube%20Configuration%20Tool

This happens every single time and is mainly cosmetic problem.

  1. However, what is more of a problem, is that occasionally, the center point is completely lost after reboot. I.e. the wheel will still physically initialize to the above 23°, but when I start either the Sim or the Configuration Tool, it is like 90 degrees off or so software-wise. This is really annoying, when you only notice this ingame. Like I said, I have not been able to identify a pattern when this exactly happens.

===

On a related matter, I have never really understood, what the three different “wheel center dialogs” do differently.

There is the “Reset Center” button on the first tab right beneath the wheel graphics:

2019-12-03%2015_20_29-Simucube%20Configuration%20Tool

And then there is in the initialization wizard twice the request to center the wheel. Once it is called “Center the wheel”:

And then 2-3 steps after that in the same wizard it is called “Set wheel center point”:

I do not understand why the same has to be done twice in the initi wizard. And then, I do not understand the difference to the other button on the first tab. I have read the Wiki page quoted above. But really, I find it not very helpful.

Any help is very much appreciated. Thanks.

Firstly, in the wizard:

The first approximate center point is for forcing the device into a certain position. The wheel then begins the phase search routine at that position, and moves between motor poles in a quadrant. The end position for this is set as a reference position, and then the wizard will ask your accurate center position and saves this as an offset to the original.

Now, the Sincos encoder is not an absolute encoder, and phasing routine has to be run at every start. You might just be unlucky - the switchover point in the motor pole quadrants happens to be near your center point and thus the phasing sometimes runs in different pole quadrant and thus the center point will be wrong. This also explains the issue on device start for you.

Unfortunately, there is no way of overcoming this without using the Index Point indexing (if your encoder has it wired) or by using an absolute encoder such as BiSS-C.

Well, another way of overcoming this would be to adjust the axis shaft adapter to slightly different position so that your physical center point will not hit a pole quadrant switchover point.

Ok, so I would move the axis shaft adapter by, say, an eight of a full rotation in any direction?

What exactly do you mean by “…and phasing routine has to be run at every start.”? Do you mean the automatic left-right-left movement that is done automatically upon startup, or would you mean the initialization wizard, which I would have to run manually?

Also, I understand, the second dialog “Set wheel center point” sets the precise center point. What is the difference to the “Reset center” button from the first tab, then?

But nothing of this explains, why it initializes to 23° each time, correct?

Thanks.

@Mika: could you please confirm/clarify? Thanks for your help.

Yes.

Yes, that is the phasing, i.e. phase search routine.

Both do exactly the same thing. Doing it from the wizard ensures that the wheel has not rotated after the phasing has completed.

It does explain if the phasing routine is not being done between same motor pole each time.

Ok, this is what I did:

  1. I left the axis shaft adapter as is, but moved the wheel itself one bolt pattern clockwise. As it is a six hole wheel, the actual rotation is 1/6 of a full rotation.

  2. I rerun the wizard (Automatic Indexing) and set the new wheel center.

  3. Not touching the wheel (i.e. 100% centered @ 0°): shut down the PC, cut AC power for Simucube and then reboot.

  4. After the bootup phase search routine, the wheel comes up like this: difficult to capture in a photo, but the wheel physically actually has some -5° or so and the tool shows it at +17.60°. WTF?


2019-12-07%2017_41_45-Simucube%20Configuration%20Tool

@Mika: which, interestingly, is very close to the previous 23° (i.e. ~-5° to 17.60°)…

@Mika: any chance for some additional help from you? Thanks a lot.

It should be possible to find an orientation for your wheel where the angle is correct. Otherwise, there seems to be a firmware issue that we will have to work on when we do Simucube 1 stuff again.

@Mika: But did I approach it correctly? If yes, I would move the wheel further clockwise on the bolt pattern, re-run the wizard and reboot? There are 4 positions left. I could easily do that. Please confirm.

@Mika: I now did as suggested and there is not a single position that works. Actually, the index center was not remembered on a single try.

red marker = start position (top)
green marker = current position (top)

I just repeated this six times:

  1. set “Permanent Center” to green marker
  2. turn wheel a bit arbitrarily to left or right
  3. cut Simucube power with the power switch at the PSU
  4. turn power back on
  5. wait for it to initialize
  6. wheel out of center
  7. move green marker one hole to the right

The timelapse video is uncut. You will need to use your Pause button frequently:

Actually, there is two things wrong here:
A) The index center is lost completely each time.
B) Even with the index center lost, the wheel did not reinitialize to have the “new” center on top.

Please help!