Go Back   maemo.org - Talk > OS / Platform > Alternatives
 
Register FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
  #1  
Old 2011-07-31, 15:08
NIN101 NIN101 is offline
 
Join Date: Dec 2010
Posts: 115
Thanks!: 34
Thanked 342 Times in 63 Posts
Default N900 rescue OS - testing release

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
Reply With Quote
The Following 99 Users Say Thank You to NIN101 For This Useful Post:
AapoRantalainen, aathava, abill_uk, ade, ahmadamaj, Alfred, amin007110, arora.rohan, Bahador, behrooz, bingomion, c4rl05, Captwheeto, cHeXs7eR, conred, Copernicus, corduroysack, cproc, DA5, debernardis, Dongle Fongle, don_falcone, dzano, eddieselamp, ejasmudar, elyout, enne30, ersanpermana, Estel, evujumenuk, Fabry, fw190, glabifrons, gregoranderson, Halftux, Helmuth, hirabayashitaro, Hurrian, iHaveNoNames, isfr21, ivyking, joerg_rw, JorgeFX, jpala16, juiceme, krutznikov, Lemonadium, Macros, Magik, Maj3stic, Marshall Banana, MartinK, Megaltariak, melisa queen, Mentalist Traceur, MFaroTusino, michaelxy, moepda, mosiomm, mrsellout, mr_jrt, mr_pingu, n0idea, N900L, Netweaver, nicolai, nkirk, Oboroten, onil, p24, panjgoori, Pantokrator, peterleinchen, pichlo, prankster, PUNK, reinob, saponga, scy, sethkha, shanttu, sicelo, Sin, sinaisix, Skaven2k2, Skry, Sohil876, Sourav.dubey, SSLMM, techno2001, Tempura San, thomasjfox, unknown.obvious, viktor80, Wikiwide, wnt, wumpwoast, Zaerc, zoner
  #2  
Old 2011-07-31, 15:15
prankster prankster is offline
Banned
 
Join Date: Apr 2011
Location: originally pakistan ,now in china
Posts: 695
Thanks!: 653
Thanked 308 Times in 118 Posts
Default Re: N900 rescue OS - testing release

oh man ,this is gonna get everyone crazy ,its awesome.. man !! great work .
Reply With Quote
  #3  
Old 2011-07-31, 15:21
abill_uk abill_uk is offline
Banned
 
Join Date: Feb 2010
Posts: 3,412
Thanks!: 1,862
Thanked 1,043 Times in 730 Posts
Default Re: N900 rescue OS - testing release

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 !!!.
Reply With Quote
  #4  
Old 2011-07-31, 19:53
cutehunk04's Avatar
cutehunk04 cutehunk04 is offline
 
Join Date: Jun 2010
Location: India, Mumbai
Posts: 472
Thanks!: 181
Thanked 195 Times in 111 Posts
Default Re: N900 rescue OS - testing release

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
Reply With Quote
  #5  
Old 2011-08-02, 03:12
kingoddball's Avatar
kingoddball kingoddball is offline
 
Join Date: Apr 2010
Location: Australia
Posts: 1,187
Thanks!: 809
Thanked 816 Times in 321 Posts
Default Re: N900 rescue OS - testing release

Quote:
Originally Posted by cutehunk04 View Post
still i didnt get what actually it does ?
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!
Reply With Quote
  #6  
Old 2011-08-02, 09:29
NIN101 NIN101 is offline
 
Join Date: Dec 2010
Posts: 115
Thanks!: 34
Thanked 342 Times in 63 Posts
Default Re: N900 rescue OS - testing release

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.
Reply With Quote
The Following 10 Users Say Thank You to NIN101 For This Useful Post:
  #7  
Old 2011-08-03, 00:48
Nokia 5700 Nokia 5700 is offline
 
Join Date: Dec 2009
Location: Norway
Posts: 298
Thanks!: 22
Thanked 197 Times in 91 Posts
Default Re: N900 rescue OS - testing release

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.
Reply With Quote
The Following 2 Users Say Thank You to Nokia 5700 For This Useful Post:
  #8  
Old 2011-08-03, 04:35
GSMobserver GSMobserver is offline
 
Join Date: Sep 2010
Posts: 4
Thanks!: 4
Thanked 3 Times in 3 Posts
Default Re: N900 rescue OS - testing release

"maemo code cracking" as per your list of features...


this is going to be good,,looking forward to the final version..
Reply With Quote
The Following User Says Thank You to GSMobserver For This Useful Post:
  #9  
Old 2011-08-03, 12:26
RobbieThe1st RobbieThe1st is offline
 
Join Date: May 2010
Posts: 842
Thanks!: 347
Thanked 1,196 Times in 381 Posts
Send a message via ICQ to RobbieThe1st Send a message via MSN to RobbieThe1st Send a message via Yahoo to RobbieThe1st
Default Re: N900 rescue OS - testing release

Quote:
Originally Posted by NIN101 View Post
Once RescueOS can charge the battery, I think more people will find a usecase for it.
If you can find an i2cget/i2cset binary(or copy/compile Pali's one), charging the battery should be simple. Here's the script I've been using with Backupmenu:
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
One other thing: On your page you're talking about needing to copy over the wifi modules. Why not make it attempt to auto-copy those modules(and load them) on the first boot?
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
Reply With Quote
The Following 15 Users Say Thank You to RobbieThe1st For This Useful Post:
  #10  
Old 2011-08-12, 12:35
isfr21 isfr21 is offline
 
Join Date: May 2010
Posts: 201
Thanks!: 97
Thanked 57 Times in 44 Posts
Default Re: N900 rescue OS - testing release

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?
Reply With Quote
The Following 2 Users Say Thank You to isfr21 For This Useful Post:
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 19:01.