Heimdall for Galaxy Player 5.0 - Samsung Galaxy Player 4.0, 5.0

By request, I'm posting linux binary for my fork of Heimdall that seems to work on the Galaxy Player 5.0 USA:
http://www.mediafire.com/?lkwd4a4yo66k7at
It's just the heimdall binary, compiled on Ubuntu 11.10 32 bit. Recommend to install the latest released .deb to get all the dependencies worked out and then overwrite the /usr/bin/heimdall with this version. I don't have a Mac or Visual Studio to be able to compile Mac or Windows binaries..
Source is here:
https://github.com/ambrice/Heimdall

Time to update my flashing instructions.
Thanks for finding the fix! Heimdall's sources have always been voodoo black magic to me.

Thanks! I primarily use 64bit Linux, but on occasion I have to use an OS X machine at school.
Here's the binary for Mac OS X Lion. Users just need to be sure to have libusb 1.0 (methinks, maybe not).

Hey guys... if you can post a Windows binary and a linux64, I can fork Heimdall One-Click for use on the Galaxy Player. This way you guys can make one-click back-to-stock packages or one-click custom kernels.
However, you guys should contact Benjamin Dobell here on the forums to merge the changes upstream.

That would be a great idea. I'm always fearful not to be able to go back to stock.
Sent from my YP-G70

Does anyone have other samsung devices they can test this heimdall on? It works better for galaxy players, but I'd like to make sure it doesn't break other things before merging.

ambrice said:
Does anyone have other samsung devices they can test this heimdall on? It works better for galaxy players, but I'd like to make sure it doesn't break other things before merging.
Click to expand...
Click to collapse
I can try kernel flashing on my GS2 tomorrow.

Just thought I'd let you guys know that I am on it.
I've been quite busy lately so haven't had a lot of free time to properly investigate. I don't want to release a potentially breaking change (for non-Galaxy Player devices). So I'm trying to further investigate what the "partitionType" actually is by reverse engineering the bootloaders.

I've just officially released Heimdall 1.3.2 which addresses the issue. Heimdall should now be good to go with Galaxy Players!
Benjamin Dobell said:
Heimdall 1.3.2 is now available. Here's the announcement and here are the download links.
Happy flashing!
Click to expand...
Click to collapse

Related

Cross compiling for the Nexus One on Linux

