Jump to content
2,188 posts in this topic

Recommended Posts

On 8/9/2019 at 9:22 PM, curtistn73 said:

@Slice I built a new pkg based on r227 (I see you added code for the NCT6797D chip). However, the W836x.kext fails to load. See attachment. What can I do to help get this working?

error.png

The kext must be compiled with SDK10.11.

And FakeSMC must be version 3.5.2, not 6, not 1800.

Take release package from sf.net.

Link to comment
Share on other sites

14 hours ago, Slice said:

The kext must be compiled with SDK10.11.

And FakeSMC must be version 3.5.2, not 6, not 1800.

Take release package from sf.net.

Hi @Slice, I used the r227 release package from SourceForge, and (unfortunately) have the same results: W836x kext does not load and the same error is present in the logs.

error2.png

Link to comment
Share on other sites

52 minutes ago, Andres ZeroCross said:

How to compile HWSensor3?? Got stuck in this line...

 

 

svn up

 

1 hour ago, curtistn73 said:

I tried r234. However, it didn't help and W836x still doesn't load.

Can you provide some logs for more info?

Or I have to propose that you just using wrong version of FakeSMC?

Link to comment
Share on other sites

5 hours ago, Slice said:

Thanks for detailed logs.

Test this version. If OK then I have to replace default downloaded package.

W836x.kext.zip

We are making progress! This kext loads and information is shown in HWMonitorSMC2. However, the voltages do not appear to be correct (see attached pic). Also, CPU Fan and System Fan seem to be swapped.

kexts.png

new-systemlog-w836x.txt

hwmonitor2.png

Link to comment
Share on other sites

On 8/9/2019 at 3:29 PM, Andrey1970 said:

Strange, but I had a problem of build of the last versions.

 

On 8/13/2019 at 8:16 PM, Andres ZeroCross said:

How to compile HWSensor3?? Got stuck in this line...

 

image.thumb.png.06c29dcdb695ae0debbc91191a9db2b0.png

Hi guys, not sure where the problem reside for you, but can you try debug version?

 

just make a copy of ./hwconf.profile in your Home directory (or just edit it in place) from Release to Debug:

export PREFERRED_CONF_APPS='Debug'

let me know

Link to comment
Share on other sites

For additional information.

I have 10.13.6 with XCode 10.1 and swift 4.2.

The build process told me that "swift 4.2.1 is not found, back to 4.2" and then compilation is successful. Just take a whole minute to do.

Link to comment
Share on other sites

9 minutes ago, Slice said:

For additional information.

I have 10.13.6 with XCode 10.1 and swift 4.2.

The build process told me that "swift 4.2.1 is not found, back to 4.2" and then compilation is successful. Just take a whole minute to do.

Thanks. Swift 4.2.1 is ok, I'll fix it. But I guess a minute for building from scratch (make fresh) is just fine, the problem is with some Xcode and the shipped parser that goes crazy solving very easy statements like is too complicated, for example this alone took 3 seconds to be resolved (strings concatenation using +):

 

return String(describing: UnicodeScalar(self >> 24 & 0xff)!) +
       String(describing: UnicodeScalar(self >> 16 & 0xff)!) +
       String(describing: UnicodeScalar(self >> 8  & 0xff)!) +
       String(describing: UnicodeScalar(self       & 0xff)!)

while this just took few ms:

return "\(String(describing: UnicodeScalar(self >> 24 & 0xff)!))\(String(describing: UnicodeScalar(self >> 16 & 0xff)!))\(String(describing: UnicodeScalar(self >> 8  & 0xff)!))\(String(describing: UnicodeScalar(self & 0xff)!))"

... to do just the same. Also they have problems with "concurrency building" vs "one by one", why I suggested to use "Debug" because use the second. Hope Apple fix it soon. No problems here with Xcode 10.2.1.

 

Link to comment
Share on other sites

On 8/14/2019 at 11:00 AM, Slice said:

Thanks for detailed logs.

Test this version. If OK then I have to replace default downloaded package.

W836x.kext.zip

Hello again @Slice I appreciate your help. I am currently working on creating a profile for my motherboard. Would you merge the code from this W836x.kext into the main branch?

I'd like to experiment, as it appears my motherboard (with NCT6797D chip) is using voltage sensors up to VIN15. Thanks in advance!

Link to comment
Share on other sites

