http://wiki.webos-internals.org/api.php?action=feedcontributions&user=Andrew&feedformat=atomWebOS Internals - User contributions [en]2024-03-28T20:08:32ZUser contributionsMediaWiki 1.35.1http://wiki.webos-internals.org/index.php?title=Memboot&diff=19569Memboot2011-10-18T23:22:35Z<p>Andrew: generalize "pre" to "webOS device" in a few places; add list of uImage names for some webOS versions</p>
<hr />
<div>= Memboot =<br />
<br />
Memboot is an option to boot webOS devices using a kernel supplied via usb and novacom, its quite useful as a second-last-option before doctoring, to remove a custom kernel which doesnt boot.<br />
<br />
Stuff you'll need:<br />
<br />
* Up-to-date SDK (especially novacom & novacomd)<br />
* Up-to-date WebOS Doctor Image<br />
* A little bit of knowledge and understanding of the next steps... But when you play with custom kernels, you should have that, right?<br />
<br />
From the WebOS Doctor Image you'll need to extract the (original) kernel, that has been installed on the device:<br />
<br />
* open the .jar file (rename it to .zip is a hint, if you don't know how to access the contents)<br />
* inside, there is an archive /resources/webOS.tar - open/extract that one, too<br />
* inside webOS.tar, there is an archive nova-cust-image-rootfs.tar.gz - open/extract that one<br />
* inside the rootfs, in /boot there'll be the uImage you're searching for. See below for some examples of uImages for various webOS versions.<br />
* Copy the uImage to the novacom folder on your computer:<br />
**for '''Windows''': program files\palm\sdk\bin <br />
**for '''Linux''': /opt/Palm/novacom/ <br />
<br />
Memboot is a feature of [[bootie]], the bootloader installed on the device. To get into bootie mode you must:<br />
<br />
* power off the phone<br />
* put in a USB cable connected to your computer<br />
* hold the volume up key, while powering on the device<br />
<br />
Now you should have that big usb-resembling logo on the screen:<br />
<br />
*Start the memboot using the following command:<br />
**On '''Linux''': (after opening a shell)<br />
/opt/Palm/novacom/novacom boot mem:// < uImage-2.6.24-palm-joplin-3430<br />
**On '''Windows''' : (after running cmd.exe)<br />
cd \program files\palm\sdk\bin<br />
novacom boot mem:// < uImage-2.6.24-palm-joplin-3430<br />
<br />
(specify the name of YOUR kernel, of course)<br />
<br />
More Information:<br />
*Membooting Pre To Recover From Faulty/beta Kernels: http://www.rimweb.in/forums/topic/26437-membooting-pre-to-recover-from-faultybeta-kernels/<br />
*This will work with 2.1.0 as well -- the kernel has the same name but is a larger size. Make sure to use the correct version of the kernel to match the version of webOS installed.<br />
<br />
uImage kernel names:<br />
* 1.4.5: uImage-2.6.24-palm-joplin-3430<br />
* 2.1.0 (Pre2): uImage-2.6.24-palm-joplin-3430<br />
* 2.1.2 (Veer): uImage-2.6.29-palm-shank<br />
* 2.2.x (Pre3): uImage-2.6.32.9-palm-rib<br />
* 3.0.x (TouchPad): uImage-2.6.35-palm-tenderloin</div>Andrewhttp://wiki.webos-internals.org/index.php?title=User:Andrew&diff=19567User:Andrew2011-10-18T23:08:21Z<p>Andrew: </p>
<hr />
<div>Andrew Rich<br/><br />
Email: andrew.rich@gmail.com<br/><br />
Web: http://www.project-insomnia.com/<br/><br />
Twitter: @smartwatermelon<br/><br />
--[[User:Andrew|Andrew]] 03:23, 15 August 2010 (UTC)</div>Andrewhttp://wiki.webos-internals.org/index.php?title=User:Andrew&diff=10826User:Andrew2010-08-15T03:23:36Z<p>Andrew: New page: Andrew Rich<br/> Email: andrew.rich@project-insomnia.com<br/> Web: http://www.project-insomnia.com/<br/> Twitter: @smartwatermelon<br/> --~~~~</p>
<hr />
<div>Andrew Rich<br/><br />
Email: andrew.rich@project-insomnia.com<br/><br />
Web: http://www.project-insomnia.com/<br/><br />
Twitter: @smartwatermelon<br/><br />
--[[User:Andrew|Andrew]] 03:23, 15 August 2010 (UTC)</div>Andrewhttp://wiki.webos-internals.org/index.php?title=Talk:Avahi&diff=10825Talk:Avahi2010-08-15T03:21:31Z<p>Andrew: </p>
<hr />
<div><strike>After following the instructions in [[Avahi#Avahi_Installation]] and attempting to start Avahi, I get:<br />
<br />
<pre>andrew@castle:~$ sudo /opt/sbin/avahi-daemon -D<br />
Timeout reached while wating for return value<br />
Could not receive return value from daemon process.<br />
andrew@castle:~$ ps -ef | grep -i avahi <br />
andrew 2042 2003 0 18:19 pts/0 00:00:00 grep -i avahi</pre><br />
<br />
I did remove Avahi, reboot the Pre and try the process from scratch but the result is the same. Thoughts?</strike><br />
<br />
Many many months later, now on webOS 1.4.5 (Sprint), I followed the instructions and was able to connect as described. I also updated the instructions to reflect using an SSH key. --[[User:Andrew|Andrew]] 03:21, 15 August 2010 (UTC)<br />
<br />
--<br />
<br />
I can confirm the same errors as andrew's.<br />
: Same here. [[User:Crynyd|Crynyd]] 21:24, 30 September 2009 (UTC)</div>Andrewhttp://wiki.webos-internals.org/index.php?title=Avahi&diff=10824Avahi2010-08-15T03:19:10Z<p>Andrew: /* Connecting via SSH using mDNS */ change old "castle" to new "palm-webos-device" default hostname, add instruction to connect with OpenSSH key</p>
<hr />
<div>=Avahi=<br />
[http://avahi.org Avahi] is a Linux service for providing multicast-DNS/DNS-SD (also known as [http://en.wikipedia.org/wiki/Bonjour_%28software%29 Bonjour] or mDNS/DNS-SD). Avahi allows for simple service discovery and advertisement on a local network and provides name resolution for all hosts running a mDNS/DNS-SD service.<br />
<br />
Using Avahi allows for easy SSH access over a local wireless network. Once installed and started, users can ssh to their device using their mDNS assigned hostname.<br />
<br />
<br />
==Avahi Installation==<br />
<br />
First, mount the root filesystem as writable and install the Avahi ipkg.<br />
<br />
$> sudo mount -o remount,rw /<br />
$> sudo /opt/bin/ipkg-opt install avahi<br />
<br />
<br />
Avahi currently attempts to access a different dbus system socket than the one provided by the Pre's dbus, so we need to turn off dbus access for the time being. Edit <tt>/opt/etc/avahi/avahi-daemon.conf</tt> and make the following change:<br />
<br />
Replace this line:<br />
#enable-dbus=yes<br />
<br />
With this line:<br />
enable-dbus=no<br />
<br />
Avahi seems to want to run as a user named "avahi". To create the user, run the following command:<br />
<br />
$> adduser -h /opt/var/run/avahi avahi<br />
<br />
<br />
At this point, the Avahi daemon can be started with the following command:<br />
<br />
$> sudo /opt/sbin/avahi-daemon -D<br />
<br />
<br />
If you would like Avahi to start up at boot, create the following two files: <br />
<br />
<br />
'''/opt/etc/init.d/S60avahi'''<br />
#!/bin/sh<br />
<br />
[ -e /opt/etc/default/avahi ] && . /opt/etc/default/avahi<br />
<br />
if [ "$AVAHI_ENABLE" = "no" ]; then<br />
exit<br />
fi<br />
<br />
if [ -n "`pidof /opt/sbin/avahi-daemon`" ]; then <br />
killall /opt/sbin/avahi 2>/dev/null<br />
fi<br />
<br />
/opt/sbin/avahi-daemon -D<br />
<br />
<br />
'''/opt/etc/default/avahi'''<br />
AVAHI_ENABLE=yes<br />
<br />
Make sure you set the startup script to executable:<br />
<br />
$> sudo chmod 755 /opt/etc/init.d/S60avahi<br />
<br />
Alternatively, you can create an upstart script at '''/etc/event.d/avahi''':<br />
<br />
start on started PmConnectionManager <br />
<br />
console output <br />
<br />
exec /opt/sbin/avahi-daemon -D <br />
respawn <br />
<br />
NOTE: This script is not being stored in the /opt directory. You may have to replace it after an update, and it may cause problems with your Pre.<br />
<br />
==Connecting via SSH using mDNS==<br />
<br />
mDNS uses the system's hostname and appends it to the <tt>local.</tt> domain. Using the Pre's default <tt>palm-webos-device</tt> hostname, the following command would be used to SSH to your Pre on port 222:<br />
<br />
$> ssh -P 222 palm-webos-device.local.<br />
<br />
If you are using an OpenSSH key to connect:<br />
<br />
$> ssh -i /path/to/ssh/key palm-webos-device.local. <br />
<br />
'''Note: The system that you are connecting from MUST have a mDNS service also running, else the hostname will not resolve'''<br />
<br />
==Current Issues==<br />
<br />
* The ipkg binary of Avahi attempts to find the dbus socket at <tt>/opt/var/run/dbus/system_bus_socket</tt>, but the Pre's dbus socket is at <tt>/var/run/dbus/system_bus_socket</tt>. I haven't investigated tying these two together too much, but the expanded functionality of accessing mDNS via dbus is preferred.<br />
* The avahi-daemon seems to have issues keeping the mDNS name resolution running for more than a few minutes. I don't know if this is a power management issue or something else at this point.</div>Andrewhttp://wiki.webos-internals.org/index.php?title=Talk:Patch_WebOS_Bypassing_Lock_Screen&diff=6315Talk:Patch WebOS Bypassing Lock Screen2009-10-07T03:19:24Z<p>Andrew: /* New simpler version (call unlock function directly) */</p>
<hr />
<div>== New simpler version (call unlock function directly) ==<br />
<br />
-- I massively changed the article replacing all the listed steps with something a bit easier and more universal. The old version is in history, (I removed it from main article to avoid confusion) but if you think that the way previously described should be preserved in the article itself as well, it could be copied there. [[User:Destinal|Destinal]]<br />
<br />
--That is exactly what I was looking for, just couldn't find the right way to do it yet. Thanks! [[User:Roto|Roto]] 15:48, 30 September 2009 (UTC)<br />
<br />
-- Per [http://forums.precentral.net/1956081-post93.html this PreCentral post] could you possibly submit this patch to [http://gitorious.org/webos-internals/modifications/trees/master/screenlock Gitorious]? That way it can be added to Autopatch. Thanks! --[[User:Andrew|Andrew]] 03:19, 7 October 2009 (UTC)<br />
<br />
== Discussion of old version (hardcode pin / password) ==<br />
<br />
This will only work if you have Simple Pin requirement by EAS. Please post method for doing this if you have Password requirement. Thank you!<br />
<br />
-- Try putting your password in instead of the pin #'s [[User:Helfire|Helfire]]<br />
<br />
-- I've added some information to help get around the Password requirement. I'm still looking for a better solution, but this makes things a bit easier for now. [[User:Roto|Roto]] 04:45, 30 September 2009 (UTC)<br />
<br />
-Cannot find that line in the pin-assistant.js with the new 1.2 update. Suggestions?<br />
<br />
--I updated for 1.2 [[User:Helfire|Helfire]]</div>Andrewhttp://wiki.webos-internals.org/index.php?title=Talk:Avahi&diff=4096Talk:Avahi2009-08-09T01:22:40Z<p>Andrew: Can't get Avahi daemon started</p>
<hr />
<div>After following the instructions in [[Avahi#Avahi_Installation]] and attempting to start Avahi, I get:<br />
<br />
<pre>andrew@castle:~$ sudo /opt/sbin/avahi-daemon -D<br />
Timeout reached while wating for return value<br />
Could not receive return value from daemon process.<br />
andrew@castle:~$ ps -ef | grep -i avahi <br />
andrew 2042 2003 0 18:19 pts/0 00:00:00 grep -i avahi</pre><br />
<br />
I did remove Avahi, reboot the Pre and try the process from scratch but the result is the same. Thoughts?</div>Andrew