Hey All,
I'm curious about compiling a native Linux app for the Nexus One, and wondering what the best way is to go about it in Ubuntu. I found this link for the G1:
http://android-dls.com/wiki/index.php?title=Compiling_for_Android
Since the Snapdragon is also ARM I'm assuming this will work, but is there a decent way to do this on Ubuntu or is my best bet to install Debian in Virtualbox and compile it there?
Thanks,
-Dan
overridex said:
Hey All,
I'm curious about compiling a native Linux app for the Nexus One, and wondering what the best way is to go about it in Ubuntu. I found this link for the G1:
http://android-dls.com/wiki/index.php?title=Compiling_for_Android
Since the Snapdragon is also ARM I'm assuming this will work, but is there a decent way to do this on Ubuntu or is my best bet to install Debian in Virtualbox and compile it there?
Thanks,
-Dan
Click to expand...
Click to collapse
There's a certain amount of vagueness associated with your generalized request.
That said ... ubuntu is sooo very very closely related to debian in the linux fam!
Almost all things described in the link your reference will carry-over/hold-true in ubuntu as they are stated in debian.
But ... the real kicker is the specific app you're trying to compile.
Depending on what the app you want to build depends on ... will determine your overall success. While the reference posted link is insightful, you must understand the need to link against libraries being used. Many of these libraries (at least the basic 'c' ones) you'll find in the AOSP code in android's git repo.
I would suggest taking a look at the "external" projects found in the AOSP code to see how they utilize the makefile setup and build-environment and how they leverage bionic and others to build against.
The way those projects build out, would be essentially what you're looking for .. (I assume) again, I state this without knowing the specific app you have in mind.
Hope that helps.
~enom~
How well would a linux disto made for desktop PCs work with touch screen mouse inputs and no keboard support? (im assuming the Android VK doesnt work when you press on a textbox in a Linux Emulator)
enomther said:
There's a certain amount of vagueness associated with your generalized request.
Click to expand...
Click to collapse
Sorry, I should have been more specific - by Linux native I didn't mean any app in particular, I just meant not a java Android app. I'm really just looking to compile a HelloWorld in C and run it at the shell on the Nexus at this point.
My main concern with the link I posted is that although Ubuntu is based on Debian, Ubuntu does not maintain an ARM version, and the package mentioned in that tutorial is not included in Ubuntu because of this.
So I'm just wondering if anyone has come up with a good solution for compiling for the Nexus in Ubuntu, or if I'm better off installing Debian in a virtual machine.
Thanks,
-Dan
http://android-tricks.blogspot.com/2009/02/hello-world-c-program-on-using-android.html
I think this is more of what I was looking for, I'll build AOSP and try out the agcc script.
-Dan
Another idea: find the Android source wherever Google hides it, I have forgotten, sorry! But they give instructions for setting up a whole ARM cross-compiling environment on x86/x64 Ubuntu, and as I recall, it was really easy, quick and automatic! (so easy, I did it just so I could compile some ARM apps myself, I really didn't need to compile Android, I don't build phones! )
After that, you too should be able to compile your own apps into native ARM binaries.
overridex said:
Sorry, I should have been more specific - by Linux native I didn't mean any app in particular, I just meant not a java Android app. I'm really just looking to compile a HelloWorld in C and run it at the shell on the Nexus at this point.
Click to expand...
Click to collapse
To do this, you need a version of the ARM tools appropriate for your platform and then use them for building a static binary for Linux. You can find such tools at CodeSourcery (http://www.codesourcery.com/sgpp/lite/arm). Given that you sound like you have Ubuntu, then the Linux version from this page, http://www.codesourcery.com/sgpp/lite/arm/portal/[email protected]=lite, would be what you want. The key is to use the --static parm when you build the binary.
From there, just get your binary over onto the target and run it from the command shell.
Remember that static binaries are HUGE. They have to include all library functions linked in.
If you are looking for tiny binaries, look into the NDK and use the BUILD_EXECUTABLE rule for Android.mk.
A few more useful links, but not much that hasn't already been stated in previously referenced links:
http://benno.id.au/blog/2007/11/13/android-native-apps
http://honeypod.blogspot.com/2007/12/dynamically-linked-hello-world-for.html
http://honeypod.blogspot.com/2007/12/initialize-libc-for-android.html

Rooting from Linux?

Anyone got any hints on rooting the SGS2 from Linux? The guides suggest using Odin, which is a win32 app.
As the tar just contains an alternate zImage, is it possible to replace this using adb?
on linux wine is your friend
Chainfire says there is a linux version of Odin called "Heimdall" but recommends not to try it with SGS2 until the developers of "Heimdall" have tested it.... check out the original post for more details:
http://forum.xda-developers.com/showpost.php?p=13357501&postcount=70
ma10 said:
Chainfire says there is a linux version of Odin called "Heimdall" but recommends not to try it with SGS2 until the developers of "Heimdall" have tested it.... check out the original post for more details:
http://forum.xda-developers.com/showpost.php?p=13357501&postcount=70
Click to expand...
Click to collapse
Unfortunately I won't be able to do the testing myself as I don't have access to a Galaxy S II and don't really have the cash to buy one at the moment.
However I'd be surprised if the protocol for the Galaxy S II is any different that the protocol used for any of the other Galaxy S devices. Some devices require a small one line change in code to make the initial handshake work but a failed handshake won't harm your device.

[Q] Making a custom Kernel?

I've had a search and a look around but can't see anything specific enough to answer this.
I have read that the SGS2 uses the new BCM4330 chipset for it's WiFi-N support.
It looks to me that for existing kernels they are using either the existing kernel support or possibly the b43 driver.
I need to find out, and while I have compiled custom kernels in nix in the past, I have never done so in Android, so I'm a little out of my comfort zone here.
I want to compile a kernel where the WiFI driver will support monitor mode, ideally it would be the CM7 kernel with just this extra functionality added, however a number of the tools that I would use to identify the existing configuration do not seem to be available in the standard CM7 build (lspci being one).
I don't want to frack around too much without having read up first so could anyone point me at a good guide for creating my own Android Kernel, even better if the guide was specific to the CM7 version.
Lastly I mostly run a Fedora environment, however the bits I have read seem to suggest a number of tools are only available in a Ubuntu guise (heimdall springs to mind and while I'm sure it's possible to recreate it for Fedora I'm trying to reduce the number of dependencies I'll have to recreate as much as possible). Therefore can I get some advice regarding the least complicated way to generate an Android build environment in Linux.
Thanks
For kernel compilation on android, you can check the several repositories there are for the several kernels. Depending on each kernel/repository/user, you can find a predefined .config inside them, so you can get the basic configuration to compile the kernel, don't know if CM7 has it in its repository...
As for the enviorment, I haven't tried compiling a kernel, but I did compile some ROM on Gentoo Linux, so I suppose it could also be done in Fedora without many problems. The main thing about using Ubuntu is that is very extended, so they're using it as main Linux base, but that doesn't mean it can't be done in other linux distros. You can check CM7 wiki for building from source to install the required packages for your enviorment. In my case I cross checked the Ubuntu packages with Gentoo to install gentoo's version of that packages/tools to be able to compile without problems.
Also in the case of building kernels, you need a toolchain to be able to compile, but there are several webs/tutorials with info on how to use that.
EDIT: You have a complete tutorial for CM7 in their wiki with the needed packages for both Debian and Red Hat based distributions...
Very useful, thanks for the info.
Very useful info.
Hi,
I'm interested in compiling a custom kernel to support wifi monitor mode, but I read in a previous post that it can be a hardware limitation which makes it impossible to use monitor mode. Can anyone confirm that? Maybe a statement/answer from Broadcom?
I'm just asking it because I don't want to start playing with kernel compilation and driver hacking if it can't be done because of some missing code on the chipset or something.
Thanks.
kepten said:
Can anyone confirm that? Maybe a statement/answer from Broadcom?
Click to expand...
Click to collapse
I doubt Broadcom will answer that, but you can try to search the chipset info in Broadcom's web and see if its supported. Also you can check kernel modules if they can compile against that version.
AzureusPT said:
I doubt Broadcom will answer that, but you can try to search the chipset info in Broadcom's web and see if its supported. Also you can check kernel modules if they can compile against that version.
Click to expand...
Click to collapse
Well, Broadcom's website says nothing about monitor mode but I've found a driver (https:// github.com/cyanogen/galaxy-2636/blob/ics/drivers/net/wireless/bcm4330/src/include/wlioctl.h#L1153) which at least mentions it. This is for Galaxy Tab 10.1 which has the same chipset so maybe someone with a Tab 10.1 could verify if monitor mode works with that kernel/driver? ??

[Q] running OS Ubuntu on Samsung Galaxy S Wifi 4.0 a.k.a Samsung YP-G1CW/XSE

Hello guys, before the question, i am sorry if i am little english. i look some website that running Ubuntu on Android Device.
I am sorry i am new user in this site, so i can't using outside links in this posting, but you will find if you search on google about this.
i have some question about this case:
1. i am using Samsung Galaxy S Wifi 4.0 a.k.a Samsung YP-G1CW/XSE what ubuntu can running on my device?
2. How with OS Windows? what windows can running on my Device? Windows XP may be, or Windows 7..
Please Help me, i need to running other OS on my Android Device.. Thank's Before for your answer
There are two ways to run another OS on your device: chroot and qemu. You can run Ubuntu (or any Linux distribution that supports ARM processors) with little effort using the chroot method. Look up "Ubuntu installer free" in the store and it will walk you through. It may not work on the stock kernel, so make sure you have the kernel from these forums that fits your device.
The only way to run an OS like Windows is by virtualization through qemu, because it doesn't natively support the chip in your Galaxy S Wifi. This method requires a version of qemu compiled for ARM and additional libraries, which I have not gotten to work successfully on this device. (Anyone else?)
So I'd suggest just trying to get Ubuntu running. It won't be very fast or easy to use on a device that small, but it will work.
Sent from my YP-G70
Mevordel said:
There are two ways to run another OS on your device: chroot and qemu. You can run Ubuntu (or any Linux distribution that supports ARM processors) with little effort using the chroot method. Look up "Ubuntu installer free" in the store and it will walk you through. It may not work on the stock kernel, so make sure you have the kernel from these forums that fits your device.
The only way to run an OS like Windows is by virtualization through qemu, because it doesn't natively support the chip in your Galaxy S Wifi. This method requires a version of qemu compiled for ARM and additional libraries, which I have not gotten to work successfully on this device. (Anyone else?)
So I'd suggest just trying to get Ubuntu running. It won't be very fast or easy to use on a device that small, but it will work.
Sent from my YP-G70
Click to expand...
Click to collapse
Thanks Very much for your solution, i will try search, qemu method or chroot methode.. hope i will can do it, because i am new for it. i am not a developer, or programmer. i just want to know more about gad-get
so thanks a lot.

[Q] Is it possible to install Linux Hardware drivers on Android?

Hi guys!
I hope I finally get a decend answere here... seems like german forums are of no use for such kind of questions
Here is my issue:
I got a wacom graphic tablett wich I want to use on my Android Tablet PC. Of course Android hasn't got a working driver for it, so thats why I want to install an opensource linux driver. So my first question is, if this might be possible. The linux driver is made for a 2.6 Kernel which of course is not complete the same as my 2.6 android Kernel, but are they similar enough to at least give it a try?
And I got an other question: A grafic tablett is you know... nothing else as a weird mouse so am I might be able to tell Android that it shoud use a simple mouse driver for the graphic tablett? Because my mouse is running well on it.
So thats it. Any help is appreciated!
Got any news on that? I'm facing a similar issue, but still haven't found an answer.
Doesn't work like that. Android won't know what to do with the driver or the device.
mc.escher said:
Got any news on that? I'm facing a similar issue, but still haven't found an answer.
Click to expand...
Click to collapse
You can't use the same PC drivers, because they are developed for a different platform (i386 or amd64 on PC, ARM on mobile devices).
RoberGalarga said:
You can't use the same PC drivers, because they are developed for a different platform (i386 or amd64 on PC, ARM on mobile devices).
Click to expand...
Click to collapse
063_XOBX said:
Doesn't work like that. Android won't know what to do with the driver or the device.
Click to expand...
Click to collapse
I have the linux drivers for the chipset of my usb-ethernet converter (MCS 7830).
I was thinking about cross compiling them as a module, with the arm compiler that comes with Android NDK, and then give an "insmod" on adb shell. Is it possible? Have you guys ever heard about something like that?
Thank you!
mc.escher said:
I have the linux drivers for the chipset of my usb-ethernet converter (MCS 7830).
I was thinking about cross compiling them as a module, with the arm compiler that comes with Android NDK, and then give an "insmod" on adb shell. Is it possible? Have you guys ever heard about something like that?
Thank you!
Click to expand...
Click to collapse
Try it, but I think it's not easy as that (problems with libs, memory locations or stuff like that).
RoberGalarga said:
Try it, but I think it's not easy as that (problems with libs, memory locations or stuff like that).
Click to expand...
Click to collapse
I actually did it today! Dude, that thing was tough for me, I'm such a noob on compiling custom kernels and stuff like that.
But it's not exactly using a linux driver on an android. I found a custom kernel that had the needed drivers (I'm not sure if those were the same linux drivers, or if they were adapted to android), but they weren't added to the kernel image as default. So, I compiled them as modules. I had to set a few variables on the .config file as "m", some of them weren't even there, and I had to figure out what were missing and paste them out.
Finally, after several hours struggling with compilers, makefiles and .configs, I did an "insmod mii.ko", "insmod usbnet.ko" and "insmod mcs7830.ko" and everything went fine, and now I have my usb-ethernet dongle working on my samsung galaxy s2 i9100.
I'll try to write a tutorial with all the steps I took until I reached success.
mc.escher said:
I actually did it today! Dude, that thing was tough for me, I'm such a noob on compiling custom kernels and stuff like that.
But it's not exactly using a linux driver on an android. I found a custom kernel that had the needed drivers (I'm not sure if those were the same linux drivers, or if they were adapted to android), but they weren't added to the kernel image as default. So, I compiled them as modules. I had to set a few variables on the .config file as "m", some of them weren't even there, and I had to figure out what were missing and paste them out.
Finally, after several hours struggling with compilers, makefiles and .configs, I did an "insmod mii.ko", "insmod usbnet.ko" and "insmod mcs7830.ko" and everything went fine, and now I have my usb-ethernet dongle working on my samsung galaxy s2 i9100.
I'll try to write a tutorial with all the steps I took until I reached success.
Click to expand...
Click to collapse
Dude have you written the tutorial yet?

Categories

Resources