Hacking cIOSX rev21: controller lag [FIXED!]

bd3319

Well-Known Member
Newcomer
Joined
Sep 13, 2009
Messages
73
Trophies
0
XP
30
Country
United States
XFlak, I just downloaded your last installer from previous page and installed it but it is installing 4.4.5 instead of 4.4.7. Is there a different link? Thanks. And thanks to all others for your work.

Oops sorry wrong forum. I reposted in Modmii forum.
 

xfcrowman

Well-Known Member
Member
Joined
Mar 14, 2009
Messages
431
Trophies
0
XP
205
Country
United States
Just wanted to say thanks again to dave, xabby and xflak for fixing the controller lag problem and making cIOS rev21d2x the best cIOS release since rev17!

I hope that people will continue to study wanin's source, and possibly more improvements can be made.
grog.gif
 

Etheboss

Official LULWUT supporter
Member
Joined
Feb 24, 2009
Messages
2,445
Trophies
0
Location
Around somewhere
XP
851
Country
Netherlands
I don't want to spoil the moment but has anybody seen this (its the 2 posts from x4mer earlier in this topic)?

x4mer said:
Thanks to everyone putting work in on fixing this problem.

Rev21dx is still not fixed though.

In a few hours of playing RB3 last night, using the latest ehci from the thread (which I believe was supposed to fix the timer to 3 args), I did not complete one song perfect. I normally should have lots of 100% songs at the end of a session, so the cios is still resulting in dropped notes. Most songs were still 99%, but many of those were lost by "missing" notes during straight forward boring sections.

My wife was complaining that the mic kept cutting out, and thought there was something wrong with the mic. I tested it by starting a song in singer only mode, and then pausing it after the song started. By doing this, the mic stays active, and you should be able to hear everything you say coming out the speakers, without being drown out by the music. While doing this, the mic would cut out every time the HDD blinked, making it impossible to get 100% on singing as well. This convinced me that the EHCI is still causing havoc, although to a much lesser degree than it did before (Wario Shake It works now for instance).

BTW, my guitars are GH wiimote based ones, not USB based like the mic.

Tonight I've gone through each fix version posted to the thread, and they all exhibit the problem. Wondering why others were saying everything was great, I though it was maybe cause I was loading base 56 to 250, while others may have been using it in 249. I tried 249b56, and had no improvement.

-----------------------------------

Just remembered I didn't go back and try the BBogey ehci release. I had dismissed it back when I first tried it, due to it still showing a small problem with the Wario Shake it game having wiimote disconnect messages. Since it had the watchdog completely removed, and never caused my drive to pulse though, I just built a rev21[56]250 with his ehci module, and gave it a try.

Since the drive never pulses, the microphone worked perfectly, never dropping.

I then switched to guitar mode, and played "20th Century Boy", and "Break on Through to the Other Side". First 2 songs I tried I got PERFECT, while I didn't get a single perfect in hours of playing last night. It's definitely not dropping notes under BBogey's ehci.

I would say that the current rev21dx is not quite ready for primetime, and should not be recommended by ModMii just yet.

Xabby666 pointed out that the ehci timer code also existed in a few other modules (fat,sdhc,mload). Could it be that the small problem with BBogey's ehci (with watchdog removed) was due to the timer code in these other modules attempting to "interface" with the non-existant ehci timer which he had removed?

Also i read The wiihacks.it topic posted earlier in this topic.
One person hereMore people here, although not many, reported the fix is not working or working completely.

So i am a bit worried here, even if it is still an aprovement over earlier revs, the new modded rev is maybe pushed to quick to the mass.

@xflak, personally i think you can still keep it as recommended, but put in a warning in that it might not work for everybody.
 

davebaol

Well-Known Member
Member
Joined
Sep 3, 2010
Messages
912
Trophies
0
XP
192
Country
Italy
On HackWii only one user reported lag problems and I believe he missed something.

