|
#1
|
|||
|
|||
|
A rescue initrd for the N900. It can mount the maemo rootfs, can access the EMMC, has mass-storage support, USB networking cababilities and WiFi support. It can also charge the battery (which it currently doesn't automatically, please refer to the documentaiton for that).
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 |
|
#2
|
|||
|
|||
|
oh man ,this is gonna get everyone crazy ,its awesome.. man !! great work .
|
|
#3
|
|||
|
|||
|
Yep sounds good to me keep up the great work, sounds like this is going to be something everyone needs at some point or other, great work !!!.
|
|
#4
|
||||
|
||||
|
still i didnt get what actually it does ?
__________________
Knowledge is knowing a tomato is a fruit; Wisdom is not putting it in a fruit salad
|
|
#5
|
||||
|
||||
|
I'm a little puzzled by this as well. BackupMenu also has these features (USB mount etc).
But! Any new OS is great! Time to download and prod and probe...
__________________
The thanks button? Sure! You can press it! I would!
|
|
#6
|
|||
|
|||
|
BackupMenu is good. In fact, in many cases, stuff invoked from /sbin/preinit(for example, a shell, or BackupMenu), is sufficient to fix messed up things. Under normal circumstances, you won't need a rescue os. But:
-BackupMenu has to be already installed before you break your things. It can not help you afterwards, if you didn't have backups(you should :-) ). -It can not help you(say by providing a shell) in some worst case scenarios (say a borked busybox, broken libc, syntax errors in /sbin/preinit prior to backupmenu.sh execution), simply because it is not designed for that and couldn't do it by design. Flashing would be required anyway. So, RescueOS and BackupMenu are two different things which can hardly be compared. RescueOS has been created for one simple reason: There wasn't imho a non-PITA solution known to me out there to mount your rootfs and access the EMMC partitions with a broken maemo system. Once RescueOS can charge the battery, I think more people will find a usecase for it. |
| The Following 10 Users Say Thank You to NIN101 For This Useful Post: | ||
|
#7
|
|||
|
|||
|
Sweet!
![]() I love recovery terminals like these. It would be nice to have this as a simple recovery solution. Which text editors does it have? I do hope it has nano? Because vi just wouldn't work without an Escape button. But there is a small fact that not many know about. If you have NITDroid, you basically have a recovery solution. At least in UMay, you find a terminal app in the Dev Tools app. And root privilieges are simple to acquire. From there, you actually find all Maemo partitions mounted in /mnt/... And that's it. Last edited by Nokia 5700; 2011-08-03 at 00:51. |
|
#8
|
|||
|
|||
|
"maemo code cracking" as per your list of features...
this is going to be good,,looking forward to the final version.. |
| The Following User Says Thank You to GSMobserver For This Useful Post: | ||
|
#9
|
|||
|
|
|||
|
Quote:
Code:
#/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
Seems like it'd make things simpler
__________________
My projects: BackupMenu - OS Backup & restore | Video: Flashing your n900(LiveCD) My devices: N770 + 8GB SD card soldered internally, N900 with 8GB SD card + Custom OC(125-950 typically). OC freqs: 0:22,90 125:22,90 250:28,180 500:30,360 550:32,400 600:34,430 700:39,430 750:41,430 805:45,430 850:47,500 900:50,500 950:54,500 1000:58,500 1100:67,520 1150:71,520 |
|
#10
|
|||
|
|||
|
Wow this looks perfect for exactly what I'm dealing with right now. I need to get my broken screen n900 into mass storage mode. However, your solution seems a complicated. Any chance someone can guide me through the steps needed to get my phone into mass storage mode using your rescue OS?
|
![]() |
|
|