On 8/16/2019 at 4:47 PM, curtistn73 said:

Hello again @Slice I appreciate your help. I am currently working on creating a profile for my motherboard. Would you merge the code from this W836x.kext into the main branch?

I'd like to experiment, as it appears my motherboard (with NCT6797D chip) is using voltage sensors up to VIN15. Thanks in advance!

Already done.

The chip support done in rev 224, and compilation errors fixed in 237.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

  • 2 weeks later...

@vector sigma

Look please

HWMonitorSMC/Interface/HWOulineView.swift:82:49: error: cannot convert value of type 'String' to expected argument type 'NSImage.Name'
        self.graphButton.image = NSImage(named: "freq_small")
                                                ^~~~~~~~~~~~
                                                NSImage.Name(rawValue:  )

rev 240

Link to comment
Share on other sites

21 hours ago, Slice said:

@vector sigma

Look please


HWMonitorSMC/Interface/HWOulineView.swift:82:49: error: cannot convert value of type 'String' to expected argument type 'NSImage.Name'
        self.graphButton.image = NSImage(named: "freq_small")
                                                ^~~~~~~~~~~~
                                                NSImage.Name(rawValue:  )

rev 240

Hi, the "named" initializer was introduced in swift 4.2, and unless Apple reverted some happy changes I'm not aware of, looks like are you using an old Xcode.

 

If you want build pkg/dmg installers with kexts built with old Xcode among the monitor 2 with full ability, if that is the case, there's a warkaround I made:

  1. build extensions in a older OS
  2. reboot to latest OS and copy pre built kexts inside a sub directory of the root of the project called "kexts_prebuilt"
  3. make pkg.... but with pre built extensions and with latest sdk available for the apps (Xcode 11 adviced). Using latest sdk will activate some new functionalities for the newer OS, otherwise unavailable (like for example the ability to follow the dark/light appearance of the OS and the line color for the graphs based on that)

 

Link to comment
Share on other sites

10 hours ago, vector sigma said:

Hi, the "named" initializer was introduced in swift 4.2, and unless Apple reverted some happy changes I'm not aware of, looks like are you using an old Xcode.

 

If you want build pkg/dmg installers with kexts built with old Xcode among the monitor 2 with full ability, if that is the case, there's a warkaround I made:

  1. build extensions in a older OS
  2. reboot to latest OS and copy pre built kexts inside a sub directory of the root of the project called "kexts_prebuilt"
  3. make pkg.... but with pre built extensions and with latest sdk available for the apps (Xcode 11 adviced). Using latest sdk will activate some new functionalities for the newer OS, otherwise unavailable (like for example the ability to follow the dark/light appearance of the OS and the line color for the graphs based on that)

 

OK, but

Dell:hwsensors3 sergey$ make pkg
** Using HWSensor trunk **
** Using HWSensor's pre built extensions **

ACPIMonitor.kext (1.0.3)
AmdCPUMonitor.kext (1.0.2)
F718x.kext (1.0.1)
FakeSMC.kext (3.5.2)
GeforceSensor.kext (1.2.4)
ITEIT87x.kext (1.0.7)
IntelCPUMonitor.kext (1.2.3)
NVClockX.kext (1.0.2)
PC8739x.kext (1.0.1)
RadeonMonitor.kext (1.3.4)
SMIMonitor.kext (1.1.0)
VoodooBatterySMC.kext (1.6.1)
W836x.kext (1.3.4)
X3100.kext (1.0.1)