Hoewver the few people experiencing problems should try installing rev19 (base 57 recommended since base 56 is not available) and tell us if the problem persists or disappears.
This way should be easier investigate in the right direction.
 

Etheboss

Official LULWUT supporter
Member
Joined
Feb 24, 2009
Messages
2,445
Trophies
0
Location
Around somewhere
XP
851
Country
Netherlands
davebaol said:
On HackWii only one user reported lag problems and I believe he missed something.

Hoewver the few people experiencing problems should try installing rev19 (base 57 recommended since base 56 is not available) and tell us if the problem persists or disappears.
This way should be easier investigate in the right direction.
I stand corrected. BTW davebaol, nice fairytale..i enjoyed reading it.
 

x4mer

Member
Newcomer
Joined
Apr 17, 2010
Messages
24
Trophies
0
XP
56
Country
Canada
Could some people please try the microphone test I mentioned earlier, with RB3?

You can just hum a long note, and keep it held till the drive blinks.

x4mer said:
My wife was complaining that the mic kept cutting out, and thought there was something wrong with the mic. I tested it by starting a song in singer only mode, and then pausing it after the song started. By doing this, the mic stays active, and you should be able to hear everything you say coming out the speakers, without being drown out by the music. While doing this, the mic would cut out every time the HDD blinked, making it impossible to get 100% on singing as well. This convinced me that the EHCI is still causing havoc, although to a much lesser degree than it did before (Wario Shake It works now for instance).
 

BBogey

Member
Newcomer
Joined
Dec 29, 2010
Messages
22
Trophies
0
Website
Visit site
XP
4
Country
Finland
davebaol said:
Ok I'll try your test with RB3 asap.
It may be related to parking of the heads, it takes about 0.3 seconds to wake then up again.

__EHCI_Watchdog could be disabled, but then some drives would have a sleep/spindown issue.

To prevent parking the heads, it would need running the wakeup watchdog every 2 seconds or less for some drives. My Lacie rikiki parks it's heads after 5 seconds.

Does it need to read something to wake up the drive?
Would only checking the capacity be enough to prevent sleeping/spinning down? So remove the read random sector and related things from the watchdog.
 

XFlak

Wiitired but still kicking
Member
Joined
Sep 12, 2009
Messages
13,883
Trophies
3
Age
38
Location
Cyprus, originally from Toronto
Website
modmii.github.io
XP
9,919
Country
Cyprus
kamiro04 said:
@XFlak: is there a way I can translate your app to spanish?
there is already someone working on a spanish translation, and there is someone else offering to translate it in case the first guy flakes (which has happened once already with another spanish translator). Anyways, if u don't see a Spanish release within 1-2 months, PM me and I'll get you to work on it. But the person currently translating it seems very reliable so I don't think it will come to that.
biggrin.gif
 

Etheboss

Official LULWUT supporter
Member
Joined
Feb 24, 2009
Messages
2,445
Trophies
0
Location
Around somewhere
XP
851
Country
Netherlands
XFlak said:
kamiro04 said:
@XFlak: is there a way I can translate your app to spanish?
there is already someone working on a spanish translation, and there is someone else offering to translate it in case the first guy flakes (which has happened once already with another spanish translator). Anyways, if u don't see a Spanish release within 1-2 months, PM me and I'll get you to work on it. But the person currently translating it seems very reliable so I don't think it will come to that.
biggrin.gif
So, are you gonna make ModMii multi langual? If so, i can do the Dutch translation.
 

XFlak

Wiitired but still kicking
Member
Joined
Sep 12, 2009
Messages
13,883
Trophies
3
Age
38
Location
Cyprus, originally from Toronto
Website
modmii.github.io
XP
9,919
Country
Cyprus
Well, since this is all done in cmd line, you are very limited to the characters that can be properly displayed in the cmd window, as such, not all translations are possible. Plz excuse my ignorance, but I don't know anything about Dutch, but if it's able to display properly, then I see no reason why I can't support it.

