FORUMS
Remove All Ads from XDA

Ubuntu Touch 13.10 Saucy on the HP Touchpad DUAL BOOT ANDROID

342 posts
Thanks Meter: 436
 
Post Reply Email Thread
Ubuntu Touch 13.10 SAUCY Rom Triple Boot WebOS, Android, Ubuntu Touch (Or Quad if you need to)
09-27-2013 is the RootFS Date with apt-get dist-upgrade to 9-29-2013

Download Links Updated 09-29-2013 5:44 am central time
http://gdurl.com/d6Qn cm-10.1-20130929-UNOFFICIAL-tenderloin.zip (Install First Kernel\Ramdisk\System Partition)
http://gdurl.com/EnW8 saucy-preinstalled-touch-armhf.zip (Install Last Ubuntu Touch RootFS\Data Partition)

PARTITION CREATOR AND UNINSTALLER (From ACMEInstaller3 and ACMEUninstaller) Thanks Green!
http://www.gdriveurl.com/?idl=813809797536&out=2 UbuntuTouch_Partition_Creator
http://www.gdriveurl.com/?idl=613809797926&out=2 UbuntuTouch_UbuntuDesktop_Partition_Creator
http://www.gdriveurl.com/?idl=513809798298&out=2 UbuntuTouch_Uninstaller
http://www.gdriveurl.com/?idl=413809798725&out=2 UbuntuTouch_UbuntuDesktop_Uninstaller



HOW TO INSTALL!
You will need a little over 2 GB of space on your sdcard to devote to the new LVM Partiitons! This assumes you HAVE installed CyanogenMod (Android), ClockworkMod Recovery, MoBoot and still have WebOS. WebOS is a prerequisite for Audio. ALSO, you need novaterm. http://www.webos-internals.org/wiki/...Using_Novaterm AND it's good to have adb as well.

NOTE! If you have Ubuntu 11.04 - 13.XX Desktop Version
The Ubuntu Desktop LVM needs to be Uninstalled and Recreated. I have provided uImage files and Novacom to do this, or you can change the /etc/fstab file to have the correct device mapper paritition number.

Dealing with a small boot partition! It cannot hold all the uImages for WebOS, Android, Ubuntu Desktop, Ubuntu Touch, andClockworkMod at the same time. What I usually do is move the Ubuntu Touch kernel off of /boot to /sdcard (/media/internal in webos) before installing Ubuntu Touch, then move ClockworkMod to the /sdcard after installing Ubuntu Touch, and of course move the Ubuntu Desktop uImage file back to the /boot partition for Quad-Booting. You should only do this, if you know what you are doing, as having ClockworkMod on boot is handy. Know what you are doing or don't do it. (Which is why I should probably stay away from rom building!, haha) https://github.com/jshafer817/Ubuntu...data/etc/fstab

*IF YOU HAVE ALREADY INSTALLED THE ROM THAT WAS NOT DUAL-BOOT CAPABLE, YOU SHOULD REINSTALL ANDROID FIRST SINCE WE WIPED IT OUT


*Since we are dual-booting, we need to create 3 LVM Partitions that will use 2 GB of space from the sdcard*
1. Copy the RootFS.zip and the cm-10.zip file to the sdcard
2. Reboot into WebOS Recovery
3. novacom boot mem:// < UbuntuTouch_Partition_Creator
OR
novacom boot mem:// < UbuntuTouch_UbuntuDesktop_Partition_Creator (Requires 6.2 GB of Space, for Ubuntu Desktop 11.XX - 13.XX)
4. Reboot into ClockWorkMod to install the cm-10-*.zip FIRST and the RootFS zip LAST
5. Reboot and chose uImage.UbuntuTouch

Wait 3 minutes, while the touchpad boots. At some point adb will start to run. Eventually you should see a Unity Session..

