Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


Posts posted by viking1304

  1. I just got MacBook Pro and I will give my Dell E7450 away in few days, which means that this great journey came to it's end.


    It was a pleasure being here, and I am grateful for everything I have learnt. I also hope that I helped someone.


    Thank you all for great support!

  2. @Darius1984 there is no need to change anything in kext that works in High Sierra to make it work in Mojave.


    1. You need to change USBCOMP mode to 6, 8 or 14 to make it work in MacOS. If you are using dual boot with Windows use USBCOMP 14. I did that from persistent Ubuntu USB using perl script.

    2. Since I saw in another thread that you have same card as me, you can use this kext vkgLegacySierraQMI.kext.zip

    3. Be sure that your system can access your card properly. I had problems with this in the beginning. Check USB / USB Device Tree and Network / WWAN in System Information.


    You can use AT commands from your terminal like this

  3. 2 hours ago, kostas54 said:

    I don't have these "raw" entries.

    You don't see those values because you are using FakeSMC.kext and ACPIBatteryManager.kext, but that is not an issue here.


    Values that you are getting from command line are same as those from Coconut. I made a test with ACPIBatteryManager.


    First I checked Coconut:




    And few seconds later I checked ioreg from terminal:

    dragon:~ viking$ ioreg -w0 -l | grep "Capacity"
        | |   |   "Configuration" = {"Correct16bitSignedCurrentRate"=Yes,"UseDesignVoltageForDesignCapacity"=Yes,"EstimateCycleCountDivisor"=6,"UseExtraBatteryInformationMethod"=Yes,"UseDesignVoltageForMaxCapacity"=Yes,"UseExtendedBatteryInformationMethod"=Yes,"CorrectCorruptCapacities"=Yes,"StartupDelay"=0,"FirstPollDelay"=4000,"CurrentDischargeRateMax"=20000,"UseDesignVoltageForCurrentCapacity"=Yes}
        | |         "MaxCapacity" = 5527
        | |         "CurrentCapacity" = 3341
        | |         "LegacyBatteryInfo" = {"Amperage"=18446744073709550173,"Flags"=4,"Capacity"=5527,"Current"=3341,"Voltage"=7601,"Cycle Count"=188}
        | |         "DesignCapacity" = 6660
    dragon:~ viking$


    And that is perfectly fine since there was a few seconds difference.


    3353 is 60.66582232676% of 5527.
    3341 is 60.448706350642% of 5527.


    So, Coconut and ioreg are in sync. So everything looks fine, but...


    iStatMenus showed this:




    And same (wrong) percentage was displayed by OS:




    Since those values are higher than real ones, there are only two potential reasons:


    1. one of two values (or even both) used for calculation that system gets are wrong - but this is almost impossible since ioreg values are correct

    2. system gets result with delay - is even more problematic to comprehend the possible reason for this


    @Jake Lo I am totally confused now, since you wrote that you noticed this difference even with VirtualSMC. I will revert VirtualSMC and repeat those tests again. 

  4. 13 hours ago, Jake Lo said:

    I've been looking over the issue with the Battery status.

    I had installed CoconutBattery and confirmed the issue.

    I've tested both ACPIBatteryManager and SMCBatteryManager.

    I've tested on my E7470, E7450 and E7440 ( Skylake, Broadwell and Haswell respectively)

    I've tested on Sierra, High Sierra, and Mojave, it appears to the same issue across the board.

    I'll have to test Sierra with an older ACPIBatteryManager and see if issue occur even further back.



    I don't see this issue on my system (E7450 + VirtualSMC + SMCBatteryManager).

    dragon:~ viking$ ioreg -w0 -l | grep "Capacity"
          |         "AppleRawCurrentCapacity" = 1194
          |         "AppleRawMaxCapacity" = 5456
          |         "MaxCapacity" = 5456
          |         "CurrentCapacity" = 1194
          |         "LegacyBatteryInfo" = {"Amperage"=18446744073709549617,"Flags"=4,"Capacity"=5456,"Current"=1194,"Voltage"=7366,"Cycle Count"=0}
          |         "DesignCapacity" = 6660
          |         "BatteryData" = {"StateOfCharge"=5376,"Voltage"=7366,"QmaxCell1"=0,"ResScale"=0,"QmaxCell2"=0,"QmaxCell0"=0,"CycleCount"=0,"DesignCapacity"=6660}

    As you can see MaxCapacity is same as AppleRawMaxCapacity and CurrentCapacity is same as AppleRawCurrentCapacity. Since there is no difference, it's expected to get same results whatever value is used. There might be slight difference because of different number rounding rules.


    In this example 1194 is 21.8841642228739 percent of 5456.














    Looks like Cycle Count and Battery Temperature are always 0 with virtualSMC. Coconut wrongly displays absolute zero when it reads 0 value for temperature. 

  5. Yes, you can modify EFI partition form Linux or Windows (but be careful). Windows saved me from bricked macOS few times while doing some crazy experiments with my config and kexts.


    Try with this EFI folder. Completely remove CLOVER, APPLE and BOOT folders from your EFI partition and use those. You should be able to see your APFS partition and probably to boot your system.


    I replaced your Clover files and removed some things that you probably don't need from drivers64UEFI folder. I also replaced your config and kexts with those that Jake sent you.




    I haven't checked your config, but if you were using config that Jake posted to you with kext that you had, that was doomed from start. Jake posted correct kexts needed by his config, so you need both of those.


    EDIT: Almost forgot, please update your signature with your system specs in order to get better support in the future.

  6. You modified 3 files from /S/L/E and 1 modem script to accomplish something that you probably cold done with just one additional codeless kext in /L/E (without any modification of system files).


    I modified my kext for another Sierra model to mach your ID. I also modified InterfaceMapping to mach the one you posted.




    If you want, restore original files that you modified and try to connect with this kext in /L/E instead.

  7. Install VoodooPS2Controller-R6Bronxteck.kext.zip and find your ALPS version with

    log show | grep ALPS

    You will have much better idea what to do then.


    If you have v7 or newer you will probably need to use ApplePS2Controller.kext, since VoodooPS2Controller can't properly handle them. Cursor movement is jumpy and sluggish. Gestures are mixed and not working as expected.


    ApplePS2Controller works much better with v7 then VoodooPS2Controller. Cursor movement is much faster with this one. Scrolling with two fingers works fine, but it's slightly jumpy. This can be a lot smoother if you install MOS.


    Based on comments, older ALPS versions should work very good with VoodooPS2Controller, including gestures. Jake should have much better overview, since he have few different Dell laptops with different touch pads.

  8. You can easily modify VRAM size from your config. Just change or remove framebuffer-unifiedmem in Devices Properties section as it suites you. For example "000000a0" will give you 2560MB. If you remove it completely you will get default of 1536MB.


    I haven't properly tested headphone jack on macOS, since I am using BT headphones. If I remember correctly when you plug the cable in Windows, there is a popup to choose type of headphones and there you need to select headphones with microphone to make that work. Headphones without microphone is the default option.

  9. This is fixed version of DisableTurboBoostBattery.kext that should work with both SMCBatteryManager and ACPIBatteryManager.



    I performed tests on battery and on charger with SMCBatterManager and looks like everything finally works as expected.


    Please test properly with ACPIBatteryManager since I only did brief test on battery to see if TurboBoost is disabled or not, but I didn't done any tests on charger. Please let me know if there is any problem so I could fix this.


    • Like 1
  10. DisableTurboBoostBatery.kext doesn't work with VirtualSMC.kext and SMCBatteryManager.kext.


    Problem is here:

    void DisableTurboBoostBattery::actOnChangedPowerState()
    	if (pPowerSource && isOnAC != pPowerSource->externalChargeCapable() && pPowerSource->batteryInstalled()) {
    		if ((isOnAC = pPowerSource->externalChargeCapable()))

    Reason is simple - externalChargeCapable returns different values with VirtualSMC.kext and SMCBatteryManager.kext than with FakeSMC.kext and ACPIBatteryManager.kext.


    ExternalChargeCapable property has same value as ExternalConnected in case of FakeSMC.kext and ACPIBatteryManager.kext. On battery both values are false, on charger both values are true.

    With VirtualSMC.kext and SMCBatteryManager.kext only ExternalConnected property change value. It's true on charger and false on battery. ExternalChargeCapable is always true.


    This is the reason why disable_tb() is never called with VirtualSMC.kext and SMCBatteryManager.kext and Turbo Boost remains active.


    Fix should be simple as this:

    void DisableTurboBoostBattery::actOnChangedPowerState()
    	if (pPowerSource && isOnAC != pPowerSource->externalConnected() && pPowerSource->batteryInstalled()) {
    		if ((isOnAC = pPowerSource->externalConnected()))

    This should work in both usage cases - VirtualSMC.kext with SMCBatteryManager.kext and FakeSMC.kext with ACPIBatteryManager.kext.


    VirtualSMC implementation of ExternalChargeCapable looks proper based on documentation:

     Type: bool
     IORegistry Key: kIOPMPSExternalConnectedKey
     True if computer is drawing external power
     Type: bool
     IORegistry Key: kIOPMPSExternalChargeCapableKey
     True if external power is capable of charging internal battery



    • Like 3
  11. Turbo Boost Switcher use same approach (with almost identical code) to enable/disable Turbo Boost as DisableTurboBoostBattery.kext, but for some reason this one works and DisableTurboBoostBattery do not. Unfortunately, Turbo Boost Switcher can't detect power source change, so you need to manually enable/disable Turbo Boost if you want to disable it only when you are on battery power. You can also permanently disable Turbo Boost if you do not need it and do not want to play with enable/disable every time. Just extract DisableTurboBoost.64bits.kext from Turbo Boost Switcher.app.


    Since code that enables/disables Turbo Boost works in Turbo Boost Switcher and DisableTurboBoostBattery.kext is properly loaded I can only assume that there is a problem with detecting power source change for some reason. Looks like that there is also an issue if you boot your laptop on battery. It is possible that similar problem occurs if you use VirtualSMC.


    I will test this with FakeSMC.kext and ACPIBatteryManager.kext right away, while booting on charger.




    As I suspected DisableTurboBoostBatery.kext works fine if you are using FakeSMC.kext and ACPIBatteryManager.kext, but it doesn't work if you are using VirtualSMC.kext and SMCBatteryManager.kext. I didn't notice mentioned issue. It works fine even if I boot on battery.


    I will try to figure out why it doesn't work with SMCBatteryManager.kext


    EDIT 2:


    I found the reason why it doesn't work.


  12. I have 16 different brightness levels (I counted changes with F12 from complete black). From complete black to fully 100% bright. I do not see any difference compared to AppleBacklightInjector.kext + F%uT%04x ->  F%uTxxxx. Based on everything I read, this should not work, but somehow it does.


    To complete this mystery AppleBacklightFixup doesn't work at all.





    I am sure that I do not have active AppleBacklightFixup.kext nor AppleBacklightInjector.kext with patch

    rebuilding //System/Library/PrelinkedKernels/prelinkedkernel
    kext file:///Library/Extensions/DisableTurboBoostBattery.kext/ is in hash exception list, allowing to load
    Kext with invalid signatured (-67062) allowed: <OSKext 0x7f9038713630 [0x7fffa841b8f0]> { URL = "vkgLegacySierraQMI.kext/ -- file:///Library/Extensions/", ID = "com.apple.driver.vkgLegacySierraQMI" }
    KernelCache ID: 5FD429B0B475017C20F69DA3F5CCC0B2
    kextcache updated critical boot files, requesting launchd reboot









  13. @roniez Your laptop is almost identical to mine. Only differences are SSD and WiFi card. I used both MacBookPro12,1 and MacBookAir7,2. As @Hervé already pointed, both are good choice for this laptop. Actually, I have to apologize to you, since I gave you wrong version of USBPorts.kext because of this. I gave you MBA7,2 version of USBPorts with MBP12,1 config. You can find proper version in attachment. 


    I never used SSDT-XCPM and I stopped using SSDT generated with ssdtPRGen in favor of PluginType 1. Always go native if possible.

    Karabiner probably works fine, but brightness probably not working at all. Go to display settings and check if you have brightness slider or not.




    I actually had same problem two days ago after I reinstalled everything from scratch (with same files I gave you). I noticed that my brightness shortcuts not working, so I check display settings and brightness slider was missing. In one of my attempts to fix this, I accidentally removed both AppleBacklightFixup.kext and AppleBacklightInjector.kext and I noticed that my brightness works (looks like it works natively somehow). I only have latest SSDT-PNLF.aml from AppleBacklightFixup repo (also in attachment).


    @Jake Lo and @Hervé do you any idea what sorcery is this?!


    I am currently using those kexts (in attachment):




    and this ACPI files:




    DisableTurboBoostBattery.kext not working for me after this last reinstall. I tested it before and it worked perfectly. CPU was around 1.3 to 1.5GHz on battery. Now it jumps to 3GHz if I open PhotoShop. As soon as I figure out why it's not working I will let you know.


    @Hervé E7450 have different native keyboard shortcuts then those you are referring (which exists on other Dell models). Brightness is controlled with Fn+F11 and Fn+F12.




    Jake made karabiner config that maps all those special keys (brightness, sound and others) to appropriate function keys to match those in Windows (except there is no need to press Fn).




  14. You have two configs and two patched folders which is not a problem by itself, but you can easily make things wrong (as you did). In one of those CpuSsdt is SSDT-6.aml and in second CpuSsdt is SSDT-5.aml


    When you sent files first time you send this folder only:


    and I wrote to you to remove SSDT-5.aml, since I checked all of them to see which one is CpuSsdt


    You use another folder now


    and you removed wrong table from Sort order. You need to remove SSDT-6.aml here, not SSDT-5.aml. You also need to remove SSDT-6.aml file itself from patched folder.


    This should fix your hang/kp problems.


    I updated all my kexts tonight and brightness stoped working for me too. Looks like AppleBacklightFixup.kext doesn't work with latest Lilu.kext for some reason. I had to remove AppleBacklightFixup.kext and to restore AppleBacklightInjector.kext and to re-enable change F%uT%04x to F%uTxxxx patch again. This works fine.


    You have this patch in your config, so just replace AppleBacklightFixup.kext with AppleBacklightInjector.kext and rebuild kext cache. After reboot go to Displays in System Preferences and check if you have Brightness slider there or not. It is possible that your keyboard shortcut doesn't work even if brightness itself works.


    p.s. /Library/Extensions is preferred location for adding kexts, not /System/Library/Extensions. It's not a problem if you add them there, but it would be hard for you to keep track of them later. I recommend to remove your kexts from there and to move them to /L/E. Always rebuild kext cache when you add or remove anything to/from /L/E or /S/L/E. 

  15. For hangup issues, you will probably have to drop CpuSsdt and (or) Cpu0Ist in your config. Something like this




    SSDT-5.aml (CpuSsdt) should be removed from patched folder in that case.


    Drop OEM is needed if you are using patched aml files.


    Your sort order section should match existing files in your patched folder. 

  16. You probably would not get proper help until you at least send your config. Ideally send proper problem reporting file.


    I can tell you this so far - remove EAPDFix.kext (not needed with lates AppleALC) and FakePCIID_Intel_HD_Graphics.kext (not needed with lates WhateverGreen). You have FakePCIID_Broadcom_WiFi.kext that you do not need (remove it), but you removed BrcmPatchRAM2.kext and BrcmFirmwareRepo.kext that are actually need for working BT.


    For brightness try AppleBacklightFixup.kext. I prefer this one over AppleBacklightInjector.kext (which also need patch in config).

  17. Whatever you do, be sure that you are using latest Clover and kext files. ApfsDriverLoader-64.efi from older Clover versions will not load APFS drivers from 10.14.1 and you will not be able to boot, since conversion to APFS can not be avoided anymore.


    If you want smooth update, always update clover and kexts in advance and be sure that everything works. After that update should be painless.


    I attached my config with modified serials and latest kexts. If you want to try this, you have to replace complete ACPI/patched folder since I am using "hot patch" ACPI and yours is "static".


    Since you have DW1560 I added two kexts that I am not using AirportBrcmFixup.kext and FakePCIID_Broadcom_WiFi.kext.


    Do not add FakePCIID_Intel_HD_Graphics.kext, Shiki.kext nor IntelGraphicsDVMTFixup.kext. 


    I hope I didn't missed anything.


    btw. you can safely update your BIOS to A20.


    E7450 with NV.zip


    Edit: if you have model without NV, just remove SSDT-DDGPU.aml from ACPI/patched folder. That's all.

  18. Those are latest stable (non beta) drivers for (probably all) TP-Link USB devices. You will find two archives inside Mac OS X10.13.zip and Mac OS X10.8_10.12.zip. Mac OS X10.13.zip actually works just fine on Mojave too.


    I have no idea why they have so many different versions of driver packages on their site. When you start digging, you will find that you have same drivers on download page for several models. For some crazy reason only packages on latest hw versions of some device are updated.


    Those are supported TP Link devices:


    TPLink_010C_88EUS (TL-WN722N v2)
    TPLink_0120_8811AU (TL-WN822N)
    TPLink_821v5_92EU (TL-WN821N v5)
    TPLink_822v4_92EU (TL-WN821N v4)
    TPLink_823v2_92EU (TL-WN823N v2)
    TPLink_8812AU_2 (Archer T4UH v2)
    TPLink_8812AU_3 (Archer T4UH v3)
    TPLink_T4UH_8812AU (Archer T4UH)
    TPLink_T4U_8812AU (Archer T4U)
    TPLink_T9UH_8814AU (Archer T9UH)
    RTL8188EU (TL-WN725N v2 or v3)




    Those are other RTL models supported by those drivers:





  19. Quote

    Tap twice to enable capLock and twice to release. 


    There is nothing wrong with "just press Caps Lock two times instead of once" approach. I used it myself in the beginning.


    Later I came to conclusion that it's probably better to use "press caps once to turn it on, but 3 times to turn it off" instead. As you know, when you press Caps Lock first time case is changed and LED is lit, and that is expected behavior. Problem occurs when you try to turn it off. To accomplish expected behavior (both caps and LED turned off) you need to press that key 3 times. With this approach I have "working" Caps Lock including "proper" LED. :)

  20. Even with trackpad speed set to maximum in preferences, cursor movement is still too slow for my taste. I need to swipe my finger at least 2 times to accomplish same cursor movement as with one swipe with ApplePS2Controller. Do you have any idea what I could try to change in Info.plist inside trakpad kext?


    Apple keyboards do not have those keys, thats not questionable (I have one on my table right now). I am just not sure why those keys are disabled in this kext. They work just fine with ApplePS2Controller. Everyone would benefit with two more working keys. People could change those to anything they want with Karabiner-Elements, but they are currently completely dead. I hope that there is a simple way to enable them by changing Info.plist inside keyboard kext, and that there is no need for code modification.


    PtrScr key is mapped to Shit+Command+4 and Insert is mapped to Home with ApplePS2Controller, but I would be satisfied with any two codes that Karabiner could see.


  21. Remove AppleBacklightInjector.kext, but you do not have to remove patch from config right away. Just check Disable checkbox for start, so you can revert it back if you have any problem with AppleBacklightFixup.kext. When you see that everything works, you can remove it completely.


    I never had any problem with battery indicator. Inject Kext is on Detect in all my configs.

  • Create New...