There are some instructions I would need to give all translators though, so if this is something you are going to pursue, be sure to talk to me before actually starting to work on it.

Also, be warned, it is A LOT of work to translate ModMii. The code is a beast... not overly difficult, just really really long.
 

kamiro04

Well-Known Member
Newcomer
Joined
Dec 3, 2010
Messages
62
Trophies
0
XP
94
Country
Argentina
XFlak said:
kamiro04 said:
@XFlak: is there a way I can translate your app to spanish?
there is already someone working on a spanish translation, and there is someone else offering to translate it in case the first guy flakes (which has happened once already with another spanish translator). Anyways, if u don't see a Spanish release within 1-2 months, PM me and I'll get you to work on it. But the person currently translating it seems very reliable so I don't think it will come to that.
biggrin.gif
ok thanks!
 

Etheboss

Official LULWUT supporter
Member
Joined
Feb 24, 2009
Messages
2,445
Trophies
0
Location
Around somewhere
XP
851
Country
Netherlands
XFlak said:
Well, since this is all done in cmd line, you are very limited to the characters that can be properly displayed in the cmd window, as such, not all translations are possible. Plz excuse my ignorance, but I don't know anything about Dutch, but if it's able to display properly, then I see no reason why I can't support it.

There are some instructions I would need to give all translators though, so if this is something you are going to pursue, be sure to talk to me before actually starting to work on it.

Also, be warned, it is A LOT of work to translate ModMii. The code is a beast... not overly difficult, just really really long.
I was just asking cause i got the impression that you where busy with translations.
Seeing liberty's reaction and yours, i still want to, but if there is really no need for a Dutch translation (prolly not because alot of Dutch ppl know english), then i will wait and want to know first if there is a demand.

Now on topic again....
closedeyes.gif
glare.gif
 

davebaol

Well-Known Member
Member
Joined
Sep 3, 2010
Messages
912
Trophies
0
XP
192
Country
Italy
x4mer said:
Could some people please try the microphone test I mentioned earlier, with RB3?

You can just hum a long note, and keep it held till the drive blinks.
Ok, by following your instructions I can reproduce the issue.
I've spent 3 hours investigating and that's the result:[*]All cIOSX rev19 and higher have this issue, previous revs not tested but I would expect the same behavior.
Please can you test revs lower than rev19? Just to confirm.[*]Hermes cios v5 works perfectly, no problem at all.[*]By looking at the code and after many trials I'm almost sure the problem is inside the unplug_procedure() function which theoretically should reset only usb port 0 (HDD).
Unfortunately that function contains hundreds of lines absolutely meaningless for me 'cause I don't know low level usb protocol and specifications.


BBogey said:
It may be related to parking of the heads, it takes about 0.3 seconds to wake then up again.
With my WD Elements SE 2,5" 1TB it takes more than 1 second.

BBogey said:
__EHCI_Watchdog could be disabled, but then some drives would have a sleep/spindown issue.
Yes, without calling __EHCI_Watchdog the microphone works fine but that's a drastic solution I really don't like.
Much better to use hermes cios.

QUOTE(BBogey @ Jan 30 2011, 08:17 PM) To prevent parking the heads, it would need running the wakeup watchdog every 2 seconds or less for some drives. My Lacie rikiki parks it's heads after 5 seconds.

Does it need to read something to wake up the drive?
Yes, you need to read every time a different sector because all hard drives have a cache inside.
If you read nothing or similarly if you read always the same sector actually you don't wake up the drive.

QUOTE(BBogey @ Jan 30 2011, 08:17 PM)
Would only checking the capacity be enough to prevent sleeping/spinning down? So remove the read random sector and related things from the watchdog.
No, USBStorage_Get_Capacity doesn't access the drive. It just retrieves the number and the size of the sectors by reading a data structure in memory which has been initialized on EHCI module start up.
Also removing the USBStorage_Read_Sectors function is just the same as disabling the watchdog.
The unplug_preocedure function I was referring to is called by the USBStorage_Read_Sectors function.
 

