Ipython/Jupyter Notebook on Android - Nexus 7 (2013) General

Hello All
I was able to successefuly install Ipython(jupyter) on my nexus(2013) and wanted to share the procedure with all that could be interested.
You could learn and read about Ipython[Jupyter] here
CAUTION:
> To the best of my knowledge this is the first tutorial of it's kind.
> I strongly recomend that you try this on a fresh rom. Use MultiROM for instance
> This was tried on Nexus 7(2013) with android 4.4.4. But I see no reason why it shouldn't work on lolipop 5.0 or on another android tablet. [You could try at your own risk and report your findings]
> Allow minimum 4Gb free space. I used rougthly 2.2 Gb, but i installed more than just ipython
> Hackers Keyboard is VERY HANDY if not NECESSARY
> I apologize for typos and gramar mistakes in advance
> Some of the following steps take time (a long time). Just make sure your tablet is connected to the charge and chose to keep the screan ON while it's on charge
> I am UNLOCKED and ROOTED. I can't tell whether it is required. If it is it would have to be with the prerequired apps. YOU WANNA VERIFY THAT before anything
> MOST IMPORTANTLY, DO THIS AT YOUR OWN RISK. I'm NOT RESPONSIBLE for any INCONVENIANCE whatsoever.
Procedure:
1-: Install GNURoot WheezyX . I am more confortable with debian, tryFedora or Gentoo ... If you know what you are doing.
2- Install GNURoot
3- Open GNURoot
4- Chose wheezyx (or fedora or gentoo ... depending on the distro you like) in the "Select Rootfs to Create " drop-down menu.
5- Click on 'Create New Rootfs' button
6- Chose wheezyx(or fedora or gentoo ... depending on the distro you chose) in the "Select Rootfs to Launch " drop-down menu
7- Check 'Lauch as Facke Root' box. This will give us root privilege
8- Click on 'Lauch Rootfs' button
At this point you shoud have 'Terminal Emulator" open up a window with '[email protected]:/# ' and a prompt ready to take instrucktions
Welcome to linux !!!
Now we need to install "python" and "pip", but before that we need to install 'build-essentials' which will make 'gcc' and all tools required to build a package available on our linux platform:
In the following: if you chose wheezy distro it's the same procedure; if you chose fedora distro replace apt-get with yum; if you chose gentoo you are on your own because I'm not familiar with it
Anyways I assume no responsability anyhow whatsoever.
9 - At the prompt type 'apt-get update' and press Enter
10 - Type 'apt-get upgrade' and press Enter'
11 - Type 'apt-get install build-essential' and press Enter' : This will install "build essential"
12- - Type 'apt-get install python' and press Enter' : This will install "python". I got the version 2.7.3 . You could find the version you installed by typing "python -V" and pressing Enter
13 - Type 'apt-get install python-pip' and press Enter' : This will install "pip", the python package manger
At this point we have python setup in the linux environement. Let's finally install ipython:
14-a Type 'pip install ipython' and press Enter if all you want is the ipython interpreter
15-a Type 'pip install ipython --upgrade' and press Enter to make sure you got the latest version
or
14-b Type 'pip install ipython[all] ' and press Enter if you want ipython and all the goodies like notebook
15-b Type 'pip install ipython [all]--upgrade' and press Enter to make sure you got the latest version
I do scientific work with ipython, so if you are on the same boat as me you could install scientific packages numpy,sympy,pandas,nose,.... with:
"apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose" !!! This is a lot about 1.2Gb !!!
At this point everything is set up. "when the wine is drawn, we now just have to drink it"
16-a Type ' ipython ' and press Enter to run ipython interpreter
or
16-b Type ' ipython notebook' and press Enter to run ipython notwbook. If you get an error message say that ''no web browser could be found" ignore it. look for the server address (looks like http://localhost:8888)
17-b Enter that adress (http://localhost:8888 in my case) in Chrome (I had no problem with chrom so far, but you could try on your favorite web browser) press Enter. Et voila you should be in the ipython notebook tree
I have been here for a couple of years, and never got to share anything.
This is my first thread, and i hope it is the beging of a very long series of contributions
> I will upload screenshots later to better guide noobs (I was one onece)
> PM me if you like to donate. I would appreciate it
> Please support the GNURoot developpers, or ipython[Jupyter] developpers if you can. They are all doing a terrific work. (I'm in no way associated to them, but love and support their work)
> I'm not very good at making videos, but I welcome any initiative.
You now Know how to install ipython, I trus you could be very creative since you now got linux at your finger tip :laugh:

Help to use pandas + matplotlib: no $DISPLAY environment variable
First of all thank you for this pretty cool tutorial
i did it and everything else works after all that huge pip installation!
my problem is that i need to see the result of my codes which sometimes is to show me plots of my data using the library matplotlib.pyplot
when i do that i get the following error:
TclError: no display name and no $DISPLAY environment variable
i found someone with the same problem in another situation (not on android but something like trying to save the plots in a pdf) and the problem was solved doing the import like this:
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.show()
By using matplotlib.use('Agg'), python knows to use the non-interactive back-end Agg instead of trying to display to the screen
this means that i don't have anymore the error but the plot won't be shown either
this happens not only when i do python file.py from command line but also when i run the same codes on jupyter notebook
so is there a way to execute file.py so they do what ever pandas want to do in this android environment (especially pop up windows with my plots when I execute the files)?
if there is no way how do i get rid of android to install some better OS on my tablet that can do all this kind of stuff?
thank you but all of this that you have done it's really not that useful if i cant see my plots
let me know!

paolotamag said:
First of all thank you for this pretty cool tutorial
i did it and everything else works after all that huge pip installation!
my problem is that i need to see the result of my codes which sometimes is to show me plots of my data using the library matplotlib.pyplot
when i do that i get the following error:
TclError: no display name and no $DISPLAY environment variable
i found someone with the same problem in another situation (not on android but something like trying to save the plots in a pdf) and the problem was solved doing the import like this:
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.show()
By using matplotlib.use('Agg'), python knows to use the non-interactive back-end Agg instead of trying to display to the screen
this means that i don't have anymore the error but the plot won't be shown either
this happens not only when i do python file.py from command line but also when i run the same codes on jupyter notebook
so is there a way to execute file.py so they do what ever pandas want to do in this android environment (especially pop up windows with my plots when I execute the files)?
if there is no way how do i get rid of android to install some better OS on my tablet that can do all this kind of stuff?
thank you but all of this that you have done it's really not that useful if i cant see my plots
let me know!
Click to expand...
Click to collapse
You should know that the linux running GNURoot doesn't have an X-session. You kinda need x11 installed on it to be able to have windows popping up and showing your plots. I remember trying apt-get install x11 without success on "Wheesy". Now, I know there is the "wheesy X" distro of GNURoot, but I don't know whether the X stands for X-session capability; I suggest you try that. (I no longer have my nexus7 to try, but it would be nice to see what happens).
I was able to go around this problem by working on the notebook. I could see my plots fine. I remember firefox beeing the best browser to work on the notebook.

Plots at least on jupyter and transfer files
hey so i found this : (i dont have authorization to post links normally)
stackoverflow .com / questions / 18353203 / using-python-and-matplotlib-on-android
where someone is stating is a big deal to have plotlib working on android
jupyter notebook is not displaying plots not even on firefox, it always give the "TclError: no display name and no $DISPLAY environment variable". It would be awesome if you'd give me a straight solution so i can see plots on jupyter! that would be more than enough to follow lessons in class
the temporary solution i found for now is to remote control my pc at home from the tablet to do all the coding but i cannot work without connection this way
i also found out about this website Wakari but they are saying now there isn't anymore free space for new subscription..
the best solution would be to have plots displaying on jupyter with your help
so the plan for now is to stick to let the pc at home do all the work and remote control it with the samsung remote pc app or to find a good website to log in from the tablet and write codes on browser
ill still use this command line of yours when ever i can thou, when ever there is nothing to display i guess.. but how do I find the folders so i can move to the desktop computer the .py files or the notebook files i create? i was expecting to find the files when i was connecting the tablet with usb wire.. is there anyway to transfer those files?
thank you
izzox said:
You should know that the linux running GNURoot doesn't have an X-session. You kinda need x11 installed on it to be able to have windows popping up and showing your plots. I remember trying apt-get install x11 without success on "Wheesy". Now, I know there is the "wheesy X" distro of GNURoot, but I don't know whether the X stands for X-session capability; I suggest you try that. (I no longer have my nexus7 to try, but it would be nice to see what happens).
I was able to go around this problem by working on the notebook. I could see my plots fine. I remember firefox beeing the best browser to work on the notebook.
Click to expand...
Click to collapse

Use:
%matplotlibe inline
Instead of:
matplotlib.use('Agg')

Related

[Tutorial] Boot Linux on the Typhoon

Started to mess about with this earlier today, finally got the damn thing to work Turns out it is quite easy..
First, to get one thing straight, this will only boot the kernel, it will dump you at a shell which you have to remotely log on to via telnet over usb. There will be some (not so) fancy text appearing on your phone's screen but that is about it. Also, it only works on unlocked phones.
This is what you get:
On your computer you'll get this:
Cool, huh? Btw, this is running from a memory card, your OS will be untouched so as soon as you reboot the phone it will boot right back into WM2003/5/6.
1. What you need
* A HTC Typhoon running any rom of your choice (I did it on WM6).
* A miniSD memory card
* A Linux distro - I downloaded the Ubuntu Live CD and ran it through VMWare, no need to install anything or reboot your computer.
* miniSD image of Xanadux - this is the linux port for HTC devices. Grab the latest version here: http://rapidshare.com/files/92218185/Linux.zip.html
(these files are extracted from the miniSD image file found here: http://vivien.chappelier.free.fr/typhoon/download.html)
2. How to run linux on the Typhoon
1. Instead of installing linux properly on your phone which requires partitioning of the internal memory etc (a lot can go wrong) we'll put it on the memory card then a Windows Mobile program called HaRET will boot linux for us from WinCE. Completely non invasive in other words.
This bit is dead easy, just extract the Linux.zip file you just downloaded and copy the files to the root of your memory card (must be memory card, can't do this from the internal memory afaik). Next, go to the File Explorer on your phone and find the file HaRET.exe. Run it then press the run button (this button has focus when you execute HaRET.exe so just press the joystick when the windows appears) and you will see a message saying "Booting linux", then after a few seconds your screen will go black and some text will appear.
Voila! That's linux running on your phone!
2. Connect to the phone via telnet
If read the last line of text that appeared on screen you'll see that it says "Press enter to activate this console" but no matter what buttons you press on the phone nothing happens, some gibberish appears but that's it.
Solution: telnet to the phone from your computer.
Get Ubuntu to boot on your computer, then go to Applications->Accessories and run the Terminal. Next type in the following commands:
Code:
modprobe cdc_ether
modprobe usbnet
ifconfig usb0 up 192.168.9.1
and finally
Code:
telnet 192.168.9.10
Login with username root and you'll find yourself at a shell like the screenshot above. Everything you see from now on is coming linux from your phone!
I've noticed that Xanadux doesnt always initialise the USB port unless it is connected via USB when booting up so make sure you always have your phone connected via USB when you run HaRET.
Now I'm going to try to figure out how to get the GSM module to work...
LINUX based ROM??
Hi shandar,
I have read your post and I am interested to know if you are cooking a LINUX based ROM that will run in a WIndows Mobile device? That would be too good to be true.
Also another question is do you need to have Linux running on your desktop to make this tutorial work?
ryanchanmd said:
Hi shandar,
I have read your post and I am interested to know if you are cooking a LINUX based ROM that will run in a WIndows Mobile device? That would be too good to be true.
Also another question is do you need to have Linux running on your desktop to make this tutorial work?
Click to expand...
Click to collapse
Hey, well, I don't know enough to make a linux rom for smartphones. I'd love a working linux distro for Typhoons & Windows Mobile phones in general but it is way out of my league unfortunately.
Btw, I probably should clarify that I only wrote the tutorial, the actual linux port is made by someone else.

[LINUX] - How To: UBUNTU on Dell Streak

EDIT: I can't post to XDA due to the fact that i just signed up for an account, but look at fards' copy of my post to see how to install Ubuntu on your Dell Streak
Here's Pats Post on modaco;
although it would be nicer to keep development discussion to just one thread, the more constructive input the better
Hello All,
I'm attempting to natively port Ubuntu and/or Debian to the Streak. With it being such a powerful device there really is no reason it SHOULDN'T be running a “desktop” operating system. However, implementing his is quite a difficult task, so if any and everyone's help would be very much appreciated.
In the mean time, this is my first guide on how to get ubuntu running piggyback on the Dell Streak. After quite a while (and numerous different trials), I have found that this is the easiest way to get Ubuntu Mobile up and running fast. All commands can be done through either ADB shell or the terminal emulator on the phone.
This was *NOT* done entirely by me, but is a culmination of the effort of lots of people in the android community. I just modified it so that it would work on the Streak.
**This Installation DOES NOT install Linux natively, and as such is should not be destructive to your Android system, however i take absolutely no responsibility for anything that happens and you do this COMPLETELY at your own risk**
Here is how to do it:
1) Root your phone. There are plenty of guides on how to do it, so find one and get root access on your phone.
**YOUR PHONE MUST BE ROOTED. THIS WILL NOT WORK WITHOUT IT.**
2) Download Ubuntu Mobile Bundle: http://uploading.com/files/bbm6b311/ubuntu.zip/
This contains an image of the filesystem as well as other necessary scripts to get it working.
2) Busybox - Install Titanium Backup from Android Market - if you press the "Problems" button it will install Busybox on your phone for you (Feel free to uninstall Titanium after this is done). This is the fastest and most pain free way to install busybox on the streak that i know of for now (the other ways of doing this ARE NOT fun...)
3) On your SD card's root directory, create a folder called ubuntu and extract all files in the ubuntu mobile bundle there.
4) Replace the bootubuntu executeable file in the ubuntu directory with mine, found here http://www.mediafire.com/?fi011w4fbmymw3y
5) Unmount phone from computer. ADB and Android Terminal will not work if the phone is mounted.
5) Download a terminal from the Android Market - I used Jack Palevich's Android Terminal Emulator (android market search: terminal) but anything similar should work the same
CODE
Code:
su
cd /sdcard/ubuntu
sh ubuntu.sh
6) Ignore any errors thrown up by ubuntu.sh. From this point, all that is needed to boot ubuntu is just to enter this:
CODE
Code:
bootubuntu
To start ubuntu from now on, this is all you need to do.
You should now have ubuntu working on your laptop, and while it DOES connect to your phone's internet sources, it DOES NOT yet have a graphical interface.
Here is how to add one:
1) Update the system with the following commands in ubuntu:
CODE
Code:
apt-get update
apt-get upgrade
The first one updates the package lists, the second one downloads updates to the system itself.
2) Install TightVNC in ubuntu:
CODE
Code:
apt-get install tightvncserver
3) Configure TightVNC:
CODE
Code:
export USER=root
vncserver -geometry 800x480
For security purposes, it is recommended that you assign a password to your VNC server when asked.
4) Download Android VNC Viewer from the market
5) Configure Android VNC Viewer:
Change the port to 5901 and type in your password that you entered before.
Other Problems
There appears to be a bug with the X window server sometimes refusing to connect to VNC. DO NOT change any settings on Android VNC Viewer, instead open a terminal and run the folloring command:
CODE
Code:
rm -R /tmp/.X11-unix
What Does Not Work – Will Try To Fix
Keyboard from Android VNC Viewer
Shutdown – Does Nothing
Reboot
Log Out
Native Install
I hope you guys enjoy this, and I can't wait to get your feedback.
- Pat
Click to expand...
Click to collapse
there was a thread about this but it wasnt work on me. now i am downloading and i will inform you again
what is the address for vnc ?
OMG! Could that be any slower on the download?
EDIT:
That sounded totally ungrateful - sorry!
Thank you very much for this
yeah works fine without problems.
it is better from g1 but not as well as a netbook. so only experimental use i think
I connected to the loopback 127.0.0.1 on 5901 and it worked - haven't seen how to connect to it remotely though
Edit:
Reading is fundamental - I can connect to it form another machine
now to fix the keyboard issue
in terminal emulator there is a note : localhost:1 vnc could work properly so i connect with only port and password.
is it possible to install jolicloud since its an ubuntu based system?
Newbie questions, sorry....
Before to try this port, just some maybe stupid questions for you:
- Still working the phone function?
- Is it easy to go back to standard or Steve Streaks Roms?
- Are there lack of drivers for bluetooth, gps, audio, wifi, etc?
Thanks.
No your missing the point here, this isn't an OS separate to android. Think of this as an app it runs on top of the android system. Also this is very experimental most features would be limited and no ubuntu can't be used as an smartphone os -No phone...
beginner said:
Before to try this port, just some maybe stupid questions for you:
- Still working the phone function?
- Is it easy to go back to standard or Steve Streaks Roms?
- Are there lack of drivers for bluetooth, gps, audio, wifi, etc?
Thanks.
Click to expand...
Click to collapse
1) Ubuntu does not replace android, and the UI only runs in a VNC server, so you can switch back and forth between ubuntu and the phone app (or angry birds?)
2) I installed mine on top of DJ Steve's 1.8.1 rom... It's not native, so it only runs on top of android instead of replacing it
3) Haven't tried audio yet, but it should work (let me know how it goes)... internet connectivity works and provided you have an internet connection enabled in android you can use tools like APT or Firefox in ubuntu... only problem is keyboard is a bit wonky...
For those who had trouble figuring out how to set up the VNC, here is a picture of my VNC configuration on my phone. If you find out the phone's IP address you should even be able to VNC into it from your computer (if your on the same wifi network)
Also, openoffice.org
- pat
Is anyone actively attempting to get Ubuntu running native?
audio not working
keyboard not working
also lots of lags.
ear0wax said:
Is anyone actively attempting to get Ubuntu running native?
Click to expand...
Click to collapse
Yes, i'm looking into it, but it's quite an uphill battle in order to get it working. I'll let everyone know when we make some progress.
www.cepdukkani.net said:
audio not working
keyboard not working
also lots of lags.
Click to expand...
Click to collapse
cause you are running 2 operating systems at the same time
But seriously, if ubuntu can run native (no android in the background) then the lag would be gone, and (if set up right) audio and keyboard would work.
- pat
could i recieve phone and uses sms?
Getting error
Hi all after passing command for booting ubuntu I get a error chroot can't find /bin/bash folder or directory missing
Sent from my Dell Streak using XDA Premium App
www.cepdukkani.net said:
audio not working
Click to expand...
Click to collapse
Im wondering if I install a rdp server instead of vnc if I can get remote audio working.
Ill post with whatever results i get once I'm done waiting 2 hours for the ubuntu image to download.
As for lag. I had a n900 running @600mhz and was doing a chroot into ubuntu and it ran fine, but it used xpyher not vnc. Is there any embedded X servers for android yet? (I highly doubt it)
data requirement for updating GUI pkg of Ubuntu
Can any body tell me size of the data required to update to gui ......as i m not using wi -fi i hv to stick on gsm data usage which is limited in my plan
Very cool!
I had lots of trouble rooting my 2.2.2, but finally got it done by running Gingerbreak twice in a row on a cleanly re-started Streak.
Thanks for a fun gig!

