first commit

This commit is contained in:
jack
2026-04-04 15:32:51 +08:00
commit a862314d94
34 changed files with 10253 additions and 0 deletions

73
ectool测试.ps1 Executable file
View File

@@ -0,0 +1,73 @@
# ectool test script - run as Administrator
# Tests EC communication, temperature, fan, battery and saves result to .txt
# Use cmd to capture stderr as text (no PowerShell error wrapper)
$EctoolPath = "C:\Program Files\crosec\ectool.exe"
$ReportDir = $PSScriptRoot
$Timestamp = Get-Date -Format "yyyyMMdd_HHmmss"
$ReportFile = Join-Path $ReportDir "ectool_test_$Timestamp.txt"
$Report = ""
function Run-Ectool {
param([string]$Cmd, [string]$Desc)
$script:Report += "`n--- $Desc ---`n"
if (-not (Test-Path $EctoolPath)) {
$script:Report += "ectool not found at: $EctoolPath`n"
return
}
try {
$argList = $Cmd -split "\s+", 0, "IgnoreCase"
$argStr = ($argList | ForEach-Object { $_ }) -join " "
$cmdLine = "`"$EctoolPath`" $argStr 2>&1"
$out = cmd /c $cmdLine
$script:Report += ($out | Out-String)
} catch {
$script:Report += "Error: $($_.Exception.Message)`n"
}
}
$Report += "ectool test report`n"
$Report += "Time: $(Get-Date -Format 'yyyy-MM-dd HH:mm:ss')`n"
$Report += "Computer: $env:COMPUTERNAME`n"
# 1. Basic EC communication
Run-Ectool "hello" "1. EC communication (hello)"
Run-Ectool "version" "2. EC version"
# 2. Temperature (try common sensor IDs)
Run-Ectool "temps 0" "3. Temperature sensor 0"
Run-Ectool "temps 1" "4. Temperature sensor 1"
Run-Ectool "tempsinfo 0" "5. Temperature sensor 0 info"
# 3. Fan
Run-Ectool "pwmgetnumfans" "6. Number of fans"
Run-Ectool "pwmgetfanrpm all" "7. Fan RPM (all)"
# 4. Power / battery
Run-Ectool "battery" "8. Battery info"
Run-Ectool "powerinfo" "9. Power info"
# 5. System
Run-Ectool "sysinfo" "10. System info"
Run-Ectool "chipinfo" "11. Chip info"
# 6. Optional: thermal thresholds (may not be supported on all boards)
Run-Ectool "thermalget" "12. Thermal thresholds (thermalget)"
# Summary
$Report += "`n--- Summary ---`n"
if ($Report -match "ioctl errno 6|EC result 255") {
$Report += "This report contains 'ioctl errno 6' or 'EC result 255'.`n"
$Report += "If you DO have Chrome EC bus: often driver/interface or permission.`n"
$Report += " - Run PowerShell as Administrator.`n"
$Report += " - Check crosec service is running (services.msc).`n"
$Report += " - Try: ectool --interface=dev hello or ectool --name=cros_ec hello`n"
$Report += "If no Chrome EC hardware, use HWiNFO or Core Temp for temperature.`n"
} else {
$Report += "Some commands succeeded. Chrome EC communication is working.`n"
}
$Report | Set-Content -Path $ReportFile -Encoding UTF8
Write-Host "Report saved: $ReportFile" -ForegroundColor Green
Write-Host $Report