x4mer

Member
Newcomer
Joined
Apr 17, 2010
Messages
24
Trophies
0
XP
56
Country
Canada
davebaol said:
Ok, by following your instructions I can reproduce the issue.

Thanks for taking the time to confirm the problem Dave. At least now I'm not wondering why everyone is saying it's perfect, except for me.

davebaol said:
[*]All cIOSX rev19 and higher have this issue, previous revs not tested but I would expect the same behavior.
Please can you test revs lower than rev19? Just to confirm.
[*]Hermes cios v5 works perfectly, no problem at all.

I'll try rev 17 if I can find it, but the problem is that ciosx < rev20 & all Hermes are undesirable since they don't support base 56. The only way to make use of RB3's SDHC support is through using base 56, as the only other IOS that supports mic (37) doesn't support SDHC.

QUOTE(davebaol @ Jan 30 2011, 08:36 PM)
[*]By looking at the code and after many trials I'm almost sure the problem is inside the unplug_procedure() function which theoretically should reset only usb port 0 (HDD).
Unfortunately that function contains hundreds of lines absolutely meaningless for me 'cause I don't know low level usb protocol and specifications.

I was wondering earlier today, if the drive reset function for keep awake, was causing a reset of the entire USB root hub. I know the data routines of the CIOS are coded to only support port 0, but I wondered whether maybe he wasn't so careful for the reset routine. Sounds like you are suspecting the same/similar.

Problem with this theory is that my guitars are not USB based, and I know that the cios is causing 1 or 2 missed notes per song. Using BBogey's EHCI (with watchdog removed) eliminates the dropped notes on guitar problem, and I regularly get perfect while I cannot on any other rev21 version.

For the time being, BBogey's EHCI with watchdog removed works great for RB3 with mic and SDHC. I guess another upside, is that my drive doesn't have to take the wear and tear of having an init issued to it every 8-10 secs. The drive light sits nice and quiet under BBogey's. I realise that this is not an option though, for those who have drives that go to sleep, with no option of turning off sleep mode.

Thanks for all your work, and for looking into the problem.
 

xabby666

Well-Known Member
Newcomer
Joined
Jan 31, 2010
Messages
91
Trophies
1
Age
57
XP
141
Country
Italy
Ok, dave. I think this kinds of bugs must be fixed in next official release by waninkoko. Someone can report him this problem?
 

coreduo0099

Active Member
Newcomer
Joined
May 3, 2009
Messages
41
Trophies
1
XP
175
Country
United States
davebaol said:
Ok, by following your instructions I can reproduce the issue.
I've spent 3 hours investigating and that's the result:[*]All cIOSX rev19 and higher have this issue, previous revs not tested but I would expect the same behavior.
Please can you test revs lower than rev19? Just to confirm.[*]Hermes cios v5 works perfectly, no problem at all.[*]By looking at the code and after many trials I'm almost sure the problem is inside the unplug_procedure() function which theoretically should reset only usb port 0 (HDD).
Unfortunately that function contains hundreds of lines absolutely meaningless for me 'cause I don't know low level usb protocol and specifications.

Yes, without calling __EHCI_Watchdog the microphone works fine but that's a drastic solution I really don't like.
Much better to use hermes cios.

Would please outline the hermes cios config you refer to which makes RB3 work perfectly?

i.e.
usb loader 65-222
Hermes cIOS 223[57] v5, no ios reload

Thanks!
 

davebaol

Well-Known Member
Member
Joined
Sep 3, 2010
Messages
912
Trophies
0
XP
192
Country
Italy
Sorry for having been inaccurate.
My focus was just the mic issue, so when I said "hermes cios works perfectly" I was just referring to that.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: https://youtube.com/shorts/Y9WKPRUjNQ4?si=raUf8jEiET8rmH2P