Help - Search - Members - Calendar
Full Version: Problem flashing from Linux
OESF Portables Forum > Model Specific Forums > Gemini PDA > Gemini PDA - Linux OS

I posted this to also posting here in case someone ran into this problem:

I'm stuck trying to flash Linux (or rather trying to read back the NVRAM partition - I haven't gotten to actual flashing yet).
I'm running into a BROM error, but it does not seem to be the same BROM error most people are running into.

I have no Windows devices so I only tried the Linux flash tool.

As far as I can tell I've read all available resources on this, but this is the first Android device I tried to flash so it's likely I'm missing something.

Some notes:
- I did try adding the udev rules as described at, one by one, on Ubuntu and Manjaro systems. Didn't help. I also added my user to the dialout (Ubuntu)/uucp (Manjaro) groups.
- I'm trying to flash the current Android+rooted Android+Debian TP firmware for X27 (I checked that my Gemini is X27) from here:
- Post by user gidds here: seems to be running into the same error.

I started out with the guide here:, with a scatter file generated by the partition tool as referenced from here: .

I started by trying to backup the NVRAM partition as in the guide above, and went exactly according to the instructions ('click the Read Back button, connect your Gemini to your PC and restart the Gemini')

Upon the reboot I got a 'BROM' error as mentioned at the beginning of the guide, so I continued by following the linked forum topic ''.

The error:


USB port is obtained. path name(/dev/ttyACM0), port name(/dev/ttyACM0)
USB port detected: /dev/ttyACM0
Connect BROM failed: STATUS_ERR
BROM Exception! ( ERROR : STATUS_ERR (-1073676287) , MSP ERROE CODE : 0x00.

Note that this is not the same error as described - in fact, looking at the STATUS_ERR value, it looks like some kind of uninitialized value/integer overflow?

This was on a Ubuntu 17.10 system.

I tried all the instructions from post;postcount=153 (adding my user to the dialout group, and creating the udev rules, one by one) - with the difference that instead of downloading the logo file I always tested by trying to back up the NVRAM partition - with the same steps as before. I kept getting the same error. I also tried ideas posted later in that forum topic.

This same error I'm getting was also encountered by an Arch user on the next page in the same thread, and the solution for them was running as root. This did not work for me (tried sudo, running directly as root, as well as normal user - which should work since I added my user to the dialout group as mentioned above).

Following this I also tried all the same steps on another machine running Ubuntu 16.04 (where I added missing libpng to make the flash tool work) and on the original machine with Manjaro 17.1.10- where I used the Arch-specific instructions from the forum topic.

I also tried using USB 2.0 port on my PC as it was mentioned WRT some other issue but I don't see how that would affect this.

I keep getting exactly the same error in all these attempts, so the problem is probably somewhere else.

Currently I'm still stuck at the point where I'm trying to readback the NVRAM partition, with the same error as above - did not try to flash anything yet.

Sorry for the wall of text, tried to include all the details.

Did anyone run into this / am I doing anything wrong?

I have the exact same problem, tested on:

- ArchLinux 3 different laptops + 1 desktop
- Windows
- Ubuntu 16.04

In my opinion it's a hardware problem (I think).

Longer analysis

After long testing and search I found one common problem in all the setups - GEMINI is discovered by Linux/Windows but for unknown reason it instantly disconnects. In my kernel logs I have (on all machines):

cdc_acm 2-1.2:1.0: ttyACM0: USB ACM device
usb 2-1.2: USB disconnect, device number X

Thats why I think it's a hardware problem.... :-(
I have managed to get around this a few hours ago, try if this helps you:

In the last post in this topic: rogalian flashed their gemini by a flash tool built from source on Debian 9.

So I booted Debian 9 from USB, used the exact same commands from that post and launched the flash tool.

NVRAM readback worked, I tried it twice just to check if it works reliably, and then I continued flashing according to the guide.

I now have a working Debian on the Gemini.

I have no idea what helped - some Debian specific config, maybe some changes in the flash tool source since the official build or maybe there even is a hardware issue and it just didn't happen this time.
Thank you for the tip, I will try ASAP!
@kiith - thank you! I dont know why but as you instructed it worked on live debian! Thank you verry much for the tip!
If /dev/ttyACM isn't created, you may have to build the kernel with USB_ACM=m.
FWIW I flashed with a plain desktop computer with plain Ubuntu 16.04 with zero tweaks besides installing that missing lib that the flash tool requires.

I used sudo directly, never even tried it without.
QUOTE(skmakine @ Jun 17 2018, 02:45 PM) *
FWIW I flashed with a plain desktop computer with plain Ubuntu 16.04 with zero tweaks besides installing that missing lib that the flash tool requires.

I used sudo directly, never even tried it without.

I too have successfully flashed from Linux (Mint 18.2) can't remember if I used sudo though! I had some BROM problems initially but it turned out the problem was I was using the USB-C lead from my Wileyfox not the Gemini supplied one. What was confusing me was that I was seeing the Gemini and able to transfer files no problem with the Wileyfox cable (and charge) but not use the flash tool. I tried the fixes listed above but once I switched cable the Gemini was instantly recognised in the flash tool and worked a dream.

Not all USB-C cables are the same is my lesson for the day!
someone wrote up how to get it to work
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2019 Invision Power Services, Inc.