yashsingh1/xdaforums huggingface dataset:
[Fire TV Original Android Development] boxster03:
@Pro-me3us activating ctrl-shift-C/V worked to paste in CMD # prompt with ctrl-shift-V. Thank you. (That was the only one that was unchecked.)

Installed LM v1.1.6 (Had to rename LM v.1.1.6 apk file because adb push gave an error I think because the apk file name had space dash space in the middle). Picked LeanKeyboard in Other Settings. (in Other Setting, there was another item: Amazon OS Updates "status unblocked" but I guess that is not relevant to us and just ignore, right?. Besides picking the LeanKeyboard, I left everything else alone in LM).

I see the new keyboard layout in Downloader app but in Kodi seems same as before (Kodi already had qwerty layout I believe). scrcpy again rebooted my Cube so I should probably not use it if there is a chance it messing the Cube somehow. So may be I should stick to using "input text" command if I have to input long text strings with paste now working.

Appreciate all your help in these threads.
[Fire TV Original Android Development] Pro-me3us:
Yeah, you can ignore that, that status might be based on whether all 3 ota packages are disabled. The unlock script installed a Magisk module that hides the OTA package from FireOS, rather than directly disable it through the package manager.

Sorry, you're right, I forgot that Kodi uses it's own onscreen keyboard. So I don't actually know of a way to copy & paste with ScrCpy in that app. The input text command is probably as easy as any other solutions. There is the Kodi web interface, but even with that you are still opening a 'send text' box and sending text, similar to input text.

It's hard to say what the problem is, it's probably different from gazelle. Try running the latest version of ScrCpy. If you experience the same issues, try an older version. You could also ask the ADBLink developer about it, he might be able to help you debug the problem.[/USER]
[Fire TV Original Android Development] boxster03:
@Pro-me3us Thank you for your reply.

So in the process, I was looking at a few apps on the Cube and wonder if I really need to keep them / if I may need to use them at some point. If you are familiar with them/ can comment at your leisure:

I believe these I had gotten from TDUK.

1. Debloat Toolbox

2. Fast Task Killer

3. TDUK Update Wiper

Learnt from you that no point clearing cache when it is trying to improve efficiency and Android manages memory well and no need to kill processes.
[Fire TV Original Android Development] Pro-me3us:
Not sure I'm familiar with all these, but I can take a guess

1) Debloat Toolbox - Probably SweenWolf's app for disabling apps without the ADB commandl ine. Could be useful for tweaking and convenience, up to you.

2) Fast Task Killer - Can be done more conveniently with Xposed Edge. Map 'close all background apps' to any remote button (eg long press menu button).

3) TDUK Update Wiper - Probably runs pm clear com.amazon.device.software.ota. No need for this, OTA updates are blocked. This app on it's own won't do anything to stop an update, so I hope it comes with some real update blocking instructions.
[Fire TV Original Android Development] boxster03:
3) Yes I believe Update Wiper is a quick one click solution to clear updates that have been downloaded and waiting to be installed. It also has 2 other commands but won't be of any point for that app in unlocked cube2.

2) I use Wolf Launcher so the menu button seem to be taken (including long press). What do you think might be a good button choice to map 'cose all background apps' in xposed edge? Also can that action be able to display something that it did something. For example, Fast Task Killer shows a temporary screen with info what it did.

Edit: OT: Can you also comment Cube 2nd gen vs 3rd for unlock and use - Thank you!
[Fire TV Original Android Development] Pro-me3us:
There's no double tap or long press menu button functions associated with Wolf Launcher. Either are free for mapping. The menu button was a suggestion, you could add a double tap or long press function to any button you want. It might be possible to have a toast message appear that shows the amount of free memory when closing background apps, but it would require the pro version of Xposed Edge to get multi-actions and adb shell command capabilities. You can also check System Status Monitor, toggle system X-ray and it will show you the available free memory.

There's no unlock for the 3rd gen Cube, just temp root. Use case is going to depend on the user. Temp root is enough to use a custom launcher and do minimal button remapping. That's good enough for most people. Unlock means more recovery options, being able to update firmware, USB booting, full Magisk Zygisk support.
[Fire TV Original Android Development] boxster03:
@Pro-me3us

Did I ever say what a fantastic job you have done here? And a great set of clear instructions.

I just did the Option(3) Bootloader unlock on a Cube2 I got off of ebay - another one of the same refurb units sold at Woot last year, unopened package. This one seems new - not even the plastic over the Cube's connection points poked through as the one I received last year from Woot. Fire OS 7.2.9.2/2984 : same as the previous one.

I think I did the Bootloader Unlock correctly. now adb shell gives me>> raven: #.

Does that mean all's well?

I ask because I mistyped an unnecessary space when copying one of the 7 files (I had to copy one by one). I realized the error when the "No such file or directory" showed. But then I saw "7 files pushed" which I wasn't sure what it meant. Did it somehow move the 7 files I am supposed to copy over? Anyway then I redid that copy correctly and proceeded.

adb push raven_root_shrinker/* /data/local/tmp/ to copy all 7 files in one shot didn't work for some reason (same thing I recall the last time aslo). So I am wondering if my command was correct or not. I am attaching the cmd screen and if you have a minute to take a look. It is not important but just to understand.

Thanks again! Now I am going to do the other stuff Custom Launcher etc. as the main task is taken care of.

Edit: ... also what is the best place to download the Wolf Launcher apk?
[Fire TV Original Android Development] Pro-me3us:
Yeah, it must be fine since you have root (raven:/ #). The root install script has a number of checks including verifying all the required files are present, not corrupted, and the firmware is PS7929 or below. Verify Magisk is working and that updates are blocked, and you are good.

I think Amazon replaces the outer plastic shell on refurbished Cubes, and that PS7229 is the latest firmware on any new/sealed Cube. You can get an idea of how used it is by checking the number of times it was rebooted:

raven:/ # idme count bootcount

SweenWolf linked to this post in the LM thread to get the final version of Wolf Launcher.
[Fire TV Original Android Development] boxster03:
@Pro-me3us that command returned:

Writing idme data...

raven:/ #

Whatever that means? not any number.

Thank you for the Sweenwolf link.

Yeah magisk has the enabled ota update block.
[Fire TV Original Android Development] Pro-me3us:
Sorry misremembered that.

raven:/ # idme print bootcount

run this to undo the change from the previous command

raven:/ # idme fos_flags 87
[Fire TV Original Android Development] boxster03:
The count returned 46. So about 40 as I think I rebooted at least 6 times.

Thank you for the reversal command of the prev command. It returned the same as before,. ..so I assume it undid what was done/written. (I don't know what fos_flags is).

Edit:

@Pro-me3us , Not sure what went wrong installing Terminal systemizer v17.4.1. I rebooted after install and magisk shows it selected but:

adb shell

systemize

command is giving error as follows:

! Busybox not detected

Please install one (@osm0sis' busybox recommended)

df: Unknown option m (see "df --help")

df: Unknown option m (see "df --help")

BusyBox not found!

Set SELinux Enabled: false

SELinux Status: Enforcing

1 - Systemize Installed Apps (Listed)

2 - Systemize Installed Apps (Enter label)

3 - Systemize given APK

s - Set SELinux

d - Donate

0 - Exit

[CHOICE]:

Can you help w/ what's gone wrong? I didn't experience this last time around.

Appreciate your replies and help!

Edit2:

Well I went forwards regardless picking 1 and then picking 2 for system/priv-app for Wolf Launcher.

After reboot Wolf Launcher comes up : looks it worked. I just don't remember I noticing an error last time. May be it was the same then. Thank you.
[Fire TV Original Android Development] Pro-me3us:
Yeah so it's used, hard to say how much. The regular user may only reboot their Cube once every couple weeks or more.

I don't use Terminal Systemizer much, or remember seeing any error when I used it. If it does cause any issues, this thread might be able to help.

One note about having both a custom launcher and Amazon Launcher enabled at the same time, the LiveTV app can sometimes be problematic. I'd disable it if you don't use it (pm disable-user com.amazon.tv.livetv). If you do use it, clear the app after setting the custom launcher as the default launcher (pm clear com.amazon.tv.livetv).

The LiveTV app can start to hammer FireOS, taxing the CPU and slowing everything down. This has something to do with Amazon Launcher being enabled but not the default launcher. Clearing the LiveTV app fixes it, but I've seen it happen again afterwards days or months later. Could also be LiveTV + Amazon Launcher version dependent. Easiest way to check is with top (raven:/ $ top). If com.amazon.tv.livetv is using more than 30% cpu and constantly at the top of the list, clear or disable it.
[Fire TV Original Android Development] boxster03:
@Pro-me3us raven:/ $ top has close to zero % cpu for amazon.tv.livetv

I just ran

Code:

pm enable com.amazon.tv.launcher

pm disable-user com.amazon.firehomestarter

pm clear com.amazon.tv.livetv

(as per your post#108) just in case. firehomestarter is disabled but tv.livetv is only cleared. If I notice the cube getting bogged down or hot, this is a place to check. Thanks for the info. What is amazon.tv.livetv anyway? I don't even know if I need it. What is the icon of that app? I may like to check it out first and decide. Is it a free app or need subscription?

While setting up the Cube, I am wondering some of the apps like Netflix and Youtube that I can get within the cube at Amazon Appstore are also available at various sites. Is there an advantage or difference getting them outside of Amazon Appstore?

Also my first cube's remote has two buttons remapped using the writeup on aftv (the botton two buttons on the remote). That was done before the unlock and I kept that the same. Now since this Cube is unlocked, I don't need that method right? XPosed Edge can do it easier?

Thanks for all the helpful information.
[Fire TV Original Android Development] Pro-me3us:
Yeah disable firehomestarter, it's only there to enforce Amazon Launcher as launcher. LiveTV is Amazon's aggregator that lists 'live' channels from installed partner apps (Plex, PlutoTV, Freevee, local new, etc). The 3rd gen remote with app buttons has a LiveTV button. Or say 'Alexa, show LiveTV'. Amazon Launcher has a portal page, but there is no app icon.

raven:/ # am start -n com.amazon.tv.livetv/.GuideWrapperActivity

or

raven:/ # input keyevent KEYCODE_LIVE_TV

Most apps that use DRM won't stream 4K video unless using the Amazon App version. The App Store and its apps are still updated when OTA firmware updates are blocked, so not much reason not to use the Amazon version when it's available.

Yeah, not needed, Xposed Edge is better/more efficient. Xposed Edge may require running this script first one time, to clear the default app button links. Choose the 'block all app buttons' option.
[Fire TV Original Android Development] boxster03:
@Pro-me3us Silly me never pressed the remote button with antenna until today.!!! So if I decide to disable Amazon LiveTV I sould enter code:

pm disable-user com.amazon.tv.livetv

right?

Can you also give me the code if I want to enable it at some point afterwards? Just replace "disable" with "enable" ?

Re: these refurb units, so you think they are used units (couple of years or thereabouts?) reset and with a new outer case? Like when people trade in used units to get a discount to upgrade? But then why are most of them are with the same OS eg. FOS 7.2.9.2.? Just wondering how much life is left in them...
[Fire TV Original Android Development] Pro-me3us:
Yeah, pm enable <package-name> and pm disable-user <package-name>. Or use Debloat Toolbox, it does the same thing from a friendly UI.

I don't know the specifics, I can only speculate. The refurbished Cubes are probably a combination of 30day returns, trade-ins, and warranty returned units. Replacing the plastic shell is cheap, and gives the user a superficial feeling of getting a device in great shape, it's a win-win.

When a Cube is returned it still has user data on it, and and is potentially corrupted in the case or warranty returns. The easiest way to deal with this is to simply reflash the entire eMMC. PS7292 was likely just part of the standard eMMC image being flashed at the time. Many of these units have been sitting around in a warehouse for over a year. Any trade-in or warranty-return Cubes from the last year will eventually make it to the marketplace with some newer firmware.

Aside from reflashing the eMMC, there's also a hardware diagnostic process eluded to in the source code, to help verify there aren't any bad components.

I wouldn't worry, odds are your Cubes will last longer than your interest in continuing to using them ;)
[Fire TV Original Android Development] boxster03:
@Pro-me3us

I am unable to get the remote (it is a 3rd gen alexa remote) app buttons reprogrammed on cube2 FOS 7.2.9.2.

I first ran blank_app_buttons.zip (post #83) as a module in Magisk ( it cleared the 4 app buttons because they didn't do anything afterwards). Then I tried XPosed Edge to add amazon music button to run an app (in XPosed Edge > Keys > +Add >pick the button > OK then pick Click under that button > scroll down to App > click > pick my app I want from the apps list.

It didn't work.

Then I ran the script in your post, picked 'block all app buttons' .

Then I tried again in Xposed edge but still didn't work. In Xposed Edge it shows the picked app for the key under click. But clicking the button does nothing.

Do you know if this process should work on FOS 7.2.9.2? What might be wrong?

Thank you for all what your are doing.

Edit: Separately, in Magisk home screen, (I have 25208) across from Magisk, there is an "Install" icon where as in my other cube it is an "update" icon. Why the difference? They both are version 25208. If I click on "Install" in next screen looks to be 26405 install steps. (I clicked back and not install). That second screen is same on both (if I click on 'update' on the other cube). Wonder why they are different on home screen. Under Magisk it is saying 'Installed e5641d5b (25208)'.

Edit2: Doesn't look your script has worked on my cube2 (FOS 7292) even though the message 'All app buttons blocked successfully' was received,

I turned off blank_app_buttons on Magisk and all 4 app buttons go to the original app marked on the remote. I tried a couple of times (also reset cube) but not blocked as your script intended. What might be the issue? Thanks.
[Fire TV Original Android Development] Pro-me3us:
Did you check the box to activate key mapping, and check the box to activate the button you remapped?

If you're using the script to block out the app buttons, make sure to disable Arcus Proxy

raven:/ # pm disable-user com.fireos.arcus.proxy

Run the remap script, select 'reset all app buttons'. Then exit the script and run it again, this time select 'block all app buttons'. Reboot the Cube. I didn't test the script on PS7292 specifically, but it did work on a 10month older firmware.

I don't know why the update option in Magisk is appearing on one Cube and not the other. Maybe the app didn't call home to Github to check for updates on the one. Even though Magisk v26 works on the Cube, there's not much reason to update unless using a module that requires the newer version.
[Fire TV Original Android Development] boxster03:
@Pro-me3us I am glad you asked about the little boxes - I had not clicked them before. Now I used the mouse toggle to click the one for 'keys' and for each of the buttons. Now I have also clicked little boxes for each of the 4 app buttons:

KEYCODE_PROG_RED

KEYCODE_PROG_GREEN

KEYCODE_PROG_YELLOW

KEYCODE_PROG_BLUE

In Xposed Edge each of these is assigned under 'app' from list for 'Click'.

Rebooted and yet no go.

BTW after disable_user arcus.proxy, the 4 buttons stopped opening the assigned app. (Blank buttons module is inactive in Magisk.) But I noticed the script now returns a much shorter list (only 0 through 17 selection whereas before I remember input 26 / 27). I never reset app buttons and redid. The buttons stopped working so I did the Xposed edge remapping.

Still no go on the buttons.
[Fire TV Original Android Development] Pro-me3us:
Either use the Magisk module that blanks out the app buttons for Xposed Edge, or use the script but don't use both.

App button definitions are updated by Arcus Proxy, so it has to be disabled to use the script that modifies those definitions.

1) Restore the app buttons with the script, 'reset all app buttons'.

2) Exit the script then rerun it, and 'block all app buttons'.

3) Disable the Magisk module for blanking out the app buttons, then reboot.

4) Open Xposed Edge, remap the 4 buttons, because they will no longer correspond to RED, GREEN, YELLOW, BLUE, and instead to APP1, APP2, APP3, APP4.
[Fire TV Original Android Development] boxster03:
@Pro-me3us , It worked perfectly. Thank you! Problem last time was that in XPosed Edge I didn't perform new add + operations and select keys but used those 4 color keys I had added the first time. I should have known better.
[Fire TV Original Android Development] boxster03:
Greetings!

I am trying to figure out how to read and play from NTFS formatted USB drives. Is this something that can be achieved on our rooted Cube2 's without going through too much trouble?

@Pro-me3us , I couldn't find it covered in another thread -- I could have missed it in my search though. I'd like to overcome the 4GB limit on file size. Thank you.
[Fire TV Original Android Development] Pro-me3us:
A number of file manager apps include their own NTFS support, like MiXplorer. Videos can be opened in the file manager and you select the player to use.

Adding native NTFS support to FireOS, so that you can browse NTFS drives from any app takes a bit more work. I think that would require a kernel mod similar to what was created for the 4k Stick.
[Fire TV Original Android Development] boxster03:
@Pro-me3us , I installed MiXplorer on my cube2. How to make this work as you described? Yeah all I want to do is play stuff like videos from my usb flash drive. If I connect the flash drive to a port on my usb hub, should MixPlorer be able to play w/ my choice of player? That would be great as I rather not mess with kernal mod etc.

So far MiXplorer is not showing files on the ntfs flash drive. It is showing as nothing on the drive. (it shows stuff on fat32 flash drive okay.)

I am going to see if there are any settings in MiXplorer that I have to change. Any ideas? Thank you again for your help.
[Fire TV Original Android Development] Pro-me3us:
You would need to enable the the custom OTG driver

MiXplorer - Settings / More Settings / Enable OTG (Custom driver for USB OTG)

This feature works on Android, but I'm getting an error when trying to access NTFS drives on FireOS. You could take this up with the developer and he may be willing to fix it with your help.

write result == -1, errno: 110: Connection timed out, timeout: 12000

Otherwise I know it's working in ES Explorer on FireOS, available in the Amazon App Store for free. Skip past all the premium upgrade options. The first time you plug in a drive, go to the left panel / local / usb. You'll get a popup asking for USB access, click always allow.

ES Explorer isn't nearly as nice as MiXplorer, it would be nice if the developer was able to fix the NTFS/ExFAT USB issue.
[Fire TV Original Android Development] boxster03:
@Pro-me3us

Today I had some issues getting the fat32 usb to show. After playing around with/ switching/ usb hubs, OTG cables etc, now I have the MiXplorer able to play from NTFS flash drive (after the settings were changed as per your post above) on one Cube. My guess is one of the two USB HUBs I just received brand new is faulty or has a connection issue - may be a loose connection. Or the OTG cable. I'll have to figure that out to set up my other Cube2 to work similarly.

Appreciate all you help on this thread.

At first start up of MiXplorer, there was a popup asking to grant "Super User" to the app. I wasn't sure so I denied it. I also recalled sometime back there was another streaming app popped up asking Super User - I've denied then also. What does it mean?

Can you tell me what if I granted Super User? For what exactly is the request?

Edit: Yeah it looks like 1 of the 2 new UGREEN usb hubs I bought is defective based after doing a bunch of switching components between the 2 Cubes. I thought these units will have a better reliability. Let's see how the replacement I ordered will do.

Also, re the popups, I'm not referring to the ones asking access to USB contents - those I select "allow always". These ones ask for Super User access to the device as I recall.
[Fire TV Original Android Development] Pro-me3us:
A lot of file managers have a root option that allow access to restricted files and directories, I'm assuming that's why MiXplorer is requesting SU. You can turn off 'allow root' if you don't want it to ask. Or select deny and Magisk will automatically deny any requests from that app.

MiXplorer - Settings / More Settings / Allow Root (uncheck)
[Fire TV Original Android Development] boxster03:
@Pro-me3us Thank you for the SU request explanation.

The cube with the usb hub: I am able to use MiXplorer to see the ntfs flash drive and the fat32 flash drive for the most part. Today when I tried out ES-Explorer, I cannot see any files in them even though given access via "allow always". Strangely, when I got out of ES-Explorer by pressing back button, both USB drives seem to have disconnected (I can only see tiles for apps in sdcard) and fire setting don't show the usb ext storage. Only way I found to reconnect to the ext storage is by rebooting the cube.

Have you encountered such behavior? ... software issue or hardware (I don't know if the usb hub has connection issues. One of the 2 hubs is going back so I don't have a lot of confidence the one working is problem-free.

Edit:

It looks like the problem could be the power supply I had connected to the OTG that feeds the USB Hub may be too small. I was using a 5v 1A. I replaced it with a 5A 2.1A (the hub specs calls for 2A) and now I can see the usb drives consistently. Let me see if it keeps up. Thank you for your help.
[Fire TV Original Android Development] boxster03:
I can go to MiXplorer and play a song in my NTFS ext flash drive (by selecting a player) but it stops after playing that song. I have tried a few players but haven't found a player or found a way to change (the player settings?) to keep playing (eg. go to next song in the folder or shuffle etc.) Anyone figure this out? Appreciate any ideas. Thank you.
[Fire TV Original Android Development] Pro-me3us:
You need to select multiple files at once in MiXplorer (long press on one file, then select all the other files wanted), tap on the 3 dots in the top right corner, select open.

Or make playlist (.M3U) files for your music so that you can open the playlist to play all the designated songs. Google how to create .M3U playlists, there are many ways, and it's easy.
[Fire TV Original Android Development] pretzells:
If i may ask?? with twrp installed, and reboot to recovery not an issue, can an ATV gsi or custom rom other than fireos be installed?? ive tried a few roms specific for s922x g52 with no luck, not a fan of the stock OS. thanks