If you didn't see a session!
a) reboot!
b) Eventually the backlight on the screen will shut off.. Touch the screen or hit the power button or home button some builds to turn the screen on. Still no session? Can you run android-chroot when you get into adb? When you login to adb it should say root@phablet and not BusyBox? You can also run /system/bin/logcat. Hold down the power button for 2 or 3 seconds and Ubuntu Touch will shutdown.


TO FORMAT UBUNTU TOUCH LVM PARTITIONS (in case your wondering create-partition.sh does this.. but what if you want to format after you install to do a reinstall??
novaterm into webos!
mkfs.ext4 /dev/store/ut-data
mkfs.ext3 /dev/store/ut-system
mkfs.ext3 /dev/store/ut-cache

TO REMOVE UBUNTU TOUCH LVM's AND KERNEL
novacom boot mem:// < UbuntuTouch_Uninstall

TO REMOVE UBUNTU TOUCH AND UBUNTU DESKTOP LVM's AND KERNEL
novacom boot mem:// < UbuntuTouch_UbuntuDesktop_Uninstall



Having problems installing WebOS Applications????

https://developer.palm.com/support/applicationupdate WebOS UpdateManager Certificate Fix
http://forum.xda-developers.com/show...php?p=42317438
There is an update to WebOS.. If you wipe your device after July 23rd 2013.. Then you must do this.


Ubuntu Touch Notes!

NOTE! If you have Ubuntu 11.04-13.10 NON-TOUCH installed, you will need to:
novacom boot mem:// < UbuntuTouch_UbuntuDesktop_Uninstall


*Built from Milaq's CM 10.1 Source WITHOUT JCSullins Bluetooth fixes

*Bluetooth and Sound come from the Ubuntu 11.04-13.10 Non touch. Mainly the upstart and executables. WebOS does get mounted for sound to get initialized. udev and pulse were patched.

*First Ubuntu Touch device running Saucy (Flipped Image) but with LVM Partitions. For this to work I had to compile lvm and e2label statically and use them in the ramdisk for Ubuntu.

How Saucy Works!?
Kernel is loaded with an Ubuntu Touch Ramdisk (Like normal Linux). Then the data partition is mounted as root, the system partition is mounted as /system. The LXC containter loads android based off of /system, then Ubuntu Touch Session loads. This is not a chroot like quantal.


What works:
*Camera
*Wifi
*Bluetooth
*Sound
*Accelerometer


Bugs and Beta\Alpha Stuff:
1. PulseAudio\GStreamer\Music App is not tied to the Media Service, so the music does not play with the screen turned off. GStreamer keeps playing, but you cannot hear sound unless powerd has turned the screen on and.. ??? Not worth changing until Ubuntu Touch becomes more.. finalized. Sometimes the music does not come back on after a long sleep?
Workarounds:
sudo service powerd stop (with the backlight turned on)

2. Bluetooth only works in terminal
a) this is because Bluetooth Settings has not been written to Ubuntu Touch

3. Camera App only works one time. Needs to be mirrored.. Again. Long story!

4. Brightness or Backlight settings???
as root!
echo "0-255" > /sys/class/leds/lcd-backlight/brightness

to set the screen brightness. 0-255 is a range of values you should use.
0 will turn off the backlight
255 is full birghtness
and of course.. service powerd stop while the screen is on will stop powerd from turning off the backlight if idle.


5. Touchscreen finger liftoff does not always get detected at boot correctly. Need to talk to ubunu-devel about that.? CM-TEAM?? Hmm.. Reboot and try again!

6. Browser cannot download files. Browser cannot play videos because the latest gstreamer "has not landed yet"..

7. 720P H.264 is choppy? 480p plays fine.. Waiting for more updates.

