SimuCUBE Open Source Firmware Development Update Thread 2

I had the option of accuforce,osw,or waiting for the fanatec dd to arrive. Im glad I made the right choice and went osw. The progress you have made in the short time I have had mine is amazing!!! Im looking forward to seeing what you have instore for us next. Keep up the great work and a big thank you from me and im sure all of us that have bought them!!!

4 Likes

Thanks Mika!
Does that mean you are retiring from the project?

Not at all, but now we can focus on developing features that are most needed, and at the same time, incorporating any open dource efforts.

Things we are considering at the moment:

  • Encoder inputs to X11 ports (configurable)
  • Linux port of the Configuration Tool
    – I might do this as academic learning project on my free time :slight_smile:
  • iRacing SDK integration to the Configuration Tool
3 Likes

It turned out I had a boring evening.

… but USB does not connect yet, could be a virtual machine issue or something. Need to find a sacrifical Ubuntu PC to do a real test.

2 Likes

Or a permission issue. But anyway, good groundwork done for Linux port, not too much changes to backport to Windows version either.

Apologies if this has been covered previously in another thread, but I just upgraded to the BISS C and firmware v0.10.3, and now when I first switch on the wheel it spins 360 degrees clockwise before settling down.
Simucube config tool then shows a value of zero degrees (or thereabouts), so it seems when I power up it sees it initially as -360 degress and rotates to put it back to zero.

Hope this makes sense :slight_smile:

Cheers,
Andrew.

I noticed this while developing, and tried to add a workaround that indeed worked fine for me.

Can you verify that you have Absolute Encoder indicated as the indexing mode?

Can you shut down the SimuCUBE and then power on, and after the spin has happened, post a debug log from the Advanced tab?

There was a bug in 0.10.0 and 0.10.1; SimuCUBE did not set up the Absolute Encoder indexing mode always if user did the commutation sensor setup. Because of this, the fix I implemented is not “active” if user has still the Automatic Indexing (or Index related to Initialization) in the Hardware tab.

Solution is to redo the Motor Configuration Wizard with 0.10.3.

and it was indeed a permissions issue :slight_smile:

1 Like

Once ready, I can test on Linux, kiitos hyvin paljon :slight_smile:

Thanks for the quick reply.
Here’s the text from the debug log:
SimuCUBE Boot : 0
SimuCUBE Boot : 10
SimuCUBE Boot : 3
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
event 90 : -8
Read MMC value from Drive : 12000
Read Motor Resistance value from Drive : 2859
Read CPR from Drive : 4194304
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
event 92 : -13
event 94 : 2419231
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
USB stack was reset due to being stuck busy : -1
USB stack was reset due to being stuck busy : -1
USB stack was reset due to being stuck busy : -1
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 2
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 2
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 3
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 3
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 4
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 4
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 5
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 5
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 6
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 6
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 7
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 7
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 8
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 8
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 9
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 9
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 10
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 10
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 11
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 11
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 12
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 12
Command: Request profile data is for 55 byte set index : 1
Command: Set calibrated analog axis mode : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 2
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 2
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 3
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 3
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 4
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 4
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 5
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 5
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 6
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 6
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 7
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 7
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 8
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 8
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 9
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 9
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 10
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 10
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 11
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 11
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 12
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 12
Command: Request profile data is for 55 byte set index : 1
Command: Request hardware settings : 0
Command: Request analog input settings : 0
Command: Event log download request : 0
Command: Start event logging : 0
Command: Event log download request : 0

…and here’s a screenshot from the hardware tab:
image

I’d already tried redoing the motor config wizard, so maybe I was using some incorrect settings??

Thanks,
Andrew.

it really looks like it should be doing the correct things in code according to the log. Does this happen always, or is it in any way dependent on which position you start the wheel?

I normally switch it on with the wheel more or less straight, and in this situation it spins. Just realised though that if I switch it on with the wheel at around 45 degrees or more to the left, it’s fine. Then it just centres the wheel normally.

Interesting. So more testing is needed here; the pre-beta testers clearly haven’t been good enough :slight_smile:

I might get you a test build some day soon.

No worries, happy to help where possible :slight_smile:

Hi

Good Day!

Just to confirm that I have similar issue with Wheel being 360 off center after installing latest firmware v0.10.3, on BISS and going through configuration and start auto commutation setup process.
Dont know whether this would be helpful below:

