12 votes

Comment Coconut Battery détermine-t-elle la capacité nominale d'une batterie de Macbook ?

La batterie d'un macbook a trois numéros de charge :

  1. La charge actuelle
  2. La charge maximale
  3. La capacité nominale

Même si un Macbook reste branché, OS X ne tente pas de le charger tant que (1) est égal à 95 % de (2), ce qui explique pourquoi le pourcentage dans la barre de notification sera souvent compris entre 95 % et 100 %.

Ces deux chiffres sont en contraste avec la "capacité nominale" d'une batterie. Batterie de noix de coco est le seul logiciel que j'ai trouvé qui indique la "capacité nominale" de la batterie d'un Macbook.

Cette capacité de conception n'apparaît pas dans les spécifications d'Apple, dans System Information, ou sur everymac.com.

Comment Coconut Battery détermine-t-elle la capacité nominale d'une batterie ?

30voto

F0RR Points 337

Vous pouvez trouver ces informations ainsi que beaucoup d'autres informations sur la batterie et/ou le système à partir de la commande

ioreg

Cette commande, selon sa page de manuel, le fait :

ioreg affiche le registre des kits d'E/S. Il montre l'arborescence 1 registre comme un arbre inversé.

<em><sup>1 </sup>Héréditaire [sic]</em>

Utilisation d'un filtre par nom de classe ( AppleSmartBattery pour batterie) pour obtenir uniquement les informations relatives à la batterie :

$ ioreg -brc AppleSmartBattery
-b    Show the object name in bold.
-r    Show subtrees rooted by objects that match the specified criteria.
       If none of -c, -k, or -n are supplied, -r has no effect.
-c    Show the object properties only if the object is an instance of, or
       derives from, the specified C++ class (e.g. IOService).

De man ioreg .

Imprime quelque chose comme ceci :

$ ioreg -brc AppleSmartBattery
+-o AppleSmartBattery  <class AppleSmartBattery, id 0x100000254, registered, ma$
{
  "ExternalConnected" = Yes
  "TimeRemaining" = 0
  "InstantTimeToEmpty" = 65535
  "ExternalChargeCapable" = Yes
  "FullPathUpdated" = 1464849055
  "CellVoltage" = (4298,4292,4299,0)
  "Voltage" = 12889
  "BatteryInvalidWakeSeconds" = 30
  "AdapterInfo" = 0
  "MaxCapacity" = 5524
  "PermanentFailureStatus" = 0
  "Manufacturer" = "SMP"
  "Location" = 0
  "CurrentCapacity" = 5524
  "LegacyBatteryInfo" = {"Amperage"=0,"Flags"=5,"Capacity"=5524,"Current"=5$
  "FirmwareSerialNumber" = 1
  "BatteryInstalled" = Yes
  "PackReserve" = 200
  "CycleCount" = 318
  "DesignCapacity" = 6330
  "OperationStatus" = 58371
  "ManufactureDate" = 17726
  "AvgTimeToFull" = 65535
  "BatterySerialNumber" = "D864403T3UVFVN7A6"
  "BootPathUpdated" = 1464353527
  "PostDischargeWaitSeconds" = 120
  "Temperature" = 3096
  "UserVisiblePathUpdated" = 1464849490
  "InstantAmperage" = 0
  "ManufacturerData" = <000000000702000a03890000034a34340330304103534449032$
  "MaxErr" = 1
  "FullyCharged" = Yes
  "DeviceName" = "bq20z451"
  "IOGeneralInterest" = "IOCommand is not serializable"
  "Amperage" = 0
  "IsCharging" = No
  "DesignCycleCount9C" = 1000
  "PostChargeWaitSeconds" = 120
  "AvgTimeToEmpty" = 65535
}

Le champ que vous recherchez est DesignCapacity . Pour plus de commodité, filtrez-le avec grep (l'unité est le milliampère-heure, ou mAh) :

$ ioreg -brc AppleSmartBattery | grep DesignCapacity
      "DesignCapacity" = 6330

Votre DesignCapacity Le champ peut ne pas s'afficher 6330 comme sa valeur. J'utilise un rMBP 13" mi-2014, mais il se peut que vous utilisiez un autre système dont la batterie est différente.

En dehors des informations sur la batterie, ioreg peut être utilisé pour en savoir plus sur votre système et vos autres périphériques, un peu comme un outil d'information système en ligne de commande.


Si vous cherchez une implémentation de cette commande dans le code, jetez un coup d'oeil à Le SystemKit de Beltex sur Github . C'est l'une des bibliothèques Swift les plus cool que je connaisse.

Clause de non-responsabilité : non affilié à SystemKit ou Beltex. Juste un utilisateur heureux de SystemKit.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X