|
2011-07-31
, 15:15
|
Banned |
Posts: 695 |
Thanked: 308 times |
Joined on Apr 2011
@ originally pakistan ,now in china
|
#2
|
|
2011-07-31
, 15:21
|
Banned |
Posts: 3,412 |
Thanked: 1,043 times |
Joined on Feb 2010
|
#3
|
|
2011-07-31
, 19:53
|
|
Posts: 472 |
Thanked: 195 times |
Joined on Jun 2010
@ India, Mumbai
|
#4
|
|
2011-08-02
, 03:12
|
|
Posts: 1,187 |
Thanked: 816 times |
Joined on Apr 2010
@ Australia
|
#5
|
|
2011-08-02
, 09:29
|
Posts: 115 |
Thanked: 342 times |
Joined on Dec 2010
|
#6
|
The Following 10 Users Say Thank You to NIN101 For This Useful Post: | ||
|
2011-08-03
, 00:48
|
Posts: 298 |
Thanked: 197 times |
Joined on Dec 2009
@ Norway
|
#7
|
|
2011-08-03
, 12:26
|
Posts: 842 |
Thanked: 1,197 times |
Joined on May 2010
|
#9
|
Once RescueOS can charge the battery, I think more people will find a usecase for it.
#/bin/bash # Reset #echo -n Reset... #i2cset -y -m 0x80 2 0x6b 0x04 80 #echo -n Done. Sleep 1... #sleep 1 #echo -n Done. #echo "Charger: " $(cat /sys/devices/platform/musb_hdrc/charger) # Disable charger for configuration: i2cset -y 2 0x6b 0x01 0xcc # No limit, 3.4V weak threshold, enable term, charger disable # Register 0x04 # 8: reset # 4: 27.2mV # charge current # 2: 13.6mV # 1: 6.8mV # 8: N/A # 4: 13.6mV # termination current # 2: 6.8mV # 1: 3.4mV # 7-1250 6-1150 5-1050 4-950 3-850 2-750 1-650 0-550 # 7-400 6-350 5-300 4-250 3-200 2-150 1-100 0-50 i2cset -y -m 0xFF 2 0x6b 0x04 0x50; # Register 0x02 # 8: .640 V # 4: .320 V # 2: .160 V # 1: .080 # 8: .040 # 4: .020 (+ 3.5) # 2: otg pin active at high (default 1) # 1: enable otg pin i2cset -y -m 0xfc 2 0x6b 0x02 0x8c; # 4.2 = 3.5 + .640 + .040 + .02 = 8c # 4.16 = 3.5 + .640V + .020 = 84 # 4.1 = 3.5 + .320 + .160 + .08 + .04 = 78 # 4.0 = 3.5 + .320 + .160 + .02 = 64 # 3.9 = 3.5 + .320 + .080 = 50 # Register 0x1 # 8: 00 = 100, 01 = 500, 10 = 800mA # 4: 11 = no limit # 2: 200mV weak threshold default 1 # 1: 100mV weak treshold defsult 1 (3.4 - 3.7) # 8: enable termination # 4: charger disable # 2: high imp mode # 1: boost i2cset -y 2 0x6b 0x01 0xc8; # Register 0x00 # 8: Read: OTG Pin Status # Write: Timer Reset # 4: Enable Stat Pin # 2: Stat : 00 Ready 01 In Progress # 1: : 10 Done 11 Fault # 8: Boost Mode # 4: Fault: 000 Normal 001 VBUS OVP 010 Sleep Mode # 2: 011 Poor input or Vbus < UVLO # 1: 100 Battery OVP 101 Thermal Shutdown # 110 Timer Fault 111 NA i2cset -y 2 0x6b 0x00 0x00; #echo -n "Charge parameters programmed. Sleep 1..." sleep 1 #echo "Status: " $(i2cget -y 2 0x6b 0x00) i2cset -y 2 0x6b 0x00 0x80 # timer reset cat /sys/devices/platform/musb_hdrc/charger >/dev/null # Initialize variables THROTTLE=0 FULL=0 MODE="STANDBY" WALLCHARGER=0 # Assuming a nice round number 20mOhm for bq27200 sense resistor RS=20 get_nac () { NAC=$(i2cget -y 2 0x55 0x0c w) NAC=$(($NAC * 3570 / $RS / 1000)) } get_rsoc () { RSOC=$(i2cget -y 2 0x55 0x0b) RSOC=$((RSOC)) } get_volt () { VOLT=$(i2cget -y 2 0x55 0x08 w) VOLT=$(($VOLT)) } STATUS=$(i2cget -y 2 0x6b 0x00) while true ; do sleep 15; STATUS=$(i2cget -y 2 0x6b 0x00) #echo $STATUS i2cset -y -m 0x80 2 0x6b 0x00 0x80; # timer reset get_nac get_rsoc get_volt if [ $MODE == "STANDBY" ] ; then if [ $STATUS == 0x10 ] || [ $STATUS == 0x90 ] ; then MODE="CHARGING" #echo $(date) "standby -> CHARGING. Current available capacity: " $NAC "mAh" >> /home/user/MyDocs/charger.log echo 60 > /sys/class/backlight/acx565akm/brightness WALLCHARGER=$(cat /sys/devices/platform/musb_hdrc/charger) fi fi if [ $MODE == "CHARGING" ] ; then if [ $STATUS == 0x00 ] ; then MODE="STANDBY" echo 15 > /sys/class/backlight/acx565akm/brightness #echo $(date) "charging -> STANDBY. Current available capacity: " $NAC "mAh" >> /home/user/MyDocs/charger.log WALLCHARGER=0 # This will stop USB from eating power as long as you haven't plugged it into a PC echo 0 > /sys/devices/platform/musb_hdrc/connect fi fi if [ $STATUS == 0xa0 ] && [ $FULL == 0 ] ; then #echo "Charge done" #echo $(date) "FULL: " $NAC "mAh" >> /home/user/MyDocs/charger.log FULL=1 fi if [ $STATUS == 0x00 ] && [ $FULL == 1 ] ; then FULL=0 fi echo Status: $STATUS Mode: $MODE Full: $FULL WallCharger: $WALLCHARGER Battery Voltage: $VOLT NAC: $NAC Battery level: $RSOC % done
|
2011-08-12
, 12:35
|
Posts: 201 |
Thanked: 57 times |
Joined on May 2010
|
#10
|
Please keep in mind that this is a testing release which might mean that something won't work. It comes with absolutely no warranty! Usage at own risk
To use it, you need to be familiar with the linux console.
Version 1.3:
Download: here mirror
This project should not be confused with the meego rescue initrd.
Thanks to: The meego project(mainly for the kernel), #maemo on freenode and everyone who's work I have used here :-).
Last edited by NIN101; 2016-11-04 at 22:24. Reason: Information