Frequently asked questions about the Bugjaeger app

1.) My target device is not connecting. It's not showing up in the device list after I plug in the USB OTG cable

Ensure that you've enabled developer options and enabled USB debugging on your target device. See official docs for more details about how to do this.

Make sure that you authorized USB connection on the host and after that you also need to authorize ADB connection on the target.

If it's still not working, try a different USB cable.

If you're connecting both devices through USB C, check Android settings to make sure the right role is assigned to each end of the cable (look for "USB Preferences" and "Controlled by").

For target devices with Android 10 and higher you might also need to configure the target as PTP in USB settings.

Try to match host and target that support same USB standard (e.g. USB 2.0, USB 3.0).

If that still doesn't work, install ADB on your computer and check if you can establish ADB connection between your computer and your target. If you're able to execute ADB commands from your computer, try to execute the following command

adb tcip 5555

After this, try to connect to your target from Bugjaeger. There's a +plug icon at the top right in the toolbar next to device list. You can find the IP address of your target in advanced WiFi settings. This way you can find out if the issue is the USB connection or the ADB server running in Bugjaeger.

If you insist the issue is in my app and not in your devices, send me logs while you're connecting the devices (see #9. on how to report bugs).

Note that some low-end devices can have issues connecting or keeping the connection stable. That means that you might be able to connect, but commands don't work reliably or you get disconnected after some time. In this case you might be able to see the following error - ERROR: n = -1, errno = 12 (Out of memory) in logcat. For this I can only suggest to try WiFi connection instead of USB (see below) or upgrading your device.

2.) What is a "target" device and "host" device?

Host (master) is the Android device where you've installed Bugjaeger. Target (slave) is the device you want to control through the Bugjaeger app. Host and target are usually connected via USB cable or WiFi, but sometimes the same device can be host and target at the same time (see #11.).

3.) Cannot connect Samsung device in fastboot mode. It's showing null (or no device showing up) when I reboot to bootloader on my Samsung device.

Samsung devices don't support fastboot.

Samsung developed their own thing. There are tools that allow access to bootloader commands on Samsung devices, like Odin and Heimdall.

Unfortunately, there is no official open source support for this from Samsung. There's no official Samsung-supported protocol. So with any new Samsung device or with any update there's a risk that these tools won't work at all.

That is very a fragile and hacky way of functioning. Google is already keeping me busy with constant and sometimes extreme changes with each update of his technologies, so I definitely don't plan to invest my time into this.

There probably won't be any flashing support for Samsung devices in Bugjaeger.

4.) What fastboot commands are supported?

Start the fastboot shell by tapping on the floating action button (<>) on the bottom right in "Fastboot" tab (a device in fastboot mode needs to be connected via USB first). Then run the following command in fastboot shell

fastboot --help

This only lists commands that host could theoretically support. What you can actually use will be specific to your target (see #5 and #6 for more info about situation when the command isn't working).

Also note that some commands require additional external tools (e.g fastboot -w might require the formatting tool mke2fs to create sparse format). I didn't bundle these tools with Bugjaeger yet. So these kind of fastboot commands won't work. If it won't get too complicated and there will be enough demand, I'll try to include these tools in future updates.

5.) Fastboot command failed with error message - "Write to device failed". How can I fix it?

If this happens during flashing, ensure the image file is not corrupted and compatible with your target.

Try a different USB cable. Preferably shorter one.

Make sure that you don't use any kind of USB hub when connecting devices. Only direct connection.

Check if both devices support the same USB standard (e.g. USB 3.0 vs USB 2.0). Try to match host and target.

Don't move around the devices and don't touch the cable while executing fastboot commands. Make sure devices are laying stable on your desk.

The app is using a relatively recent fastboot version (from AOSP 10), but there could be compatibility issues with your target (if the device is very old, or OEM decided to customize something). Check if any other fastboot commands work.

If you think that this is caused by an issue in my app, see #9.) on how to report bugs.

6.) Fastboot command not working on device XY/Kung-fu. Help!

The most probable reason why this is happening is because you are just a lazy, ignorant, and self-centered person who didn't do proper research before playing with fastboot.

The commands available will be specific to your target (specific to model or even specific to mobile provider). On some devices (like Samsung devices) fastboot commands won't work at all.

You think I'm now going to run to the store and buy your particular Android device model to figure this out? You think I'll now spend hours researching how to do this for you for free just because you exist? See #8.) for more information.

The best thing you can do is to immediately uninstall Bugjaeger. Or you'll just brick your device.

If you still think that the case I described above is not you and there's something wrong with my app, see #9.) on how to report a bug.

I myself rarely flash partitions on Android devices and if I do, it's always google's Pixel devices that are unlocked and have all necessary commands listed in official documentation. It's just not my thing at the moment. Therefore, even if you'd be willing to pay for consulting, I still won't help you with this.

7.) How can I unlock bootloader on device XY/kung-fu? It's not working...help!

Hope you're not trying to send this kind of questions to my email (or trying to predictably manipulate me into answering the questions by posting them as a review on Google Play).

Fastboot protocol is created by Google and your device is additionally configured by the OEM (or even your cell phone provider). I have no influence on what they're doing. My app is only doing what Google and OEMs allow it to do. This kind of question doesn't suggest any technical issues in my app. It just means that you don't know how to do something and that you probably didn't do proper research.

I certainly won't research how to do a specific thing on a random Android device that I don't own and use myself.

You're taking my app for free (or for a minimal fee for the premium version). It took many hours and a lot of effort to create it. And now you're trying to get my personal attention and suck even more from my time for free?

See #6.) and #8.)

8.) This app is terrible! This thing and that thing is not working/it's crashing/terrible UX! How can I make you feel my pain and frustration because I don't get the quality I deserve? I'm immediately posting a bad review...

Before you do anything, here are some points that you should consider

9.) Something is not working (There's a "bug" in your app). Can you fix it?

If it's not a trivial thing to fix, I'll need a lot of information about the bug. Try to send me at least this

Ideally, you'd also send the logs from logcat.

You can see that I need a lot of information to actually fix a bug. The reviews section on Google Play is extremely restricted on what and how much you can post there. It makes me really angry when people try to report bugs through reviews. I can't stand stand complainers that take free stuff and then just leave a useless 3-word review like "Heyyo not workin".

Always send information about bugs to my email - roman@sisik.eu

10.) How to connect through WiFi?

See my blogpost on how to do this

11.) How to make Bugjaeger execute commands on same device it is running (host == target)?

You'll need 2 devices initially to achieve this. You can install Bugjaeger to both devices. Connect both devices with USB cable and execute the command "Connect through WiFi". If you start Bugjaeger on the target device that executed the previous command, you should see an "Emulator" device popping up in the list. This should allow you to execute ADB commands targeted to the same device where Bugjaeger is installed (host becomes target at the same time).

The other option is to connect your device to a computer that has ADB installed and execute

adb tcpip 5555

This is the same thing that Bugjaeger is doing under the hood.

For targets with Android 11 or higher you can also use the pairing option. Just enable "Wireless debugging" in Developer options (Android system settings). Then in Bugjaeger, tap on the connect icon (on top next to connected devices list) and then on "Pair". Then use the pairing information from "Pair device with pairing code" in Developer Options to establish a new connection.

12.) Can I do xy thing with this app?

Probably not.

The app might very well allow to do the thing you asked about. The problem is you!

If you want to know the answer to your question, you need to install the app and figure out yourself.

If you already posted/sent this kind of question, then you are probably just a lazy, ignorant, self-centered person that might not even have enough brain capacity to use this app.

Did you even read the store description carefully? Did you read my blogposts about Bugjaeger?

You probably didn't even install the app to figure out yourself, but you just automatically ask a question in a review/email.

The app has a learning curve which will require you to learn new things and understand the Android-related terminology. There will always be things that you need to figure out. And you already try to ask questions before you even started.

Answering your questions would cost me a lot of time. After giving you a lot of value (this app), spending a lot of time on updates, you give nothing back, but already ask for more (see #8. on how much you are worth to me).

Unfortunately, this app is not for you. Just ignore it.

13. Can I flash xy ROM?

See #12

14. I have an idea how to improve the app. How can I suggest this feature/improvement?

All ideas are appreciated and you can report them directly to my email - roman@sisik.eu.

Note that I'm working on many apps/projects and this is my generic email address. Therefore, please mention that it is Bugjaeger app for which you have suggestions for improvements.

I can't promise that your suggestions will be immediately implemented because I'm always busy with many other projects. But I'll definitely read your email and evaluate if and when it could be implemented.

15. Does your app contain spyware? I used this reputable privacy app XY and it flagged Bugjaeger as spyware...

I saw this kind of nonsense query in my reviews and I can for sure say that Bugjaeger does NOT contain any spyware!

I'm not saying this only about the code I wrote myself. Even the external libraries that I used are from trustworthy sources.

The only reason I can think of why some other "reputable" privacy app flagged Bugjaeger as spyware is because I'm using google's Firebase crashlytics/analytics. But 1) I'm clearly disclosing this in my Terms of Use and Privacy Policy, and 2) I'm only collecting ANONYMOUS technical usage/crash data.

Bugjaeger does NOT collect any information that is ACTUALLY private (not even your email).

Here I also would like to point out the real problem that you probably don't realize. I'm assuming that you're not the president of United States, Elon Musk, or some similar mega celebrity. You're probably a regular guy like me. The main problem is that you are absolutely worthless (like billions other people, including me). From my point of view, you are a zero value individual and your actual private data has zero value to me. But you still assume that somebody wants your precious private data because you are "sooo important".

You are probably just a narcissistic self-centered person who got brainwashed by some of the people/companies riding the current privacy paranoia wave. There are many influential players riding this wave (e.g. EU politicians, Apple, ...), so I can understand that you feel strongly about this (and yourself). The countless privacy/antispyware apps are riding on this wave too.

That being said, I'm using the anonymous data from crashlytics/analytics to fix and improve the app (see sisik.eu/app_privacy and ToU for more info). It is probably the only useful data that I have. The information in your review/email is most likely useless garbage that doesn't contain anything that would help fix/improve the app. I won't allow complainers to use my app without a chance of figuring out what's wrong. So I will keep using the standard Firebase libraries inside Bugjaeger. Take it or leave it.

16. Why is my ADB command that I typed in not working? I typed an ADB command into the interactive shell and an error message is saying something like "adb: inaccessible or not found..."

The interactive shell window allows you to execute shell commands directly on your target with the privileged ADB user. Bugjaeger opens a shell connection with the device (same as if you would execute "adb shell" from your PC). So don't prefix your commands with "adb" or "adb shell", because you are already running adb shell. Just type in the part of your command that is actually a recognized shell command on your target, e.g. "ls /system", or "chmod 755 /data/local/tmp/myexecutable".

17. Screen Share Showing Only Black Screen

Screen sharing functionality can be accessed from the "Screen share" command, or from the "Screencap" tab after tapping on the camera icon in top toolbar.

If it's showing just a black screen, try to return to the initial Bugjaeger screen first. Then go to Settings screen (by tapping on Settings... in the 3-dot menu in top toolbar). There's a "Screencap" section. Try to change the Video resolution to a different value there.

18. Can't Connect My Oculus Quest 2

On Oculus the initial connection is a bit more complicated. For successful connection you'll also need to enable Developer Mode.

For that you should do the following

  1. Install the Oculus mobile app on you phone
  2. Register an "organization" and verify your account at oculus developer portal
  3. Enable Developer Mode in your Oculus mobile app by tapping on Devices, picking your Oculus device, and enabling Developer Mode in Developer Settings
  4. Connect Oculus and your host device (with Bugjaeger installed) through USB cable. If you're using OTG adapter, make sure it is plugged into host device (not into Oculus)
  5. Confirm USB connection popup on host device
  6. Confirm Allow USB debugging? on Oculus

After successful connection a new device labeled as "hollywood" should appear in Bugjaeger.

The USB cable might need to be plugged in while you're wearing your oculus and it's showing the "home screen".

You might also need to confirm data transfer permission on Oculus first, before the "Allow USB debugging" popup appears.

If you have other apps (e.g. Sidequest) on your host device that use ADB USB connection besides Bugjaeger, selecting them as as default for handling USB connection might prevent Bugjaeger from connecting to Oculus later. If you want to use Bugjaeger in that situation, you'll need to either 1) reset the "Open by default" setting in App info for the default app, or 2) connect through WiFi.

See #1 for more tips on resolving connection issues.