SimuCUBE Boot : 0
SimuCUBE Boot : 10
SimuCUBE Boot : 3
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
event 90 : 4157511
Read MMC value from Drive : 12000
Read Motor Resistance value from Drive : 2240
Read CPR from Drive : 4194304
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
event 92 : 4157520
event 94 : 7180769
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: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Request hardware settings : 0
Command: Request analog input settings : 0
Command: Disable all force generation : 0
Command: Unset initial config done : 0
State: System not configured : 0
SM Watchdog disabled successfully : 0
Command: Set hardware settings data : 0
Command: Activate profile number : 0
Command: Restart drive : 0
Command: Initialize drive : 0
State: Initializing Drive : 0
SMBus baudrate initialized successfully : 0
event 90 : 1
Read MMC value from Drive : 12000
Read Motor Resistance value from Drive : 2240
Read CPR from Drive : 4194304
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
event 92 : 2
event 93 : 0
event 93 : 1
event 93 : 12
event 94 : 3007577
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: Request hardware settings : 0
Command: Set hardware settings data : 0
State: Before operational - calculating new constant values : 0
State: Operational : 0
Command: Setup Commutation sensors : 0
State: Autosetup Commutation Sensors : 0
SM Watchdog disabled successfully : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation finished successfully : 0
SM Watchdog enabled successfully : 0
State: Operational : 0
Command: Request hardware settings : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Set calibrated analog axis mode : 0
Command: Request hardware settings : 0
Command: Set hardware settings data : 0
State: Before operational - calculating new constant values : 0
State: Operational : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Request hardware settings : 0
Command: Request analog input settings : 0
Command: Disable all force generation : 0
Command: Unset initial config done : 0
State: System not configured : 0
SM Watchdog disabled successfully : 0
Command: Set hardware settings data : 0
Command: Activate profile number : 0
Command: Restart drive : 0
Command: Initialize drive : 0
State: Initializing Drive : 0
SMBus baudrate initialized successfully : 0
event 90 : -2
Read MMC value from Drive : 12000
Read Motor Resistance value from Drive : 2240
Read CPR from Drive : 4194304
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
event 92 : -2
event 93 : -2
event 93 : -3
event 93 : -8
event 94 : 3894205
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: Request hardware settings : 0
Command: Set hardware settings data : 0
State: Before operational - calculating new constant values : 0
State: Operational : 0
Command: Unset temporary centering mode : 0
Command: Set wheel center here : 0
event 96 : 3017271
State: Saving settings to flash : 0
SM Watchdog disabled successfully : 0
SM Watchdog enabled successfully : 0
State: Operational : 0
Command: Enable force generation : 0
Command: Request hardware settings : 0
Command: Set initial config to done : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Request hardware settings : 0
Command: Request analog input settings : 0
Command: Disable all force generation : 0
Command: Unset initial config done : 0
State: System not configured : 0
SM Watchdog disabled successfully : 0
Command: Set hardware settings data : 0
Command: Activate profile number : 0
Command: Restart drive : 0
Command: Initialize drive : 0
State: Initializing Drive : 0
SMBus baudrate initialized successfully : 0
event 90 : -3
Read MMC value from Drive : 12000
Read Motor Resistance value from Drive : 2240
Read CPR from Drive : 4194304
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
event 92 : -3
event 93 : -2
event 93 : -2
event 93 : -8
event 94 : 3007929
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: Request hardware settings : 0
Command: Set hardware settings data : 0
State: Before operational - calculating new constant values : 0
State: Operational : 0
Command: Setup Commutation sensors : 0
State: Autosetup Commutation Sensors : 0
SM Watchdog disabled successfully : 0
Command: Request hardware settings : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Set calibrated analog axis mode : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Request hardware settings : 0
Command: Request analog input settings : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation still busy : 0
Command: Request hardware settings : 0
Autosetup Commutation finished successfully : 0
SM Watchdog enabled successfully : 0
State: Operational : 0
Command: Request hardware settings : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Set calibrated analog axis mode : 0
Command: Request hardware settings : 0
Command: Set hardware settings data : 0
State: Before operational - calculating new constant values : 0
State: Operational : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 0
Command: Request profile data is for 55 byte set index : 1
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 0
Command: Request Profile number : 1
Command: Request profile data is for 55 byte set index : 1
Command: Request hardware settings : 0
Command: Request analog input settings : 0
Command: Disable all force generation : 0
Command: Unset initial config done : 0
State: System not configured : 0
SM Watchdog disabled successfully : 0
Command: Set hardware settings data : 0
Command: Activate profile number : 0
Command: Restart drive : 0
Command: Initialize drive : 0
State: Initializing Drive : 0
SMBus baudrate initialized successfully : 0
event 90 : 2
Read MMC value from Drive : 12000
Read Motor Resistance value from Drive : 2240
Read CPR from Drive : 4194304
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
event 92 : -2
event 93 : 2
event 93 : 0
event 93 : 9
event 94 : 3491581
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: Request hardware settings : 0
Command: Set hardware settings data : 0
State: Before operational - calculating new constant values : 0
State: Operational : 0
Command: Unset temporary centering mode : 0
Command: Set wheel center here : 0
event 96 : 3020801
State: Saving settings to flash : 0
SM Watchdog disabled successfully : 0
SM Watchdog enabled successfully : 0
State: Operational : 0
Command: Enable force generation : 0
Command: Request hardware settings : 0
Command: Set initial config to done : 0
Command: Event log download request : 0

That is very helpful. I also have another log that I will take a look at.

This must be a corner case which hasn’t come up with a bunch of pre-release testers.

1 Like

Can you also confirm that you have Absolute Indexing indicated in the Hardware tab in the Configuration Tool?

Thanks, I will have a look when I get back this evening. Regards

Hi Mika,

Yes, can confirm now that index states Absolute encoder !