** Building HWMonitorSMC.app v1 **
** Building HWMonitorSMC.app v2 **
swift 5.0.1 will be used..
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/Interface/PopoverWindowController.swift:34:8: warning: instance method 'windowDidResize' took 101ms to type-check (limit: 100ms)
  func windowDidResize(_ notification: Notification) {
       ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/Interface/Preferences/PreferencesVC.swift:288:8: warning: instance method 'getPreferences()' took 100ms to type-check (limit: 100ms)
  func getPreferences() {
       ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/SystemKit/Display.swift:206:27: warning: static method 'getDisplayInfo(screen:displayLocations:)' took 499ms to type-check (limit: 100ms)
  fileprivate static func getDisplayInfo(screen: NSScreen, displayLocations: inout [String]) -> String {
                          ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/SMC.swift:83:12: warning: expression took 470ms to type-check (limit: 100ms)
    return (UInt8(self >> 6), UInt8((self << 2) ^ ((self >> 6) << 8)))
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/SMC.swift:82:8: warning: instance method 'toFPE2()' took 471ms to type-check (limit: 100ms)
  func toFPE2() -> FPE2 {
       ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/SMC.swift:122:12: warning: expression took 105ms to type-check (limit: 100ms)
    return "\(String(describing: UnicodeScalar(self >> 24 & 0xff)!))\(String(describing: UnicodeScalar(self >> 16 & 0xff)!))\(String(describing: UnicodeScalar(self >> 8  & 0xff)!))\(String(describing: UnicodeScalar(self       & 0xff)!))"
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/SMC.swift:121:8: warning: instance method 'toString()' took 105ms to type-check (limit: 100ms)
  func toString() -> String {
       ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/AppDelegate.swift:92:7: error: use of unresolved identifier 'IntelEnergyLibShutdown'
      IntelEnergyLibShutdown()
      ^~~~~~~~~~~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/AppDelegate.swift:89:8: warning: instance method 'applicationWillTerminate' took 4179ms to type-check (limit: 100ms)
  func applicationWillTerminate(_ aNotification: Notification) {
       ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/IntelPowerGadget.swift:21:6: error: 'Int32' is not convertible to 'Bool'
  if IsGTAvailable() {
     ^~~~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/IntelPowerGadget.swift:40:8: error: 'Int32' is not convertible to 'Bool'
    if GetGTFrequency(&gtFreq) {
       ^~~~~~~~~~~~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/IntelPowerGadget.swift:57:8: error: use of unresolved identifier 'GetGpuMaxFrequency'
    if GetGpuMaxFrequency(&gtMaxFreq) {
       ^~~~~~~~~~~~~~~~~~
__ObjC.GetGTFrequency:1:13: note: did you mean 'GetGTFrequency'?
public func GetGTFrequency(_ freq: UnsafeMutablePointer<Int32>!) -> Int32
            ^
__ObjC.GetBaseFrequency:1:13: note: did you mean 'GetBaseFrequency'?
public func GetBaseFrequency(_ iNode: Int32, _ pBaseFrequency: UnsafeMutablePointer<Double>!) -> Int32
            ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/IntelPowerGadget.swift:18:6: warning: global function 'getIntelPowerGadgetGPUSensors()' took 1391ms to type-check (limit: 100ms)
func getIntelPowerGadgetGPUSensors() -> [HWMonitorSensor] {
     ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/IntelPowerGadget.swift:205:3: error: use of unresolved identifier 'GetThresholds'
  GetThresholds(0, &degree1C, &degree2C)
  ^~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/IntelPowerGadget.swift:211:3: error: use of unresolved identifier 'GetCpuUtilization'
  GetCpuUtilization(0, &cpuutil)
  ^~~~~~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/IntelPowerGadget.swift:125:6: warning: global function 'getIntelPowerGadgetCPUSensors()' took 152ms to type-check (limit: 100ms)
func getIntelPowerGadgetCPUSensors() -> [HWMonitorSensor] {
     ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/Interface/PopoverViewController.swift:185:40: error: cannot assign value of type 'Int32' to type 'Bool'
            self.useIntelPowerGadget = IntelEnergyLibInitialize()
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/Interface/PopoverViewController.swift:307:8: warning: instance method 'initialize()' took 120ms to type-check (limit: 100ms)
  func initialize() {
       ^
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/HWSensorScanner.swift:26:10: warning: expression took 107ms to type-check (limit: 100ms)
  return UInt(((Int(value) & 0xff00) >> 8) | ((Int(value) & 0xff) << 8))
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/sergey/Documents/Projects/hwsensors3/trunk/hwmonitor2/HWMonitorSMC/HWMonitorSensors/HWSensorScanner.swift:25:18: warning: global function 'swapBytes' took 108ms to type-check (limit: 100ms)
fileprivate func swapBytes(_ value: UInt) -> UInt {
                 ^
note: Using new build systemnote: Planning buildnote: Constructing build description
** BUILD FAILED **

 

  • Like 1
Link to comment
Share on other sites

On 8/29/2019 at 10:20 AM, Slice said:

It appears IPG must be installed for compilation the project. Now I have success and released revision 240.

Good, as soon as I have time I'll make the build script aware of the dependency.

Edited by vector sigma
Link to comment
Share on other sites

×
×
  • Create New...