Dual Booting ubuntu and windows 8.1 on the Pipo W2

Ok, So I thought I would post this guide to installing ubuntu 14.04 on the Pipo W2. This guide might help on some of the similar tablets out there too, like the voyo a1 mini. But I can't be certain about the others
Also, to give credit where credit is due, this guide is mostly adapted with little adaptation from the following guides:
http://asus-t100-ubuntu.blogspot.com/
http://linuxnorth.wordpress.com/2014/08/23/installing-linux-on-the-asus-transformer-book-t100/
and work on wifi wouldnt be possible without help on the ubuntu forums
http://ubuntuforums.org/showthread.php?t=2249936&p=13151763#post13151763
and the wifi drivers were posted for the rlt8723bs by this guy here
http://www.hadess.net/2014/09/and-now-for-some-hardware-onda-v975w.html
First the information as to what works, and what doesn't . As of 11/02/2014 stock ubuntu 14.04 works, the touchscreen works. However wifi, sound, bluetooth, suspend, hibernation, power button, volume buttons, and the micro sd card do not.
Updating to newer kernels changes what works and what doesn't. I was able to get wifi working on kernels 3.16.2 and the power button, and volume buttons, but the touchscreen didn't work on 3.16.2 on kernels 3.17.0 and 3.17.1 I was able to get wifi working, and the touchscreen works, but the volume buttons and power button didn't. you can still boot up with these later kernels, but it's not as easy. I had to go into ubuntu advanced options and boot to recovery for each kernel, then from the recovery menu boot to desktop. A bit of a pain. I think it's a graphics related problem, and I'm working on it, but as of this writing, the kernels I tested from 3.15.x on wouldn't boot without this. (if they booted at all, 3.18.rc2 didnt boot at all)
I am still testing various kernels, to see which one seems the most stable and enables the most features I will update this as new information is worked out.
Ok, starting. Part 1. The Prep work.
--------------------------------------------------------------------------------------------------------------------
Things you will need. A USB hub, a USB keyboard, USB wireless adapter, (or USB LAN adapter) and a mouse. (or trackball) And a USB thumbdrive of course. Without these things, you wont be able to complete the installation easily. Plug them all in, and connect them to the tablet.
Download An ubuntu 14.04.1 lts image (you can substitute ubuntu gnome, 14.04.1 lts, or lubuntu 14.04.1 lts image etc) here's a link to Ubuntu though. you can do this on your tablet, or your desktop. up to you.
http://www.ubuntu.com/download/desktop
Select 32 bit. (NOT AMD64) and click on download, then unless you wish to donate, click on the link that says "not now, continue to the download"
now download Rufus from here
http://rufus.akeo.ie/ and use rufus to install the ISO image on your thumbdrive by clicking on the disk icon next to ISO image near the bottom, and selecting the ubuntu-14.04.1-desktop-i386.iso file (or ubuntu-gnome-14.04.1-desktop-i386.iso or whatever flavor you downloaded) The top option on the rufus menu should automaticly list the thumbdrive, if it doesnt, select the thumbdrive unless you want to screw up whatever drive it's pointing at. (you might be able to make your system unbootable if you don't do this carefully so PAY ATTENTION) Is it listing your thumbdrive? if so, click on start on rufus and let it finish.
now you need to download this file here: https://drive.google.com/folderview...&usp=sharing&tid=0B9C1WK1FQhjfcXNrbzN6djQzajg
Leaving the thumbdrive in, unzip the unpackit.tar.gz file to the thumbdrive root directory, and overwrite all files. when you are done, if you did this on your desktop, safely remove the thumbdrive and plug it into the hub connected to your tablet. if you did this with your tablet, leave it plugged in and continue.
Now, for the windows setup.
First, get to control panel. (you can access it by pressing the windows key to get to the start menu, then going to PC settings, and selecting control panel) click the view to small icons, then click on Power Options. Next click on "Choose what the power button does" and from the next menu, click on "change settings that are currently unavailable"
now scroll down and uncheck the box that says "turn on fast startup" then save.
IMPORTANT NOTE: if you want to screw up windows, so that it wont boot, do the next step in a hurry and pay little attention to what you are doing.
Next you need to set up up some space for Ubuntu. (NOTE: you must have 8-10GB or so empty space on windows partition first, so if you don't have 8-10GB free, go delete some things until you have enough space free.) Ready? Ok you need disk management. go to your desktop then right click on on the start button. and select Disk Management from the menu Expand the window so you can see what you are doing, and right click on "Windows (C select "Shrink Volume" from the list. You will see a window that lists
"Total size before shrink in MB"
"Size of available shrink space in MB"
"Enter the amount of space to shrink in MB"
"Total size after shrink in MB"
Now, using the "Enter the amount of space to shrink in MB" option, type in 10000 or so, (8000 works too) to shrink the volume by 10 gb or 8gb (yes I know it's overly rounded, forgive my OCD) and leave the space as unallocated. do NOT shrink to the max it will let you. always give windows some space to work with.
IMPORTANT NOTE: If you shrink the volume by more then the free space, you will probably screw up your windows installation. I am NOT going to help you figure out how to fix windows, if you ignored these warnings and screw it up. Mostly because I haven't the faintest idea how to fix your windows installation if you shrink the volume too much.
Next eject any Micro SD card you have in the tablet, and pull it out.
Lastly for windows side of things, go back to your desktop, and again right click the start menu, open the shut down options list, then hold shift down and click on restart
You should now be faced with a blue screen with several options, click on "Use a Device" then select "UEFI:Removable Device" and allow the tablet to restart. it will boot back up to windows, but now you should have the USB drive in your UEFI settings boot options. Power the tablet down, all the way, and this time, when you see it start to boot up, press f7 over and over and over until you see the boot option menu, select your thumbdrive and hit enter.
You should be faced with the Grub menu now, press e to edit, and arrow over to where it says video=VGA-1:1368x768e delete the 1368x768 and replace it with 800x1280 now the end of that line should say:
video=VGA-1:800x1280e reboot=pci,force
then hit f10 to boot. it should take a few min, but boot to desktop, if it doesnt, power off the tablet by holding down the power button for 12 seconds, and try again. If it doesn't boot and just errors with rpmb timeout errors for more then 5 min, just try again. (and unplug anything but the keyboard and usb thumbdrive from your hub until you reach desktop.
Once you hit desktop, wait a good 15 seconds before touching anything, otherwise kernel panic hits sometimes.
Once you are at your desktop, click in the upper right corner and go to system settings, and go to Brightness & Lock and uncheck the box that says "dim screen to save power" and change "Turn screen off when inactive for" to never.
Next exit that screen and connect to your wifi or make certain your wired network is working. check to make certain you have internet access. then hit ctrl-alt-t to open a terminal. type the following
sudo umount /dev/mmcblk0p*
now kill that window. you are now ready, FINALLY ready to install ubuntu.
Part 2 : Installing Ubuntu
-------------------------------------------------------------------------------------------------------------------------------------
Click on the icon to install ubuntu, then when the window pops up, select your language and continue
On the next window check both boxes to install updates and third party software, (third party is probably optional) and click continue
Now, we wait. wait wait wait and wait. the next window will take quite a while to pop up. probably rpmb timeout errors as it checks all the drives. might be 30 min or so. no way to speed this up.
Now PAY ATTENTION: Next window, click on the last option that says "Something Else" if you click standard install, you can kiss windows goodbye.
Following window, will list all your drives. do you see that 10000 or 8000 MB of space you created earlier? nice and round and most importantly, easily recognizable? click on that it should say "free space", then click on the "+" button., when the create partition box pops up, select logical instead of primary, and select the mount point to / and Use As: should say "Ext4 journaling file system" it will list the partition as something like mmcblk0p5 (might be mmcblk0p6 or mmcblk0p4 or whatever. pay ATTENTION to this, write it down. you will need it later.
don't worry about swap space, the installer crashes if you try to set any space aside as swap space. so just leave the entire unallocated space for the ext4 partition
click on "Install Now" and a warning will pop up, just click continue (this is a warning about it suggest swap space. you cant, so just continue)
select your timezone, keyboard layout, then username, computer name, password on the next screens, and DON'T encrypt your home partition. and let it install
It should run for a while and finish installing
When it finishes, don't reboot, and instead exit the installer and power off instead of rebooting. you will see it stops after system halted. once you see that, hold the power button for 12 seconds to power off the device.
Leave everything plugged in, and power on, when you see the grub menu, this time hit "C" to drop to a command line. and remember the number at the end of your partition where you installed linux? get out that paper. you need it now. now type:
linux (hd1,gpt5) (dont hit enter yet) if your partition was 6 instead of 5 (mmcblk0p6 instead of mmcblk0p5) then instead of gpt5 use gpt6 etc.
now continue and add /boot/vmlin so that the command line reads
linux (hd1,gpt7)/boot/vmlin now hit Tab
it should autofill and read something like
grub> linux (hd1,gpt5)/boot/vmlinuz-3.13.0-32-generic
still dont hit enter. now add root=/dev/mmcblk0p5 (or whatever your partition was) followed by video=VGA-1:800x1280e reboot=pci,force
the final line should read something like
grub> linux (hd1,gpt5)/boot/vmlinuz-3.13.0-32-generic root=/dev/
mmcblk0p5 video=VGA-1:800x1280e reboot=pci,force
NOW you can hit enter.
next line. type:
Initrd (hd1,gpt5)/boot/initrd and press Tab again
now it should read something like
grub> initrd (hd1,gpt5)/boot/initrd.img-3.13.0-32-generic
now hit enter
now type boot then hit enter.
it should boot to desktop now
ok now we need to fix grub so you can boot without the thumbdrive in
make certain you are connected to the internet, via wired or usb wireless adapter, and open another terminal by hitting ctrl-alt-t
now copy and paste this in and hit enter:
sudo apt-get update && sudo apt-get install git bison libopts25 libselinux1-dev autogen m4 autoconf help2man libopts25-dev flex libfont-freetype-perl automake autotools-dev libfreetype6-dev texinfo
when it asks to install hit a y and let it continue
when it finishes and you see a terminal prompt again, type or copy:
git clone git://git.savannah.gnu.org/grub.git
and hit enter at the next prompt type
cd grub
followed by enter again, then type or copy:
./autogen.sh
hit enter again and at the next prompt type or copy:
./configure --with-platform=efi --target=i386 --program-prefix=""
enter again, at when it finishes, at the next prompt type
make
and hit enter. At the next prompt (will take a while to finish) type or copy:
cd grub-core
and hit enter. then copy and paste in:
sudo ../grub-install -d . --efi-directory /boot/efi/ --target=i386
hitting enter again. At the next prompt, type or copy and paste in:
cd /boot/efi/EFI
hit enter then paste in:
sudo cp grub/grubia32.efi ubuntu/grubia32.efi
and hit enter
now we get to edit grub.
next command you type or paste in should be:
sudo nano /etc/default/grub
and we get to edit the following line
GRUB_CMDLINE_LINUX_DEFAULT
find that line, and delete the words quiet and splash. and replace with
video=VGA-1:800x1280e reboot=pci,force
hit ctrl-x and save as you exit.
now we have the LAST command you need to type here. it's:
sudo update-grub
and of course hit enter.
once you have the terminal prompt again, you can exit the terminal, and power off the tablet again. (you will need to hold the power button for 12 seconds after system halts. get used to this.)
Now, I'm going to assume you don't want ubuntu to be the default OS to boot into yet. if you really do, skip this part, if not, continue.
Disconnect the usb thumbdrive and then press the power button on your tablet., Now press F7 over and over until the UEFI boot menu shows up Select "Enter Setup"
arrow over to the boot menu, and select windows as the number 1 option.
now, your tablet should be set up, to boot into windows by default.
To boot to ubuntu, use F7 to enter the boot menu on startup, and select grub and ubuntu
you can leave it with grub as the bootloader if you want. there are ways to configure grub to boot into windows by default, but you will need to keep a keyboard with the tablet at all times then. since sometimes it wont auto boot, and will wait forever for the enter key to be pressed to select your boot option.
I'll add information to my next post to explain how to rotate the screen in ubuntu, as well as information for updating kernels and getting the internal wifi to work.
ok, tips and tricks. to rotate the screen, you need to enter two commands into the terminal
first to rotate the view to the right, you type:
xrandr -output VGA1 -rotate right
on my most recent installation (ubuntu mate 14.04) this didnt work. so I needed instead to use
xrandr -o right
then hit enter of course. this WONT rotate the touchscreen. to rotate that, we need xinput.
first you can type xinput list to list what devices are present. I assume you will see FTSC1000:00 2808:5056 listed. if so, this will work, if not, you will need to adjust this command to fit what you see listed. (most important if you are adapting this guide to another bay trail tablet other then the pipo w2) the command that you want, assuming that's your touchscreen is
xinput set-prop "FTSC1000:00 2808:5056" "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1
and hit enter of course. your touchscreen should now be rotated to the right as well,
-----------------------------------------------------------------------------------------------------
ok, Wifi, to get wifi up and running, you will break screen rotation. Also it will break your normal boot process, requiring you to boot though advanced options for ubuntu, and recovery mode after that. The wifi is also unstable, and prone to hanging, requiring you to disconnect and reconnect at random intervals. It's not a perfect workaround, pretty far from it in fact, but it does at least prove the wifi is possible to get working. we probably need a better driver. Overall, you will get much much MUCH better performance with a usb wifi module. but that's extremely annoying to use so feel free to experiment here.
step one, go to here: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18-rc4-vivid/
and download the following files. http://kernel.ubuntu.com/~kernel-pp...eneric_3.18.0-031800rc4.201411091835_i386.deb
http://kernel.ubuntu.com/~kernel-pp...1800rc4_3.18.0-031800rc4.201411091835_all.deb
http://kernel.ubuntu.com/~kernel-pp...eneric_3.18.0-031800rc4.201411091835_i386.deb
now copy them to your desktop in ubuntu.
now in terminal type:
cd Desktop
then type:
sudo dpkg -i linux*.deb
once it's done, reboot your tablet. now go to grub, and select advanced options for ubuntu, then select recovery mode for the 3.18-rc4 kernel. and resume normal boot once you see the recovery menu show up
this should allow you to boot to desktop. after which go back to terminal, and type the following commands in, one line at a time of course, waiting for the next prompt before typing the next line
sudo apt-get install build-essential linux-headers-generic git
git clone https://github.com/hadess/rtl8723as.git
cd ~/rtl8723as
make clean
make
sudo make install
sudo depmod -a
sudo modprobe 8723bs
reboot. go through the recovery mode menu again to boot to desktop. wifi should now be working. you will need to use recovery mode to boot from this point on. since 3.18-rc4 wont boot without it. Be forwarned, suspend mode breaks wifi it seems. one time of the suspend, and you will need to reboot to get it working again. So I would suggest disabling everything applicable to your tablet screen shutting off. also, the wifi is extremely unstable. as noted above. it can quit for no reason, and need to disconnect and reconnect to use it more.
information for how to install the wifi driver was gained here:
http://ubuntuforums.org/showthread.php?t=2249936&p=13151763#post13151763
information as to why the wifi won't work, even with the drivers, on 14.04 default kernels was obtained from this thread https://bugzilla.kernel.org/show_bug.cgi?id=67921
would this work on a clovertrail device?
I don't think so. I don't think clovertrail is Linux friendly at all. Clovertrail+ should be, but not clovertrail. However the clovertrail+ devices I know of are the Asus padfone the Asus zenfone and the lenovo k900. All of which use droidboot. (Can't load grub). And have PowerVR graphics which are not open source, so no Linux drivers. There are probably more clovertrail+ devices out there I just haven't looked into them much.
I added information to the second post about screen rotation, and relevant information to the workaround for wifi. Be advised that it's not a perfect workaround. wifi works, and so does the power button. but it requires booting through recovery mode
It's cool. Do you know whether it works well on the latest W2f?
No idea. Probably though. But I can't be certain. I don't have a pipo w2f to test with.
Arch Linux
Have you tried to install ArchLinux on this tablet?
nope, sorry so far i've just experimented with ubuntu and fedlet. I have not installed fedlet, just booted and looked around a bit.
StridAst said:
nope, sorry so far i've just experimented with ubuntu and fedlet. I have not installed fedlet, just booted and looked around a bit.
Click to expand...
Click to collapse
I tried this guide , my interest was just trying to live mode ubuntu , but unfortunately the screen is distorted even changing resolution.
My though is a Pipo W6 .
Did you try to start Live Android X86 ?
Tony Evo said:
I tried this guide , my interest was just trying to live mode ubuntu , but unfortunately the screen is distorted even changing resolution.
My though is a Pipo W6 .
Did you try to start Live Android X86 ?
Click to expand...
Click to collapse
I've not tried android at all on mine. I keep meaning to do so, but have not found the time yet. Hmm though on the W6. did you try setting resolution settings at 1200x1920 or just 1920x1200? which number you put first matters and can result in a distorted screen. the w2 is listed as 1280x800 resolution, but to get ubuntu to work without the screen going all wonky, you have to reverse the numbers to 800x1280.
I tried different resolutions, the problem is that the screen is like tripled
---------- Post added at 04:37 PM ---------- Previous post was at 04:13 PM ----------
The solution was obvious ... Put the real screen resolution 1920x1200
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Touch screen no works
hmm, which kernel are you using? I've found some of the newer kernels made the touchscreen on the W2 work, some made it not work. things to try.
first post the results of
xinput --list
that might offer some clues. also you could try downloading and installing the 3.18.1 kernel from here
http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.1-vivid/
assuming you are using the 32 bit version not the 64 bit version of ubuntu, you would want to download both of the generic i386.deb files, (not the low latency) as well as the all.deb file. I'm assuming that updating the kernel on a live-USB works. I've never tried it actually.
to install you go to terminal, and assuming the files are placed in desktop, type:
cd Desktop
sudo dpkg -i linux*.deb
reboot and see if it helps. if not, you can try some of the other more recent kernels. I've noticed a huge difference from one RC to another. a rc1 file might have working touchscreen and power buttons for the W2, and a rc2 file breaks the touchscreen but the power button works, while a rc3 would have the touchscreen work again, but fail on the power button, etc. see here for all the other kernels. top of the list is the oldest, bottom is the most recent.
http://kernel.ubuntu.com/~kernel-ppa/mainline/
Sorry for my slow replies, I've only really had any spare time in the mornings lately.
StridAst said:
hmm, which kernel are you using? I've found some of the newer kernels made the touchscreen on the W2 work, some made it not work. things to try.
first post the results of
xinput --list
that might offer some clues. also you could try downloading and installing the 3.18.1 kernel from here
http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.1-vivid/
assuming you are using the 32 bit version not the 64 bit version of ubuntu, you would want to download both of the generic i386.deb files, (not the low latency) as well as the all.deb file. I'm assuming that updating the kernel on a live-USB works. I've never tried it actually.
to install you go to terminal, and assuming the files are placed in desktop, type:
cd Desktop
sudo dpkg -i linux*.deb
reboot and see if it helps. if not, you can try some of the other more recent kernels. I've noticed a huge difference from one RC to another. a rc1 file might have working touchscreen and power buttons for the W2, and a rc2 file breaks the touchscreen but the power button works, while a rc3 would have the touchscreen work again, but fail on the power button, etc. see here for all the other kernels. top of the list is the oldest, bottom is the most recent.
http://kernel.ubuntu.com/~kernel-ppa/mainline/
Sorry for my slow replies, I've only really had any spare time in the mornings lately.
Click to expand...
Click to collapse
But I have a problem .
I dowload ubuntu 14:04 32bit , I create the key with rufus , once finished the process I copy and paste the files that you had put in the folder called " unpackit " .
Starting my PIPO , I press esc , I go in and do the boot devices on the pendrive .
and everything ok .
If you want to try to create another pendrive with another Distro ( 64bit ubuntu , fedora or other ) when I create the key , I start the PIPO but I do not recognize the key ,
can not find the pendrive between devices boot .
Install a 64-bit version of Ubuntu, with a 32-bit bootloader
Take a look at this link: linuxnorth,wordpress,com/2014/12/11/installing-64-bit-linux-on-the-asus-transformer-book-t100/
(change , with .)
I tried to install Arch Linux but couldnt boot it, neither any Arch-derivated. I tried also fedlet and its not bad at all.
Sorry if my questions are a bit stupid. Using this instruction we can install ubuntu OS as the 2-nd OS in parallel with windows, can't we?
If I have ubuntu installed on my tablet am I able to run android apps on it? Is ubuntu equals to android?
StridAst said:
Ok, So I thought I would post this guide to installing ubuntu 14.04 on the Pipo W2. This guide might help on some of the similar tablets out there too, like the voyo a1 mini. But I can't be certain about the others
Click to expand...
Click to collapse
Superb! Works 100% on my £20 Voyo A1 Mini, thank you!
Better guide, no offence (and no need to edit anything in Grub):
https://github.com/Manouchehri/vi8/blob/master/Ubuntu_instructions.md
Working (for the majority of the hardware) on my Voyoa A1 Mini (5V2A version.)
mbwf said:
Better guide, no offence (and no need to edit anything in Grub):
https://github.com/Manouchehri/vi8/blob/master/Ubuntu_instructions.md
Working (for the majority of the hardware) on my Voyoa A1 Mini (5V2A version.)
Click to expand...
Click to collapse
no offense taken! much appreciated posting a newer/better guide that's the beauty of xda. theres always something newer and better showing up. I wish my pipo tablet still worked so I could experiment with it, But a factory reset with windows 10 bricked it with the TPM bug. It wants confirmation to clear or to not clear the Trusted platform module, but this request boots up before usb. so there is no way to answer the request. no buttons work, and no keyboard input works. =/ afaik its bricked for good.

[Partial] Hacking myford touch, were getting closer!!!

Ok Devs-
(ALSO sync owners, don't update your sync systems anymore by ford, we are getting close to unlock it, and they will put out updates to bork our hack).
I need some help please. I need to modify this POS sync. You can't do anything with it. I want to get navigation running or bluestacks to run android.
I got the official ford , usb reboot file I have attached it here. It has the signed files that we need.
I was able to tigger the install event with those files. And I believe this is our key to Jailbreak the system.
The best part is that you can run stacked commands on those install scripts. https://www.coalfire.com/The-Coalfire-Blog/October-2014-(1)/Reverse-Shells-and-Your-Car?feed=blogs
I have been struggling to get it it to execute, presumably, I don't know anything about win CE.
I have the win CE cmd.exe on my usb. Place it into the system, it recognizes and initiates upload. What the code below is trying to do is piggy back on the copy via stacked code to upload cmd.exe to the system then execute it. UNless there is another way to get a shell, once we get the shell, WE OWN THEM.
This is what my path is listed on my autoinstall.1st file -
Open1 = DelayedReboot.cab; cmd.exe \tmp\cmd.exe; \tmp\cmd.exe
the cab is required as it is signed by microsoft and bypasses the lock to load additional code.
Changing the semi colon to & makes it error out, so the semi colon is correct, just dunno if I have the paths right. Normally, it would be something like for linux /fs/usb0/etc...... but I am not sure about CE lists the usb device path...again I am win CE retarded. UNless there is a way to % to the paths, but I dunno much about win.
Sync, recognizes and executes with no errors. If I change my code a little, it will not work and say error.
SO what am I missing to get the cmd to run? Or is it already? I was expecting a shell to pop up?
If someone can point me in the right direction, or to point what file I can call to execute the onboard navigation, that would be awesome as well.
Even if we can't get a shell, I'd like to be able to execute a file, then I can run MIOpocket on this thing and ditch sync for android apps.
I have also attached the sync app developer guide link. With programming commands for apps.
https://developer.ford.com/uploads/DevConf%20-%20Track%205%20-%20Best%20Practices.pdf
Here is a link to the windows 7 automotive guide on how the system operates, kernel info, driver info, and stuff.
http://download.microsoft.com/download/0/A/1/0A1E07D6-7562-4566-AACF-E04DF4FF8879/A%20Technical%20Companion%20to%20Windows%20Embedded%20Automotive%207%20(final).pdf
UPDATE: 04/19/2015 -
While it is not a software hack, IT IS possible to unlock the navigation only portion of the MFT 8", if you have it without nav.
IF YOU DO THIS, YOUR CAR WARRANTY IS VOID. You've been warned.
It will cost a little money, but not set you back $1000 like nav tv and lockpick are charging. Maybe $100 or so.
Here is what you need to do, if you can't wait for us to unlock the bootloader.....
1 - Get a used APIM only part with the numbers DS7T in it. (aluminum only part with the fins, you DO NOT need the screen)
2 - Get the VIN# of the car it came out of and check the VIN to see if it was enabled with factory NAV. There are internet sites that will check the VIN for you. Must be a unit with NAV enabled.
http://researchmaniacs.com/VIN-Number-Lookup/WindowSticker/Ford.html
3. Install the APIM only to the back of your LCD.
4. The system will reboot and reset.
5. The system will them ask you to insert the NAV sd card, do that. (obviously, you have to buy a nav card from ebay as well, but those are $10)
6. Enjoy factory NAV for about $100
This is the only workaround for now. THE APIM is separate from the sync system and only interfaces with it. So, you will retain all your OEM VIN# locked stuff and it will survive reboots and updates. The nac actually just unlocks on that APIM portion, believe it or not. This method doesn't tie into the file system software, it merely accesses it.
Now.... if someone would be so kind as to just rip the NAND chip from one of those units and post it, so that we can just flash over our existing equipment, we can do this for FREE!!!!!!
Still working on the video bypass.... It would be nice if our Russian friends can start chiming in for that one please.....
DON"T FALL FOR THE EBAY GUY CHARGING $600 to $700 for this. Let's put him out of business.... Your help is needed.
PROPS TO rahrena8690 for the find.
WORKING FILE LINKS - FOR DEVELOPERS ONLY
Delayed Reboot project
https://mega.co.nz/#!m0BEWSrA!qrdgIRYTvccH52794ktdpRfrulI_pSdY3g-iiCyhaFs
awesome work
kthejoker20 said:
Ok Devs-
(ALSO sync owners, don't update your sync systems anymore by ford, we are getting close to unlock it, and they will put out updates to bork our hack).
I need some help please. I need to modify this POS sync. You can't do anything with it. I want to get navigation running or bluestacks to run android.
I got the official ford , usb reboot file I have attached it here. It has the signed files that we need.
I was able to tigger the install event with those files. And I believe this is our key to Jailbreak the system.
The best part is that you can run stacked commands on those install scripts. https://www.coalfire.com/The-Coalfire-Blog/October-2014-(1)/Reverse-Shells-and-Your-Car?feed=blogs
I have been struggling to get it it to execute, presumably, I don't know anything about win CE.
I have the win CE cmd.exe on my usb. Place it into the system, it recognizes and initiates upload. What the code below is trying to do is piggy back on the copy via stacked code to upload cmd.exe to the system then execute it. UNless there is another way to get a shell, once we get the shell, WE OWN THEM.
This is what my path is listed on my autoinstall.1st file -
Open1 = DelayedReboot.cab; cmd.exe \tmp\cmd.exe; \tmp\cmd.exe
the cab is required as it is signed by microsoft and bypasses the lock to load additional code.
Changing the semi colon to & makes it error out, so the semi colon is correct, just dunno if I have the paths right. Normally, it would be something like for linux /fs/usb0/etc...... but I am not sure about CE lists the usb device path...again I am win CE retarded. UNless there is a way to % to the paths, but I dunno much about win.
Sync, recognizes and executes with no errors. If I change my code a little, it will not work and say error.
SO what am I missing to get the cmd to run? Or is it already? I was expecting a shell to pop up?
If someone can point me in the right direction, or to point what file I can call to execute the onboard navigation, that would be awesome as well.
Even if we can't get a shell, I'd like to be able to execute a file, then I can run MIOpocket on this thing and ditch sync for android apps.
I have also attached the sync app developer guide link. With programming commands for apps.
https://developer.ford.com/uploads/DevConf%20-%20Track%205%20-%20Best%20Practices.pdf
Here is a link to the windows 7 automotive guide on how the system operates, kernel info, driver info, and stuff.
http://download.microsoft.com/download/0/A/1/0A1E07D6-7562-4566-AACF-E04DF4FF8879/A%20Technical%20Companion%20to%20Windows%20Embedded%20Automotive%207%20(final).pdf
Click to expand...
Click to collapse
I have been wanting to get into this system since the day I got my truck. All ford has succeeded in doing is piss me off with "updates" that didn't amount to much. I would be happy if they would at least allow applink on the touch systems, as that would at least give us some options to add our own work.
I would love to help, but don't have much experience with "rooting", Windows CE, etc. But looking at what you have so far, I will offer some thoughts that came to mind:
It seems to me that you are working at the bootloader level, not the OS level. I may be way off here, but this could be why cmd won't work, as the OS is not loaded, so a traditional shell is not yet possible.
If you are indeed at the OS level, I wonder since you didn't get any errors when trying to launch cmd, if it was indeed actually running. I know on windows systems, if you manage to launch a process as "system", you typically can't interact with it (security issue). I don't know CE at all, but wonder if PsExec would work if it is launching your exe, but as system...
If it is executing your exe as system, perhaps a script or small app that writes some info about the system to a file on the usb drive would help. IE, have it list the folder structure for example.
I know we are not alone on people wanting to work on this. It looks to me that with Sync 3 dumping MSFT, we may be left in the dust with no further updates, although, this guy has found some signs that it might still get some useful updates:
http://www.reddit.com/r/Ford/comments/2rf2cc/ford_may_announce_updates_to_sync_gen2_myford/
Thanks
kthejoker20 said:
Ok Devs-
(ALSO sync owners, don't update your sync systems anymore by ford, we are getting close to unlock it, and they will put out updates to bork our hack).
I need some help please. I need to modify this POS sync. You can't do anything with it. I want to get navigation running or bluestacks to run android.
I got the official ford , usb reboot file I have attached it here. It has the signed files that we need.
I was able to tigger the install event with those files. And I believe this is our key to Jailbreak the system.
The best part is that you can run stacked commands on those install scripts. https://www.coalfire.com/The-Coalfire-Blog/October-2014-(1)/Reverse-Shells-and-Your-Car?feed=blogs
I have been struggling to get it it to execute, presumably, I don't know anything about win CE.
I have the win CE cmd.exe on my usb. Place it into the system, it recognizes and initiates upload. What the code below is trying to do is piggy back on the copy via stacked code to upload cmd.exe to the system then execute it. UNless there is another way to get a shell, once we get the shell, WE OWN THEM.
This is what my path is listed on my autoinstall.1st file -
Open1 = DelayedReboot.cab; cmd.exe \tmp\cmd.exe; \tmp\cmd.exe
the cab is required as it is signed by microsoft and bypasses the lock to load additional code.
Changing the semi colon to & makes it error out, so the semi colon is correct, just dunno if I have the paths right. Normally, it would be something like for linux /fs/usb0/etc...... but I am not sure about CE lists the usb device path...again I am win CE retarded. UNless there is a way to % to the paths, but I dunno much about win.
Sync, recognizes and executes with no errors. If I change my code a little, it will not work and say error.
SO what am I missing to get the cmd to run? Or is it already? I was expecting a shell to pop up?
If someone can point me in the right direction, or to point what file I can call to execute the onboard navigation, that would be awesome as well.
Even if we can't get a shell, I'd like to be able to execute a file, then I can run MIOpocket on this thing and ditch sync for android apps.
I have also attached the sync app developer guide link. With programming commands for apps.
https://developer.ford.com/uploads/DevConf%20-%20Track%205%20-%20Best%20Practices.pdf
Here is a link to the windows 7 automotive guide on how the system operates, kernel info, driver info, and stuff.
http://download.microsoft.com/download/0/A/1/0A1E07D6-7562-4566-AACF-E04DF4FF8879/A%20Technical%20Companion%20to%20Windows%20Embedded%20Automotive%207%20(final).pdf
Click to expand...
Click to collapse
Thanks Pro. any new updates. Actually i just purchase Lincoln MKZ 2014, although i know it is hardware capable to run navigation since i get latitude and longitude, but unfortunately no navigation from the factory. i just play with My Lincoln Touch and on the sittings there is a tab for installing apps. so can we install and windows CE app?
Nothing yet.
Sync updates are rolled out every 6 months.
Rumor was that we are all getting blackberry upgrade from Microsoft.
Update is expected Feb 2015 or so.
We are sitting on the sidelines waiting to see what Ford will do, before we start porting over. There may be no need for our work if we get port link to the new system. I think Ford is on our side, as they don't want us open sourcing the system and have to deal with warranty claims.
kthejoker20 said:
Nothing yet.
Sync updates are rolled out every 6 months.
Rumor was that we are all getting blackberry upgrade from Microsoft.
Update is expected Feb 2015 or so.
We are sitting on the sidelines waiting to see what Ford will do, before we start porting over. There may be no need for our work if we get port link to the new system. I think Ford is on our side, as they don't want us open sourcing the system and have to deal with warranty claims.
Click to expand...
Click to collapse
i don't think so. we will not get the QNX update. I think it is a different system with different architecture and requirements. but i hope they unlock the FMT or LMT so we can install any windows ce app.
Please don't reply to this thread with comments or requests.
I'd like to keep it clean to only development comments.
Based on what I'm reading around the page 26 mark (bootloaders section of the windows embedded 7 pdf), it sounds like we need to attempt to give the IPL boot arguments to get into update or development mode and from there we could have a chance of pushing our own files. I would think update mode looks for a signature but dev mode might let anything in.
Way ahead if you. The attached file has the signature. I was able to successfully run stacked commands by modifying the attached reboot file. Problem, the command doesn't stick on reboot.
kthejoker20 said:
Way ahead if you. The attached file has the signature. I was able to successfully run stacked commands by modifying the attached reboot file. Problem, the command doesn't stick on reboot.
Click to expand...
Click to collapse
So you were able to launch a command prompt via the delayed reboot zip? I wonder if it would be possible to hack a sync update and then use this to push it.
I need a zip please... I can induce an update no command prompt yet
I can only run commands stacked, but I need to run a script on the sync side, but I can't figure out how to push the script to the sync
kthejoker20 said:
I need a zip please... I can induce an update no command prompt yet
I can only run commands stacked, but I need to run a script on the sync side, but I can't figure out how to push the script to the sync
Click to expand...
Click to collapse
This the latest myford touch update Gen2-V3.7.11
http://www.mediafire.com/?79v3d0d8972sy44
Here is the Delayed Reboot zip
http://outofmytouch.com/assets/delayed_reboot.zip
So some very quick looking tonight and I found EA5T-14D546-ATD contains the master patch. Decompiling some of the shockwave files I have found some interesting code. These would most likely be the files to hack to change factory behavior. Getting them flashed to a vehicle might be a whole other issue though.
Edit: After more browsing I think we need to target a master patch for an older version of Sync. I was looking at the master patch for the most current so there are going to be less files patched. I will have a peek at those later.
For some reason, the coalfire site took down it's information regarding the reverse shell of the infotainment system.
Here is what I am talking about with the command on the delayed reboot file. I have conveniently located the stacked command image and attached it for your viewing pleasure.
If we can patch the files, this is how we push them to the chip. Otherwise, I may have to PHYSICALLY pull the system files through JTAG tap... sigh... not really wanting to do that though...
If we can push them, we would have to unlock the bootloader to bypass the sigs... This is where my brain is staring to hurt....
Obviously, these commands do not apply to what we are doing, as that is QNX. Plus, I don't want any noobs spunking their system with our fashizzle yet...until we test it.
Just a final thought, as a plan B, we could reverse shell with the USB exploit as well... just saying.. might be easier
An integer overflow might work as well, but I have never experiemented on an embedded chip. Stacked command invoking an integer overflow, might give us write access to the system.
Has any thought gone into rewriting one of the dll's included in the latest patch to include some sort of backdoor? It seems it'd be easy (maybe I'm missing something here) to just modify the latest patch's install files to install our new dll.
I haven't had time yet, but I am going to try to USB otg pull.... I'm sure I can probably at least disable the vss lock.
kthejoker20 said:
I haven't had time yet, but I am going to try to USB otg pull.... I'm sure I can probably at least disable the vss lock.
Click to expand...
Click to collapse
When you tried running the cmd prompt with the stacked command approach did get any indications of the program running? I was thinking about adding some arguments to the end of the command to write a random file to the root of an available drive (like you said, who knows how the thumb drive is recognized).
Also, what type of processor does the system run on?
---------- Post added at 11:51 PM ---------- Previous post was at 11:30 PM ----------
duckboy81 said:
When you tried running the cmd prompt with the stacked command approach did get any indications of the program running? I was thinking about adding some arguments to the end of the command to write a random file to the root of an available drive (like you said, who knows how the thumb drive is recognized).
Also, what type of processor does the system run on?
Click to expand...
Click to collapse
I think I answered one of the questions. From the PDF you posted "A Technical Companion..." it's a Freescale IMX35 processor.
freescale.com/webapp/sps/site/taxonomy.jsp?code=IMX35_FAMILY&cof=0&am=0
Looking forward to following the progress of this thread! I hope that you all will discover a new solution to our these outdated systems! Good luck guys, I am rooting for you!
duckboy81 said:
When you tried running the cmd prompt with the stacked command approach did get any indications of the program running? I was thinking about adding some arguments to the end of the command to write a random file to the root of an available drive (like you said, who knows how the thumb drive is recognized).
Also, what type of processor does the system run on?
---------- Post added at 11:51 PM ---------- Previous post was at 11:30 PM ----------
I think I answered one of the questions. From the PDF you posted "A Technical Companion..." it's a Freescale IMX35 processor.
freescale.com/webapp/sps/site/taxonomy.jsp?code=IMX35_FAMILY&cof=0&am=0
Click to expand...
Click to collapse
Actually I am pretty sure the MyFord Touch processor is an I.MX51 acccording to a Ford PDF I found. Unfortunately I am new to posting here and it won't let me post links.
I work on the almost identical I.MX53 processor at work doing Linux kernel, u-boot boot loader, and Linux application software, so I might be able to help.
Most of the I.MX processors have built in ROM code that allows booting to a USB or Serial downloaded mode. This allows loading any software you want into any RAM address and then booting from it. Then you run completely out of RAM (like a live CD). Depending on how Ford setup the I.MX51 e-fuse settings, there may be an external pin that could be used to enter this serial downloaded mode. Freescale provides a tool called the MfgTool to load software using the serial download mode. Then you could load Linux, Android, or whatever. The e-fuses also allow you to lock out JTAG, serial downloaded mode, and enable boot time signature checking, but I am not sure if Ford used any of these to lock the system down.
Do we know where the processor is located in the fusion?

[Q] Power Button Light and Nothing Else - Please Help

Just as the title states - the power button will light up, but just a black screen.
I've read around, holding this button and that button, loading zip files on the sd card - holding this and that, still nothing.
I get no vibration and still a black screen like it's turned off.
Perhaps a bad logic board? - If so, I'll stop wasting my time and yours.
Thanks in advance for any replies.
samething here...power light on , black screen. Is it totally bricked?
Helps to see that I'm not the only one with the same issue.
I can only hope someone chimes in to direct us both in the right direction.
I think you should try to enter apx mode (you have to keep pressing reset with a needle or something like that, press the power button for 3-4 seconds, and after 1 second release the reset), and see if you can flash a new bootloader and recovery with the A500APXFlash tool (search in the web). But you have to retrieve the cpuid of your tablet, in order to use the flash tool...It's a kind of mess, but it can be done.
omniastrider said:
I think you should try to enter apx mode (you have to keep pressing reset with a needle or something like that, press the power button for 3-4 seconds, and after 1 second release the reset), and see if you can flash a new bootloader and recovery with the A500APXFlash tool (search in the web). But you have to retrieve the cpuid of your tablet, in order to use the flash tool...It's a kind of mess, but it can be done.
Click to expand...
Click to collapse
I'm lost.
Let me just say, when I mean a black screen, I mean it's black - no lcd back-lighting or vibration from the unit.
I've tried what you described w/o a micro sd card in the slot and nothing hooked up to the tablet what so ever - nothing happens, except the power light coming on.
I've searched for the tool, read a little bit, but I'm getting lost within the terms.
Nothing I come across really explains what and how to do from a dummy standpoint.
Velocity_Stack said:
I'm lost.
Let me just say, when I mean a black screen, I mean it's black - no lcd back-lighting or vibration from the unit.
I've tried what you described w/o a micro sd card in the slot and nothing hooked up to the tablet what so ever - nothing happens, except the power light coming on.
I've searched for the tool, read a little bit, but I'm getting lost within the terms.
Nothing I come across really explains what and how to do from a dummy standpoint.
Click to expand...
Click to collapse
I know that feeling...It's non easy, even for those who knows a bit of pc and electronic devices (like me). In these days I have tried all I could try in order to revive the Acer of my friend. At one point it didn't even show the Acer logo, neither anything on screen, only the power light on. I suppose that the bootloader was corrupted somehow. So, if you wanna try, you will need:
1) the CPUID of your tablet. For this you can use usbdeview, if you have ever connect the tablet to your pc (if you haven't it's much more difficult!). Double click on USBdeview.exe, click on "edit" and then on "find" (or simply CTRL+F). Search for "Acer Iconia" and then double click on the result. Now copy the serial number somewhere.
2) If you got the cpuid you can get the SBK (copy the serial numer on this site, and click on "generate my SBK". Now copy all the SBK and paste it on notepad or similar. All the 4 parts, with all the spaces!)
3) Now the tricky part: open the A500APXFlash tool, click on "Bundle market", "view bundles" and select one of the bootloader with a decent recovery (for example the bundle number 17). Type the number of the bundle, and click on "download". You can download it on your pc, or you can download the bundle in a temporary file. It doesn't change much, you choose.
4) You can skip the "BTC selection", and go on. Now follow the instructions on screen, and if your tablet get in apx mode maybe you are lucky enough to recover it.
I don't remember if you have to install the Iconia drivers in advance, but maybe you already have them on your pc.
If you manage to flash the bootloader, then you could flash whatever rom you want. If something is not clear, feel free to ask.
omniastrider said:
I know that feeling...It's non easy, even for those who knows a bit of pc and electronic devices (like me). In these days I have tried all I could try in order to revive the Acer of my friend. At one point it didn't even show the Acer logo, neither anything on screen, only the power light on. I suppose that the bootloader was corrupted somehow. So, if you wanna try, you will need:
1) the CPUID of your tablet. For this you can use, if you have ever connect the tablet to your pc (if you haven't it's much more difficult!). Double click on USBdeview.exe, click on "edit" and then on "find" (or simply CTRL+F). Search for "Acer Iconia" and then double click on the result. Now copy the serial number somewhere.
2) If you got the cpuid you can get the SBK (copy the serial numer , and click on "generate my SBK". Now copy all the SBK and paste it on notepad or similar. All the 4 parts, with all the spaces!)
3) Now the tricky part: open the A500APXFlash tool, click on "Bundle market", "view bundles" and select one of the bootloader with a decent recovery (for example the bundle number 17). Type the number of the bundle, and click on "download". You can download it on your pc, or you can download the bundle in a temporary file. It doesn't change much, you choose.
4) You can skip the "BTC selection", and go on. Now follow the instructions on screen, and if your tablet get in apx mode maybe you are lucky enough to recover it.
I don't remember if you have to install the Iconia drivers in advance, but maybe you already have them on your pc.
If you manage to flash the bootloader, then you could flash whatever rom you want. If something is not clear, feel free to ask.
Click to expand...
Click to collapse
I hooked the tablet up to my pc and saw the term APX pop up at the bottom right of the pc screen, like any new usb device does.
I ran usbdereview in section 1 of your instructions. Found APX in the list, double clicked and it brought up very little info about the device, but no serial number. Is the serial number on the original box the box the tablet came in possibly be the same serial number I might be trying to find? Cause I have the original box with all the bar code label info.
I won't go any farther until I hear back from you.
Thank you very much for attempting to walk me through this process, it really means a lot.
By the way, I'm a pc guru too, on a hardware platform mostly. I've built may puters and enjoy overclocking them to see how far I can push them, but when it comes to phones and tablets, I'm lost.
Thanks again.
Velocity_Stack said:
I hooked the tablet up to my pc and saw the term APX pop up at the bottom right of the pc screen, like any new usb device does.
I ran usbdereview in section 1 of your instructions. Found APX in the list, double clicked and it brought up very little info about the device, but no serial number. Is the serial number on the original box the box the tablet came in possibly be the same serial number I might be trying to find? Cause I have the original box with all the bar code label info.
I won't go any farther until I hear back from you.
Thank you very much for attempting to walk me through this process, it really means a lot.
By the way, I'm a pc guru too, on a hardware platform mostly. I've built may puters and enjoy overclocking them to see how far I can push them, but when it comes to phones and tablets, I'm lost.
Thanks again.
Click to expand...
Click to collapse
Unfortunately the serial numbers are not the same....
Now, if you can't find the cpuid using usbdeview, there is another option, you have to use Linux! Here is the guide to follow to get the cpuid. After obtaining the cpuid, the rest is pretty easy. I hope this will help!
omniastrider said:
Unfortunately the serial numbers are not the same....
Now, if you can't find the cpuid using usbdeview, there is another option, you have to use Linux! Here is the guide to follow to get the cpuid. After obtaining the cpuid, the rest is pretty easy. I hope this will help!
Click to expand...
Click to collapse
I got lost pretty quick.
This is how far I made it: I downloaded Ubuntu 14.04.2, burned the image to disc, ran it live as a trial (wow, it's different than windows), used the embedded Firefox to install all of the needed libusb (not sure I did all that correctly).
The thread said "grab the code eppeP posted and save to to a text file as apx.c", so that is where I got lost.
I restarted the PC to come back here for more guidance.
I'm also unclear on the following from where I left off in the guide "fire up terminal, brouse to where the apx.c file is ........ect" What terminal are they talking about? How do I get there?
Then farther down in the thread it says "run the following commands: sudo su gcc apx.c -o apx -apx -lusb-1.0 ............ How do run these commands?
Like I said, I'm lost and very sorry I can't grasp this.
Velocity_Stack said:
I got lost pretty quick.
This is how far I made it: I downloaded Ubuntu 14.04.2, burned the image to disc, ran it live as a trial (wow, it's different than windows), used the embedded Firefox to install all of the needed libusb (not sure I did all that correctly).
The thread said "grab the code eppeP posted and save to to a text file as apx.c", so that is where I got lost.
I restarted the PC to come back here for more guidance.
I'm also unclear on the following from where I left off in the guide "fire up terminal, brouse to where the apx.c file is ........ect" What terminal are they talking about? How do I get there?
Then farther down in the thread it says "run the following commands: sudo su gcc apx.c -o apx -apx -lusb-1.0 ............ How do run these commands?
Like I said, I'm lost and very sorry I can't grasp this.
Click to expand...
Click to collapse
Sorry if I didn't answer before, but I was a little busy...So, Linux can be a little tricky, especially if you're not a developer (I learned something in school). By the way, all you have to do is to install those softwares, and then compile this piece of code, using gcc (the Gnu C Compiler). The linux terminal is basically like the Dos terminal, known as command line terminal, as you may know. There may be many kind of terminals in the Linux environment, one of the most used is the Bash Shell. In Ubuntu you can open a terminal by pressing CTRL + ALT + T.
So, just to be sure to be clear:
1) save this code in a file called apx.c
2) Boot Ubuntu, install GCC, lsusb, libusb-1.0.x, libusb-1.0-dev
3) Open the terminal, change the "working directory" with the "cd" (it's "change directory" in short) command. You have to get to the directory where the apx.c file is.
4) Run the following commands
sudo su
gcc apx.c -o apx -lusb-1.0
5) Next, pop your tablet into APX mode - plug in microUSB, hold the RESET button, and press power for around 4 sec
6) Run the following commands (assuming same root terminal permissions. If not run sudo su beforehand)
./apx
If all went well, you should obtain the cpuid, or whatever it's called. Don't forget to write that damned number somewhere (even taking a screenshot or a photo of the screen!!). I hope this can help you.
Just a minor update to what I've done so far, with questions. LOL
I decided to load Ubuntu as a side OS on my old laptop, which Vista resides on. I didn't want to screw with my tower in case of a crash, but wanted to retain my downloads and work instead of working on a *live" platform. (not knowing anything about dual boot OS)
Went well I guess, but Ubuntu takes over as the main OS if no action is taken on the boot screen, then if action is taken and you don't log into Windows, Ubuntu resorts back and loads. (lame IMO)
Ubuntu does not recognize any kind of wireless signal and wanted me to set it up manually (like I know all the numbers to make this happen, not), so I just hooked a CAT5 cable from the living room router for my next steps.
I attempted to to download the files mentioned, but remembering when I was running the *live DVD" there was a Ubuntu site for software packages, so I went there to grab what I needed. (I think this method was a fail)
When on the Ubuntu package site, I had the option of AMD64 and i386 for each file, I chose the AMD64 first and it gave a error window, then I followed up with the i386 and got nothing but a window with the circular icon and nothing in the window after that, so I closed the window.
I really have no idea if any of the downloads and installs actually work at this point. The laptop does have Intel hardware, so I'm thinking maybe the AMD64 software error-ed out because of that, but it doesn't explain why I never got a confirmation running the i386 software.
Should I have just stayed away from the Ubuntu site all together and just installed for a basic Linux system?
I'm done for tonight, but on vacation for the next week, so hopefully I can gain some ground and move forward to revamp this bricked Acer tablet.
I really appreciate your help and patients you've provided me to this point.
Now I'm really stuck.
I saved that code on my windows desktop and in Ubuntu desktop - as a windows text file. (not sure if that is the correct way)
Anyway, I did open the terminal using the 3 keys as described.
It shows: user [email protected] name:~$
I can't navigate away from that prompt....... I get: Bash: command not found or file or directory not found.
I started by using: cd/home/user name/Desktop/APX and various combinations.
Man I feel dumb.
We could try another approach: you could create a new file on the Linux desktop called "apx.c", and paste into it the source code. Then, using the command "ls" (which is the same dos "dir" command) and "cd" you could find the path to the file.
I report here some commands I used to compile the application needed to get the cpuid:
[email protected]:~$ sudo su
[sudo] password for white:
[email protected]:/home/white# ls
Desktop Downloads Music Public Videos
Documents examples.desktop Pictures Templates
[email protected]:/home/white# cd Desktop
[email protected]:/home/white/Desktop# ls
apx.c
[email protected]:/home/white/Desktop# apt-get install libusb
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libusb
[email protected]:/home/white/Desktop# apt-get install libusb-1.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'libusb-1.0-0' for regex 'libusb-1.0'
Note, selecting 'libusb-1.0-0-dbg' for regex 'libusb-1.0'
Note, selecting 'libusb-1.0-0-dev' for regex 'libusb-1.0'
Note, selecting 'libusb-1.0-doc' for regex 'libusb-1.0'
libusb-1.0-0 is already the newest version.
libusb-1.0-0 set to manually installed.
The following NEW packages will be installed:
libusb-1.0-0-dbg libusb-1.0-0-dev libusb-1.0-doc
0 upgraded, 3 newly installed, 0 to remove and 90 not upgraded.
Need to get 245 kB of archives.
After this operation, 1,795 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://us.archive.ubuntu.com/ubuntu/ trusty/main libusb-1.0-0-dev amd64 2:1.0.17-1ubuntu2 [54.7 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu/ trusty/main libusb-1.0-doc all 2:1.0.17-1ubuntu2 [115 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu/ trusty/main libusb-1.0-0-dbg amd64 2:1.0.17-1ubuntu2 [76.0 kB]
Fetched 245 kB in 3s (74.4 kB/s)
Selecting previously unselected package libusb-1.0-0-dev:amd64.
(Reading database ... 163905 files and directories currently installed.)
Preparing to unpack .../libusb-1.0-0-dev_2%3a1.0.17-1ubuntu2_amd64.deb ...
Unpacking libusb-1.0-0-dev:amd64 (2:1.0.17-1ubuntu2) ...
Selecting previously unselected package libusb-1.0-doc.
Preparing to unpack .../libusb-1.0-doc_2%3a1.0.17-1ubuntu2_all.deb ...
Unpacking libusb-1.0-doc (2:1.0.17-1ubuntu2) ...
Selecting previously unselected package libusb-1.0-0-dbg:amd64.
Preparing to unpack .../libusb-1.0-0-dbg_2%3a1.0.17-1ubuntu2_amd64.deb ...
Unpacking libusb-1.0-0-dbg:amd64 (2:1.0.17-1ubuntu2) ...
Processing triggers for doc-base (0.10.5) ...
Processing 32 changed doc-base files, 1 added doc-base file...
Setting up libusb-1.0-0-dev:amd64 (2:1.0.17-1ubuntu2) ...
Setting up libusb-1.0-doc (2:1.0.17-1ubuntu2) ...
Setting up libusb-1.0-0-dbg:amd64 (2:1.0.17-1ubuntu2) ...
[email protected]:/home/white/Desktop# gcc apx.c -o apx -lusb-1.0
[email protected]:/home/white/Desktop# ./apx
Error: Failed to open device! //failed because there wasn't any tablet attached!!!
Click to expand...
Click to collapse

Categories

Resources