หยุด / เริ่มการชาร์จแบตเตอรี่ผ่านซอฟต์แวร์หรือไม่


20

หากเปิดแล็ปท็อปและเชื่อมต่อกับไฟ AC มีวิธีการออกคำสั่งที่บอกว่าจะไม่ชาร์จแบตเตอรี่หรือไม่?

แก้ไข:
บางทีการชาร์จแบตเตอรี่อาจหยุดลงหากมีวิธีที่จะหลอกระบบให้คิดว่าแบตเตอรี่นั้นมีประจุอยู่แล้ว 100%


2
เป็นไปได้ - ฉันรู้ว่าคอมพิวเตอร์ Lenovo สามารถทำเช่นนั้นเมื่อโหลด Windows ไม่แน่ใจว่ามีสิ่งอำนวยความสะดวกในการทำเช่นนี้กับ Ubuntu หรือไม่
cprofitt

1
คุณช่วยอธิบายได้ไหมว่าทำไมคุณถึงต้องการทำเช่นนี้?
coteyr

ฉันมีตัวเลือก BIOS ให้ทำเช่นนั้น ไม่ใช่สิ่งที่คุณต้องการ แต่มองไปที่นั่น
ติโม

@coteyr: คำถามที่เกี่ยวข้องกับเรื่องนี้ของฉันอธิบายได้ว่าทำไมมันจึงไม่เหมาะที่จะเก็บแล็ปท็อปของคุณที่ 100%
ลืมไปเลย

คำตอบ:


4

บนอุปกรณ์ Thinkpad คุณสามารถควบคุมการเริ่มและหยุดการชาร์จแบตเตอรี่ใน Ubuntu รันคำสั่งเหล่านี้ในเทอร์มินัลของคุณเพื่อติดตั้งtp-smapi:

sudo apt-get install tp-smapi-dkms
sudo modprobe tp_smapi

จากนั้นเขียนขีด จำกัด การชาร์จที่คุณต้องการ(ค่าของคุณเอง)ไปยังไฟล์เสมือนใน/sys/devices/platform/smapi:

echo 10 | sudo tee /sys/devices/platform/smapi/BAT0/start_charge_thresh
echo 100 | sudo tee /sys/devices/platform/smapi/BAT0/stop_charge_thresh

ในคำสั่งข้างต้นคุณสามารถเปลี่ยนค่า 10 และ 100 เป็นค่าใดก็ได้ คนแรกที่จะช่วยให้คุณเลือกในสิ่งที่ระดับการชาร์จไฟจะต้องเริ่มต้นและความคุ้มค่าที่สองจะให้คุณเลือกในสิ่งที่ระดับชาร์จต้องหยุด


2

สิ่งนี้ขึ้นอยู่กับฮาร์ดแวร์เป็นอย่างมาก แล็ปท็อปส่วนใหญ่ที่ระดับฮาร์ดแวร์จะไม่อนุญาตให้คุณหยุดชาร์จแบตเตอรี่ จริง ๆ แล้วแบตเตอรี่ LION ได้รับประโยชน์จากวงจรการชาร์จขนาดเล็กและแล็ปท็อปส่วนใหญ่จะมีวัฏจักรนั้นในระดับฮาร์ดแวร์

หมายความว่าตัวบ่งชี้แบตเตอรี่ของคุณบอกว่า 100% จริง ๆ แล้วแบตเตอรี่มีการคายประจุและชาร์จใหม่เล็กน้อยเพื่อให้มีสุขภาพดี นอกจากนี้สำหรับแล็ปท็อปส่วนใหญ่ 100% ยังไม่เต็ม

แล็ปท็อปบางเครื่องใน windows มีตัวเลือก "ปิดการชาร์จ" แต่นี่เป็นเพียงการเปลี่ยนแบตเตอรี่ NiCad ทุกวันนี้ทุกสิ่งที่ "ตั้งค่า" ไม่ได้เปิดใช้งานโหมด "ประสิทธิภาพ"

หากคุณกำลังมองหาชนิดเดียวกันของสวิทช์แล้วฉันขอแนะนำดาวพฤหัสบดี มันจะช่วยให้คุณเคลื่อนที่ระหว่างโหมดประสิทธิภาพได้อย่างง่ายดาย แต่ไม่สามารถควบคุมการชาร์จได้โดยตรง

เนื่องจากการหยุดวงจรการชาร์จนั้นไม่ดีสำหรับแบตเตอรี่ในปัจจุบันจึงไม่เป็นที่นิยม เนื่องจากมันไม่เป็นที่นิยมฉันสงสัยว่าคุณจะพบเครื่องมือ GUI ที่ดีในการทำ ทางออกที่ดีที่สุดของคุณอาจจะมองไปรอบ ๆ/sys/class/power_supply/BAT0พื้นที่เหมือนและเห็นสิ่งที่คุณสามารถหาได้ แต่ฉันค่อนข้างแน่ใจว่าคุณจะไม่สามารถปิดการชาร์จ


2

คุณไม่สามารถปิดใช้งานการชาร์จโดยใช้ซอฟต์แวร์อินเทอร์เฟซที่รู้จักจากพื้นที่ผู้ใช้ เนื่องจากมันคือการควบคุมแบตเตอรี่จาก/sys/class/power_supply/BAT0การอ่านแบบคงที่และแบบไดนามิกที่ส่งคืนจากการควบคุม ACPI _BIF, _BIX และ _BST เหล่านี้เป็นแบบอ่านอย่างเดียว

ไม่มีการควบคุม ACPI ที่อนุญาตให้คุณปิดการชาร์จแบตเตอรี่และบนแพลตฟอร์มมือถือทั่วไป x86 ทั้งหมดที่ฉันเคยใช้งานบนตัวควบคุมแบตเตอรี่จะไม่ปรากฏ โดยปกติแล้วข้อมูลนี้มาจากเกจวัดระดับแบตเตอรีและอ่านโดยใช้บิตการกระแทก i2c โดยปกติแล้วโดยตัวควบคุมแบบฝังตัว ดังนั้นคุณจึงมีโอกาสน้อยมากที่จะทำวิศวกรรมย้อนกลับได้และส่วนใหญ่จะไม่อนุญาตให้ปิดใช้งานการชาร์จแบตเตอรี่


1

ในแล็ปท็อปส่วนใหญ่เป็น Embedded Controller ตัวที่รับผิดชอบในเรื่องนั้น ฉันแนะนำให้คุณศึกษาโมดูล ec_sys modprobe ec_sys แล้ว hexdump -C / sys / kernel / debug / ec / ec0 / io

คุณจะเห็นความแตกต่างเมื่อทำการชาร์จและเมื่อทำการคายประจุ นอกจากนี้ยังมีสิ่งที่น่าสนใจให้ทำเช่น:

1) ใช้ไฟ AC (ถ้าเชื่อมต่อ) 2) ใช้แบตเตอรี่ (แม้ว่าจะเชื่อมต่อกับ AC) 3) การชาร์จ / คายประจุ ฯลฯ


นอกจากนี้คุณยังสามารถค้นหาแผนผังคอนโทรลเลอร์แบบฝังในรายละเอียดได้ในตาราง DSDT acpi
Zibri
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.