APPARMOR NOTE: Since 2.6.35 Kernel does not have apparmor, we are using /usr/bin/aa-strip with crontab to run every minute. So if you install a click app and cannot run it, wait a minute! sed -i "s/aa-exec.*-- //g" /home/phablet/.local/share/applications/*.desktop

OPEN-SSH NOTES:
Recently they did something to openssh. Do this to install.
apt-get install --reinstall openssh-server
service ssh start (every boot?)
If powerd turns off the backlight, it suspends your ssh session. There is some code in the wifi modules that I believe is causing it. Work on that later.. or disable powerd and turn the lights off to save battery power or backlight by reading brightness notes above.


MTP-SERVER NOTE
mtp-server has been disabled.. want to enable it? As root!
cd /etc/init
mv ../mtp* .
cd /usr/share/upstart/sessions
mv ../mpt* .
reboot

When you do, don't expect adb to work... In Ubuntu 13.10 Desktop, you see the /home/phablet get Mounted on the filesystem via mtp.. I haven't messed with the Windows Driver.. I messed with the google one and changed the pid and vid, and.. no device was found when I ran adb.. so.. perhaps mtp shuts down adb on the touchpad.. I think that was in the upstart file though.. mtp-server-bootup.conf, etc.



MORE USEFUL NOTES

How to copy files with novaterm?
cat filename | novaterm put file:///put/full/destination/path/filename (push example) tested
novaterm get file:///full/destination/path/filename (pull example) untested
novaterm get file:///full/destination/path/filename > filename (pull example) untested

How do I compile uimage-extract to extract a kernel.img and ramdisk.img from a uImage file (boot.img)?
git clone https://github.com/jcsullins/moboot
cd moboot/tools
gcc -o uimage-extract uimage-extract.c -lz

How do I extract the kernel image and initramfs from a uImage file?
./uimage-extract uImage.filename (from inside moboot tools folder)

How to unpack and repack gzip ramdisk images?
mkdir newramdisk
cd newramdisk
gunzip -c ../your-ramdisk-file | cpio -i
make changes, next command is to pack a new ramdisk.img
find . | cpio -o -H newc | gzip > ../newramdisk.img

How to unpack and repack lzma ramdisk images? (I used lzma)
mkdir newramdisk
cd newramdisk
lzma -dc ../newramdisk.img | cpio -i
make changes, next command is to pack a new ramdisk.img
find . | cpio -o -H newc | lzma > ../your-ramdisk-file

How to create a moboot compatible kernel?
mkimage -A arm -O linux -T kernel -C none -a 0x40208000 -e 0x40208000 -n "Kernel" -d kernel.img uImage
mkimage -A arm -O linux -T ramdisk -C none -a 0x60000000 -e 0x60000000 -n "Image" -d ramdisk.img uRamdisk
mkimage -A arm -O linux -T multi -a 0x40208000 -e 0x40208000 -C none -n "multi image" -d uImage:uRamdisk uImage.CyanogenMod.new

How to connect to an open-wifi network without Unity as root?
adb shell
sudo su
service network-manager stop
iwconfig wlan0 essid "essid-you-want-to-connect-to"
ifconfig wlan0 192.168.X.X netmask 255.255.255.0 up
route add default gw 192.168.X.X
sed -i '$ a nameserver 8.8.8.8' /etc/resolv.conf
you should be on the net.

How can I create my own saucy-preinstalled-touch-arm.tar.gz to go into the .zip? (from a runnng device)
adb shell
cd /data/ubuntu
sudo tar --preserve-permissions -zcvf /sdcard/saucy-preinstalled-touch-armhf.tar.gz *
exit
adb pull /sdcard/saucy-preinstalled-touch-armhf.tar.gz .
now put that file in the .zip.

How do I untar the saucy-preinstalled-touch-armhf.tar.gz file?

place saucy-preinstalled-touch-armhf.tar.gz in the folder you want to be in, and go to that folder in terminal
mkdir rootfs
cd rootfs
sudo tar --preserve-permissions -zxvf ../saucy-preinstalled-touch-armhf.tar.gz
sudo make your changes as root, be mindful of permissions.

How do I swap my kernels to quad-boot? (With webOS)
a)Before you install Ubuntu Touch, move a kernel from /boot to /media/internal
novaterm
mount -o remount,rw /boot
mv /boot/uImage.Ubuntu13 /media/internal (or uImage.Ubuntu)
mount -o remount,rw /boot
b) After you install Ubuntu Touch, move it back, but remove ClockworkMod (know what you are doing are don't do this)
novaterm
mount -o remount,rw /boot
mv /boot/uImage.ClockworkMod /media/internal
mv /media/internal/uImage.Ubuntu13 /boot
sync
mount -o remount,ro /boot

How can I run webOS Doctor after all this and just start all over factory clean?
http://forum.xda-developers.com/show....php?t=1564938 3rd post but I would skip the creation of /dev/store/cm-* partitions. Be sure to delete cm-data, cm-system, cm-cache, ut-data, ut-system, ut-cache, and ubuntu-store if you have it. Delete them all! Then recreate the lvm. If you need to recreate Android partitions do that with AcmeInstaller ie the usual way to install Android. You must start with WebOS 3.0.0 and then you can do 3.0.5. Be sure to say thanks on that post.



Thanks to:
Ogra (ubuntu-touch, huge thanks!), castrwilliam (ubuntu desktop rom), CalcProgrammer (ubuntu desktop rom), crimsonredmk (archlinux rom), Flemmard (cm team "resizing the boot partition would be stupid", yep), Mystikal57 (sound fixes in desktop that really helped get it going), JCSullins (moboot, cm team, all sorts of stuff), Dorregray (camera fixes I need to reimplement), w-flo (ubuntu-touch), drmarble (ubuntu-touch, cyanogenmod-touchpad, big thanks to him).. and others from the #ubuntu-touch irc channel and Ubuntu 11.04-13.10 threads, cyanogenmod team, etc... "I stand on the shoulders of giants"


Look at the old Ubuntu Touch thread I started around page 17 for more in depth notes on what I did.
OR
https://github.com/jshafer817/UbuntuTouch

I am NOT a developer!!!!
The Following 30 Users Say Thank You to jshafer817 For This Useful Post: [ View ] Gift jshafer817 Ad-Free
 
 
31st August 2013, 03:01 PM |#2  
Senior Member
Thanks Meter: 125
 
Donate to Me
More
Wow this is exciting news for my little tablet... Been messing around with 13.04f so this will be a blast.

Sent from my Galaxy Nexus using Tapatalk 2
The Following 2 Users Say Thank You to kicker22004 For This Useful Post: [ View ] Gift kicker22004 Ad-Free
31st August 2013, 04:00 PM |#3  
blmvxer's Avatar
Senior Member
Thanks Meter: 616
 
Donate to Me
More
Once you release your build I'll try to iron out some of the bugs.

Sent from my LG-LS970 using xda app-developers app
The Following 2 Users Say Thank You to blmvxer For This Useful Post: [ View ] Gift blmvxer Ad-Free
31st August 2013, 05:26 PM |#4  
OP Senior Member
NRH, TX.
Thanks Meter: 436
 
More
Quote:
Originally Posted by blmvxer

Once you release your build I'll try to iron out some of the bugs.

Sent from my LG-LS970 using xda app-developers app

Thanks! I am going to work on the camera being mirrored and flipped for the next 3 hours or so.. after that.. oh well! =)

Just be sure to post your fixes.
The Following User Says Thank You to jshafer817 For This Useful Post: [ View ] Gift jshafer817 Ad-Free
31st August 2013, 05:28 PM |#5  
blmvxer's Avatar
Senior Member
Thanks Meter: 616
 
Donate to Me
More
Will do! good luck!! Can't wait to boot this up and get to work!

Sent from my LG-LS970 using xda app-developers app
The Following User Says Thank You to blmvxer For This Useful Post: [ View ] Gift blmvxer Ad-Free
1st September 2013, 03:28 AM |#6  
Senior Member
Thanks Meter: 125
 
Donate to Me
More
Any update on the camera bug... Get that baby squashed yet

Sent from my Galaxy Nexus using Tapatalk 2
The Following User Says Thank You to kicker22004 For This Useful Post: [ View ] Gift kicker22004 Ad-Free
1st September 2013, 07:26 AM |#7  
OP Senior Member
NRH, TX.
Thanks Meter: 436
 
More
Quote:
Originally Posted by kicker22004

Any update on the camera bug... Get that baby squashed yet

Sent from my Galaxy Nexus using Tapatalk 2

Honestly.. a little bit.. Spent all day trying to figure out what file makes the change.. as this has to be done in cm10.1 not ubuntu.
camera.msm8660.so

About 1 try left before giving up.. In the meantime I created a github... Will be very soon. Before I go to sleep again.. Brewing Coffee..

Took a 5 hour nap today though! Sweet!

I found a line for CameraHAL.cpp and I swapped 3/2 to 2/3 and got an ugly green screen. I am trying to swap previewWidth and Height now.. If nothing happens.. I give up and will start to package. FAILED.

The last try will be just telling it to be a front facing camea, as that would explain the mirror, flipping??? New Idea sounds better!

if (read_mode_from_config("preview_mode") == 1) {
info->facing = CAMERA_FACING_BACK;
}

to (remove the if)
info->facing = CAMERA_FACING_BACK; OR?
info->facing = CAMERA_FACING_FRONT;?

Testing both then packaging. dmesg seems to say we are using preview mode 2 so maybe add the 2?

First try:
info->facing = CAMERA_FACING_FRONT; if no change occurs in image (NO CHANG OCCURED), then perhaps Ubuntu Touch thinks the camera IS front facing.. so the next try will be facing back hard coded.. look for a change, if it does.. try adding the 2 with the if statement. Or just keep it this way... as a change would be GREAT.

from dmesg:
msm_camio_set_perf_lvl: S_PREVIEW rc = 0
VFE opertaion mode = 0x2, output mode = 0x5

http://developer.android.com/referen...re/Camera.html !
The Following User Says Thank You to jshafer817 For This Useful Post: [ View ] Gift jshafer817 Ad-Free
1st September 2013, 10:56 AM |#8  
OP Senior Member
NRH, TX.
Thanks Meter: 436
 
More
android::HAL_getCameraInfo(camera_id, &cameraInfo);
info->facing = cameraInfo.facing;
info->orientation = cameraInfo.orientation;
info->facing = CAMERA_FACING_BACK;
info->orientation = 90;

vs
info->orientation = 180;

Going to try this now.. as the camera WAS being a front camera. Image is no longer mirrored incorrectly. Now we just have to find the right orientation.

The Following User Says Thank You to jshafer817 For This Useful Post: [ View ] Gift jshafer817 Ad-Free
1st September 2013, 12:28 PM |#9  
Senior Member
Thanks Meter: 125
 
Donate to Me
More
Nice work. Power naps are the best for figuring out problems

Sent from my Galaxy Nexus using Tapatalk 2
2nd September 2013, 01:04 PM |#10  
OP Senior Member
NRH, TX.
Thanks Meter: 436
 
More
Alright.... will be releasing today...

Got the rotation better with... compass\accel.. not the camera...

Going to try a couple more things....
The Following 2 Users Say Thank You to jshafer817 For This Useful Post: [ View ] Gift jshafer817 Ad-Free
2nd September 2013, 01:35 PM |#11  
blmvxer's Avatar
Senior Member
Thanks Meter: 616
 
Donate to Me
More
Quote:
Originally Posted by jshafer817

Alright.... will be releasing today...

Got the rotation better with... compass\accel.. not the camera...

Going to try a couple more things....

I'm ready!!!!

Sent from my LG-LS970 using xda app-developers app
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes