Jump to content

Trying to add ITE IT8390E chip to SMCSuperIO.kext to be able to control the fan


4 posts in this topic

Recommended Posts

Hello everyone, as the title says, today I am trying to add the ITE IT8390E chip ( I found it because I used the Windows software HWInfo64 to view it ) into the SMCSuperIO kext to be able to control the fan on my Razer Laptop, but things are not going very well and I am having quite a few difficulties. with my project. As follows:

I researched and read through the commits on VirtualSMC/SuperIO and I followed those commits to see if I could add my device by:


1. At VirtualSMC/Sensors/SMCSuperIO/Resources folder. I created an additional plist for ITE IT8390E similar to ITE IT8721F. With DeviceID is 0x8390 = 33680

image.thumb.png.f9879824f14c0646a2b536fa388b7fc4.png


2. Next, I go to VirtualSMC/Sensors/SMCSuperIO/ITEDevices.cpp. I edited ITEDevices.cpp and added:

strcmp(detectedDevice->getModelName(), "ITE IT8390E") 

I add to line 391 of the Code (do the same for other ITEs)

 

image.thumb.png.59482c8a0d655c8ef3b612ad910e00df.png

 

I didn't edit Devices.cpp because I saw that in SMCSuperIO/DeviceGenerator there was generate.sh and I realized it would automatically rebuild Devices.cpp for me.

image.thumb.png.88f5e93e9a71ff401b24401986d579f5.png

And here is the Code in Devices.cpp:

 

image.thumb.png.d689a4a25e8bb01064082dc793d744ee.png

image.thumb.png.03683075989cced3de1ed05bc0c9e495.png
3. Then I Build the kext, and no problem happened. However, my ITE IT8390E is still not detected and my machine still cannot read/control the fan. I used Macs Fan Control app to do that but without success
4. After that, check if the SMCSuperIO kext loads with the command

kextstat | grep -E "SMCSuperIO"

image.thumb.png.23b572a22c105c6da3d755614c241537.pngimage.thumb.png.23b572a22c105c6da3d755614c241537.png

And see that the Kext is still loading fine. I don't know if I'm doing something wrong or missing something and if it's because HWInfo64 misread the name of my SuperIO Chip or not.

Right now I'm stuck and don't know what to do. If anyone knows or has experience about this please help me. Thank you very much..

Edited by kinhhoang161
Update information
Link to comment
Share on other sites

8300 is far from 8600 so it may work other way. Look for datasheet for such chip.

For debug you may insert IOLog (DebugLog) everywhere after device reading. Can't say more because FakeSMC plugins looks other.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...