Showing posts with label android. Show all posts
Showing posts with label android. Show all posts

Tuesday, August 8, 2023

android usage - usb-tether

Suppose a person wants to cord-cut and obtain their internet access entirely from a tethered phone. Some of other posts have explained the configuration, but what about the data-plan? This is made somewhat inscrutable by the provider, so that a person tends toward ordering a larger plan. Let's look at the T-Mobile case.

somewhat mysterious

This is the information from the website. How much data do I use every month. At mid cycle am I at 22.28G usage, 25.08G usage, or 47.36G usage?

An hour on the 611 line with T-Mobile: the larger number, 25.08G, includes both hotspot and "voice" usage, this is my total number mid-cycle. T-Mobile uses "voice" to mean data they provide that is untethered. So "voice" isn't actually voice, it is eg., usage when driving around looking up the nearest gas station on one's phone. The 22.28G is the tethered "hotspot" usage: tethered to a laptop, a vehicle's Android connection, etc, and is the largest portion of the entire 25.08G. The untethered "voice" usage is 3.2G, the difference between the two larger numbers.

inflated values

Based on this, we can see I send about 3000 MMS/SMS a month, which would be about 100 per day. This is an overstated amount. I probably send about 25 texts per day. Similarly, they have me at about 1000 minutes of phone a month (33 mins daily) another overstatement, though not as grossly made.

But it's data that really matters to a cord cutter, b/c this is never unlimited. If my plan includes "40G hotspot", and I know I never use wifi, I just use tethering, then what is the 22.28G I have used? Is it part of the overall 25.08G used?

options online

The way we view it is important to our plan. It appears we need but how much more? Our bill will be roughly $115 per month if we cut the cord and need 100GB, or $90 per month if we can cut the cord and only need 50GB per month. But roughly, we can say to cut the cord, our costs are $100 per month phone and internet. For the gov't to track us.

usb-tether cam, mic, phone cam/mic (4G)

We might want to use and old phone as a separate video source from a different angle than a webcam. We might want to use a USB mic (not recommended w/out preamp), we migh have an extra USB cam lying about

  • /etc/udev/rules.d: as with all things USB, you'll have to identify the device and reload udev. Once you have this done, it will recognize he device when plugged in.
  • specialized software as with other linux projects, you'll probably need some software specific to that funciton

Turbo 2 - Android 7

Specs on this 4G 2015 phone include a 21MP camera- decent for video. It has about 21Gb free on the phone, but we can add up to a 64Gb microSDXC. Use at least a class 6 speed SDXC for 1080P. My original was stolen (probably at the T-Mobile outlet). A replacement was $8 (2022) for 32Gb Class 10 SanDisk.

What still works without the SIM? With a WiFi connection nearly everything but voice and text apps. Everything Google is a "go": Google Play Store, Voice etc., over Wi-Fi.

Most often, we'll just start and stop recording from the phone and download the file after. But what if we want to use it as a webcam, live via USB? Plugging in, we may get any number USB VID's based on what's chosen from the 5 phone options.

$ lsusb
Bus 001 Device 031: ID 22b8:2ea5 Motorola PCS XT1585
  • 2ea5 - "Charge this device", "Transfer files". If file transfer is selected, one can use...
    $ jmtpfs ~/mnt
    $ fusermount -u ~/mnt
    ...to move video and audio files off/on the device for further editing.
  • 2ea7 - "Transfer photos (PTP)". Don't know what PTP photo transfer is.
  • 18d1:4ee9 - "Use device as MIDI"
    $ lsusb
    18d1:4ee9 Google Inc. Nexus/Pixel Device (MIDI + debug)
    Not sure what a MIDI device is or how to use one.
  • 2e61 - "Software installation". ADB-type actions - root kits, side mounts, etc.

  • 2e25 - usb-tethered hotspot. This phone's decomissioned for hotpspotting phone data (SIM removed) but the switch is in Settings -> Wireless & networks -> More -> Mobile Hotspot & Tethering.

I could not find an option that did not require some software. I started with iVCam Webcam, which had some good instructions and might work for others. Ultimately, I found that, for Arch linux, I could yay. And of course you need to allow USB de-bugging.

This is possibly beneficial if seems to need a rule. Also may need to

# pacman -S v4l2loopback-dkms
installing v4l2loopback-dkms
(1/2) Arming ConditionNeedsUpdate...
(2/2) Install DKMS modules
==> dkms install --no-depmod v4l2loopback/0.12.5 -k 5.19.12-arch1-1
Deprecated feature: REMAKE_INITRD
==> depmod 5.19.12-arch1-1

# pacman -S v4l2loopback-utils

Friday, September 30, 2022

timestamped video: androids 12, 7 (nougat)

Date and time stamping on video is the number 1 reason we shoot video. Why can't we do this on our phone?

Ninety-five percent of the PlayStore video time stampers add text to the video after the video is complete, in a second pass. Altering the file after the fact still provides an accurate time on the video picture, but obviously provides an inaccurate date/timestamp on the file's metadata. Further, since the file timestamp varies with what is seen on the video, it's diffiicult to call it reliable evidence.

I've only found a few solutions

1. Android 12

Timestamp Camera Pro $4.99 (2022). Brian Di, the creator, made 6 versions of this program, which is confusing. The versions range from Free to $9.99 for the "Pro Enterprise" edition. Most use retroactive stamping, but this version does real-time.

2. Android 7 (nougat)

Be sure to turn on "System UI Tuner": hold down the gear, not on the dimmer, but more to upper R, until UI Tuner is activated.

The only one I found was Timestamp Camera Pro $3, which retroactively adds the date and time. In Android 7, I could not find a real time

3. other

screen recorder: I found the Xrecorder. Free to install but I upgraded from within the app -- that may have been $5.

stop motion: plenty of tutorials for Stop Motion Studio Pro $4.99 (2022). Eg, this sorta corny Kendra Fleischman video shows the process. She uses a closet shoe rack for her camera stand. Don't forget that half of the work will be "post" on a desk/laptop after taking the file off the phone via USB.

Sunday, September 4, 2022

hotspot the phone :: 4G->5G transition

"...I would forgo a separate hotspot device unless I needed if for group internet access. Buy more data for the phone and USB-tether."

NB: for usb-tethering a camera, either in a phone or as an independent cam, go here.


5G rolled out in July for T-Mobile. At that time, my phone's data plan began to include a free 40G of 5G "hotspot" data. This additional feature allows a person the option to use their phone as a WiFi hub. They can still access the Web through their phones' browser (the old way), but they can also broadcast the signal like a hub. A software toggle in the phone's settings (see below) turns it on or off.

Transmitting WiFi creates a hot phone, and heat is the number 1 electronics killer. When I saw how hot the phone was getting, I purchased another device (plus another number), that's solely for hotspotting. I have too much contact info and so on in my phone for me to deal with it failing due to hotspotting heat.

Of course, as soon as I purchased the dedicated hotspot device, I found-out that it wasn't really necessary. I learned I could use the phone without WiFi heat problems... if I physically tethered it using a USB cable (pic below) instead of running WiFi. In addition to less heat (a fifth of the heat), the cable charged the phone during internet use. The connection also is less hackable than WiFi.

The drawback is that a physical connection only can be attached to one device. But could a person allow multiple connections by tethering to a switch, or a router? Haven't yet attempted.

data expense on separate hotspot

I had already purchased a hotpsot device -- basically a data connection device with no calling, text or apps on it -- so I went on to purchase a $10 a month data plan for it and configured it (see further down). Data is quintuple the price of phone plans. It's possible providers don't receive enough intel from that device to sell/provide to advertisers/LEA's, or that it's considered generally a business device, or that they don't receive subsidies from Google, etc? Whatever the cause, $10 per month bought me 2GB and no rollover.


configuration

First though, three questions answered that I wish I could have easily found on Google.

1. Is a separate SIM needed for the dedicated mobile device? Yes. Although a person could physically move their phone SIM into the dedicated hotspot, both the phone and the dedicated hotspot device have unique IMEI's. So the phone provider will have to register and unregister the device each move of the SIM. This is liable to lead to interruptions, in addition to the liklihood of damaging the SIM during repeated transfers. However, a separate SIM *does* mean a separate phone number with its own data plan. More below.

2. With 2 SIMS, do hotspot minutes from one device merge with the other device? No. Even though users receive one bill, it has two numbers with two separate data plans. Overage charges would apply if I went over on one device but still had gigabytes left on the other device. Further, dedicated hotspot device minutes are expensive: $10 per month on the device got me 5Gigs of 5G speed data and unlimited 126K data, LOL.

3. Which dedicated hotspot is a good choice? Don't buy one: USB tether from your phone. If buying anyway, check the phone provider's website for compatible devices, then buy one inexpensively refurbished from say, EBay. Example: I'm on T-Mobile and the T-Mobile website sells Inseego and Franklin hotspots. The Franklin T10's are $30 refurbed, but they transmit data at 4G speeds. This is a waste of $$. The 5G Inseego M2000 (pictured) is $340 new from T-Mobile. I bought one for $110 off EBay. Works and charges fine.

configurations

Four sections below: phone WiFi, phone tether, and dedicated hotspot. Each requires a configuration file: an /etc/udev/rules.d/ file (tether) , and a wpa_supplicant.conf file (WiFi).

Part 1: phone hotspotting

It may overheat, but the phone can provide internet 3 ways. bluetooth, wifi, or USB cable tethered. The bluetooth is too insecure to bother with. That leaves:

  1. Wifi hotspot: enable/disable in phone Settings as needed. Connect several devices with ESSID and password. If neighbors or wardialer squat it, can WAP it and/or hide the ESSID. /etc/wpa_supplicant/
  2. USB tether: enable/disable in phone Settings as needed. Connect as ethernet (no pass) to single device. Cooler than WiFi, more secure than WiFi, charges while connected. Set this up, even if it's not needed. /etc/udev/rules.d/

BTW, USB tethering can also be configured for reverse-tethering - taking internet from one's connected laptop and sending it to the phone. Not sure when this would be useful, but it's available.

1a. Wifi hotspot

This is the simpler of the two, but more open to hacking. No configuration of the laptop/desktop is required -- the phone becomes another Wifi connection point, and the user connects their laptop to it like they would any other Wifi router/source.

1a. use (WiFi)

  • Settings --> Connection & sharing --> Mobile hotspot (slider). Once enabled, a hotspot icon appears in the upper R, near the 5G reception bars.
  • # wpa_supplicant -D wext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf &
  • # dhcpcd wlan0

1a. setup (WiFi)

  • Settings --> Connection & sharing --> Mobile hotspot (slider). Tapping on Mobile Hotspot will allow a person to change the ESSID name, hide it, change the password, the security, etc.
    Save after all are set
  • $ wpa_passphrase [ESSID] [password]
  • # nano /etc/wpa_supplicant/configfile.conf
    Put in the info from passphrase. The line scan_ssid=1 is necessary if hiding the ESSID. For security, key_mgmt=WPA-PSK is standard.
  • # chmod +x /etc/wpa_supplicant/configfile.conf

1b. use (USB tether)

Android tether page (Arch). Tethering is slightly more complicated than Wifi for the initial setup, because configuring on the desktop/laptop is needed. Worth it.

tether use

  • Connect USB cable
  • On the Android, doesn't matter USB mode, but move slider below to right to enable tethering
  • On the laptop/desktop:
    # dhcpcd enp0s21d0u2

1c. setup (USB tether)

Linux desktops/laptop network connections include loopback, ethernet id, and wifi id. This USB-tethered phone will act like a second ethernet card. The connection becomes added to the list inside /sys/class/net.

  • # pacman -S usb_modeswitch android-udev android-tools
    ... can also install openvpn if desired for other options.
  • group "adbuser" will have been created, so add the user...
    # nano /etc/group [add user to adbuser]
  • phone: attach USB cable and ENABLE USB TETHERING (!) in Settings.
  • desktop: check network units already in place. each device will have 3 lines eg, the ethernet:
    $ systemctl list-units |grep net
    sys-devices-pci0000:00-0000:00:1b.6-net-enp0s21b6.device
    loaded active plugged Ethernet Connection I219-LM
    sys-subsystem-net-devices-enp0s21b6.device
  • $ lsusb
    Bus 001 Device 012: ID 22d9:276a OPPO Electronics Corp. SM8150-MTP _SN:E18D827E
    the phone contains a different product ID for its internet connection than a basic USB connection; USB TETHERING MUST BE ENABLED in the phone Settings to get a correct product ID. (see next step)
  • The kernel will not create a net connection with only a Vendor ID, it must also have the (correct) Product ID:
    # nano /etc/udev/rules.d/90-android-tethering.rules
    # Execute pairing program when appropriate
    ACTION=="add|remove", SUBSYSTEM=="net", ATTR{idVendor}=="22d9", ATTR{idProduct}=="276a", ENV{ID_USB_DRIVER}=="rndis_host", SYMLINK+="android"
  • # udevadm control --reload
  • now our device identifier should appear on the list. It's unauthorized for a connection yet, but should exist:
    $ systemctl list-units |grep net
    sys-subsystem-net-devices-enp0s21d0u2.device loaded active plugged
    SM8150-MTP__SN:E18D827E
  • now that we have its name, I just wrote it down, unplugged and replugged the USB cable and re-enabled tethering and:
    # dhcpcd enp0s21d0u2
    ...then I pinged to verify. Could also do a speed test.

extra: adb command setup

To issue commands into the phone from the connected device using "adb" commands (and not just connect to internet), which is necessary for more complicated things like port forwarding and AziLink...

  • get the USD VID from lsusb and then
    # nano /etc/udev/rules.d/51-android.rules
    SUBSYSTEM=="usb", ATTR{idVendor}=="22d9", ATTR{idProduct}=="2765", MODE="0666", OWNER="foo", GROUP="plugdev"
  • # udevadm control --reload
  • plug USB into phone, enable the file transfer/auto option
  • $ adb devices
    List of devices attached
    143cfd76     device

Having this connection for ADB commands seems to heat up a laptop and use memory. Accordingly, I keep the ADB connection turned-off by commenting out the defining line in /etc/udev/rules.d/51-android.rules unless I am going to use adb commands.

Part 2: dedicated device hotspotting

Using the 5G Inseego M2000, we can connect:

  1. Wifi hotspot: enable/disable in menu. Connect several devices with ESSID and password. /etc/wpa_supplicant/wpa_supplicant.conf
  2. USB tether: enable/disable in menu as needed. Connect as ethernet (no pass) to single device.

Use the embedded website to change the name of the network and its password. When it first arrived, was missing SIM, then SIM arrived by mail from T-Mobile. However, even though device was T-Mobile a call still had to made to unlock it. They never were able to unlock it, even after letters to T-Mobile.

2a. Wifi hotspot

This is the simpler of the two, but more open to hacking. No configuration of the laptop/desktop is required -- the phone becomes another Wifi connection point, and the user connects their laptop to it like they would any other Wifi router/source.

2b. use (WiFi)

  • Settings --> Connection & sharing --> Mobile hotspot (slider). Once enabled, a hotspot icon appears in the upper R, near the 5G reception bars.
  • # wpa_supplicant -D wext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf &
  • # dhcpcd wlan0

1a. setup (WiFi)

  • Settings --> Connection & sharing --> Mobile hotspot (slider). Tapping on Mobile Hotspot will allow a person to change the ESSID name, hide it, change the password, the security, etc.
    Save after all are set
  • $ wpa_passphrase [ESSID] [password]
  • # nano /etc/wpa_supplicant/configfile.conf
    Put in the info from passphrase. The line scan_ssid=1 is necessary if hiding the ESSID. For security, key_mgmt=WPA-PSK is standard.
  • # chmod +x /etc/wpa_supplicant/configfile.conf

2c. use (USB-tether)

Android tether page (Arch). Like the phone, we can USB-tether with the dedicated device.

  • Connect USB cable
  • Unlike the Android, software selects tethering automatically. No adjustments are needed.
  • On the laptop/desktop:
    # dhcpcd enp0s16f1u2

2d. setup (USB tether)

Linux desktops/laptop network connections include loopback, ethernet id, and wifi id. This USB-tethered phone will act like a second ethernet card. The connection becomes added to the list inside /sys/class/net.

  • # pacman -S usb_modeswitch android-udev android-tools
    ... can also install openvpn if desired for other options.
  • group "adbuser" will have been created, so add the user...
    # nano /etc/group [add user to adbuser]
  • phone: attach USB cable and ENABLE USB TETHERING (!) in Settings.
  • desktop: check network units already in place. each device will have 3 lines eg, the ethernet:
    $ systemctl list-units |grep net
    sys-devices-pci0000:00-0000:00:1b.6-net-enp0s21b6.device
    loaded active plugged Ethernet Connection I219-LM
    sys-subsystem-net-devices-enp0s21b6.device
  • $ lsusb
    Bus 001 Device 008: ID 1410:b020 Novatel Wireless M2000
  • Edit the udev rule to add the VID information. We can simply add another entry to the file we created for the phone.
    # nano /etc/udev/rules.d/90-android-tethering.rules
    # Execute pairing program when appropriate
    ACTION=="add|remove", SUBSYSTEM=="net", ATTR{idVendor}=="1410", ATTR{idProduct}=="b020", ENV{ID_USB_DRIVER}=="rndis_host", SYMLINK+="android"
  • # udevadm control --reload
  • now our device identifier should appear on the list. It's unauthorized for a connection yet, but should exist:
    $ systemctl list-units |grep net
    sys-subsystem-net-devices-enp0s16f1u2.device loaded active plugged M2000
  • we have its kernel name and can connect with dhcpcd:
    # dhcpcd enp0s16f1u2
    ...then I pinged to verify. Could also do a speed test.

more configuration

This isn't necessary, but a person can visit the manufacturer's site (http://my.mifi) and create an account to access additional functions on the dedicated device. This probably also provides them with additional information to sell advertisers.

Part 3 troubleshooting

m2000 - invalid SIM

3 days after SIM installation, it was still spawning errors. In my online T-Mobile account, device information indicated it was "locked but available for unlock". A call to T-Mobile revealed the m2000 must be on their network 45 days, then corrected and said he could do it. They never did. They devices "locked".

m2000 - dhcpcd errors, no ping.

Strangely, browsing worked OK, but seemed to buffer.

# dhcpcd enp0s16f1u2
dhcpcd-9.4.1 starting
DUID 00:03:42:4D:45:44:01:5E:4C:10:8A:30:C6:C0:4B:46:4A:31
enp0s16f1u2: waiting for carrier
enp0s16f1u2: carrier acquired
enp0s16f1u2: IAID CC:03:11:AC
enp0s16f1u2: adding address C2D0::C6BF:7F13:14C2:1315
enp0s16f1u2: rebinding lease of 192.168.1.2
enp0s16f1u2: probing address 192.168.1.2/24
ps_bpf_recvmsg: Invalid argument
ps_bpf_recvmsg: Invalid argument
ps_bpf_recvmsg: Invalid argument
enp0s16f1u2: leased 192.168.1.2 for 86400 seconds
enp0s16f1u2: adding route to 192.168.1.0/24
enp0s16f1u2: adding default route via 192.168.1.1
ps_bpf_recvmsg: Invalid argument
forked to background, child pid 31249
Is data unlimited, albeit slow? Which one? Where do plans work?

5G - OnePlus Nord200 - Oppo N1 - DE2118

Links: Wiki page

model

Like all smartphones, manufacturing is murky and obsfucated, and can best be determined by its USB VID

$ lsusb
22d9:2765 OPPO Electronics Corp. Oppo N1

"22d9" is Oppo Electronics, so that's our real indicator. Interestingly, the OS is Cyanogen Mod, which they call Oxygen. $125 refurb off EBay. For travel it's GSM and

phone history

The best I've had was the LG-D520, best text feel, fast, least distracting

5G Nord N200
2022/08
$125 Refurb unlocked Ebay, originally on T-Mobile. Android 12, upgraded from original Android 11/Oxygen. Type C USB cable
4G Droid Turbo 2
2020/05
$50 XT 1585 Refurb unlocked from Verizon. Android 7 (Nougat) Reliable Motorola phone. Could not achieve VoLTE after 5G upgrade due to Verizon firmware. Type B ("micro usb") USB cable. Battery about 45 minute turnaround. Keep unrooted as a good cam phone.
3G Optimus F3Q
2015/05
$50 LG-D520. Refurb unlocked from T-Mobile. Android 4.4 (KitKat) Easy battery swap. This phone has slightly better-yet touch for texting than the G1. The G1 was good for texting. The LG-P659 was as smaller, glass screen (non-slider) version.
3G LG C195N
2012
$100 new. T-Mobile. Slider. Android 1.5 (Cupcake). Great texting touch and pocket and hand feel. Wide enough not to slip out of pocket. Simple, reliable, great battery life. GSM. Might still be good for Europe. SMS/MMS, no Internet.
3G LG G1
2010
$100 new. T-Mobile. Slider. Android 1.5 (Cupcake). Slider has good touch for texting. Stolen at work.
2G Moto. Razr V3
2006
$? T-Mobile. Favorite phone. Black metal case, reliable, battery features, easy to use, heft even better than Nokia, easy battery.
2G Nokia E.6010
2002
$? Cingular. Candy bar, GSM 850/1900. Also called NPM-10. Superb heft and single hand key access. Easy battery (NK3310), dedicated charger. FCC:GMLNPM-10X
Gx Alcatel
2002
$30,new. Price part of a Deutsche-Telocom package which included a number of minutes and other features.

Settings

Android 12. One of the key things to do is disable "Quick Device Connect", a persistent problematic app that will ask for one's location. Settings -> Apps -> App management -> (three dots in upper R) -> Quick Device Connect. Force stop and turn off all notifications.

  • awake: double tap, then swipe up.
  • usb setup: Settings -> System settings -> Developer options -> Select USB configuration
  • nav bar / 3 buttons: there's no back button in the Chrome browser, so the buttons are helpful; triangle is a back button. Settings -> System settings -> System navigation select buttons or gestures (gestures has Navigation Bar).
  • screen timeout: Settings -> Display & brightness -> Auto screen off (set mine to 1 min)
  • notifications: apps like Uber, EBay often interrupt with announcements. Settings -> Notifications & Status bar -> Apps are in a column; toggle the notifications on/off as desired for each app.

Glass/LCD Replacement ($38) and Battery ($18)

Had the phone a couple months and then was at a meeting with some guys and dropped it on concrete. First time broken screen experience. For this phone a significant job no matter glass or glass+frame. Why not also replace (LiPo) battery since it has to be removed to do the glass. Comments on that a little further down.

Replacing only the glass is easiest fix, but requires bending-out the frame to remove the glass. I considered a smooth press-fit would be more durable and stock-appearing, so I purchased a frame/glass combo. An extra $6. Another $5 for the toolset with B-7000 glue. With tax, call it $38 for all of this, non-OEM. I also read the seller's customer feedback comments for additional tips from buyers. Delicate job and, again, not OEM.

Beyond this, having or jerry-rigging a heat-pad or gun, and clamps for re-gluing, are all required. This is true also for a straight battery job. The video below has the "with-frame" process I did, but can do just the glass, as noted above, after battery step. See video commenets.

Screen w/frame replace (17:09) Geardo, 2022. Latter half of video -- reassembly portion -- valuable to watch prior to initial disassembly. Comments valuable.

The battery was an extra $18 incl. tax. I got a LiPo version, like the OEM. Li-Ion requires an overcharge protection circuit that's likely not in the phone since it's LiPo OEM. I don't want the phone burning up on the charger.

Saturday, August 13, 2022

4G -> 5G WTF

NB: The least expensive (T-Mobile) 5G entry with enough features (Android 11, Snapdragon 480 vs. Snapdragon 805 and Android 7 in my 2015 Droid2), is probably the Nord N200 5G. ~$200, or about $140 (including tax) refurbished.

Links: EBay.com :: New in box older phones :: T-Mobile


5G is definitely here and governments are rejoicing (all digital! AI packet inspection!). But as part of this rollout, providers began shutting down 3G networks. This meant the new fallback for voice calls became digital 4G, no more analog 3G. Also, different providers use different frequencies.

1. VoLTE functions (15:54) Telecom Tutorial info, 2018. Pre-5G video provides history of 2G, 3G, 4G and thorough description of VoLTE services including important note that the provider may not enable VoLTE on all handsets. 11:00 particularly applied to me.
2. VoLTE functions turn/on off (6:52) Make Knowledge Free, 2021. Thorough description of ways to enable VoLTE, assuming provider, handset, SIM, and handset firmware are provisioned to do so.

part 1 - 4G begins to malfunction

I have a reliable 4G phone. In March, a T-Mobile store checked the device and said, "it will work after the July 5G rollout". In August however, 4G data was reliable, but the phone dropped voice calls. Obviously, the phone was attempting to switch voice traffic to analog 3G, which no longer existed.

1st diagnostic

I checked several screens, but will only repeat the most relevant one below

analysis

  1. 4G data is not a problem in this phone. The 4G icon is illuminated in the upper right, and there had been no interruptions to texts or internet.
  2. my device is probably white-listed by T-Mobile, just as the store clerk said.
  3. Hardware is provisioned for VoLTE or the greyed out "VoLTE provisioned" switch would not be present

Given 1-3, the disfunction must either be the device's firmware, or the device's SIM card. If it's the SIM, T-Mobile can send me a VoLTE provisioned SIM. If it's firmware... I'm out of luck and will have to purchase a new device. The phone (though reliable) is an unlocked former Verizon phone with Verizon firmware. Verizon firmware is impossible to update through T-Mobile.

2nd diagnostic - t-mobile

I recorded the IMEI of the phone but, as we can see from the screenshot above, SIM numbers were not provided to the user in Android 7. I physically pulled the SIM to record the ICCID number. With the ICCID and IMEI, I opened a laptop, went to the T-Mobile website and intiated a text chat with a tech. He took the numbers and determined the problem was likely SIM provisioning. He orded a new SIM overnighted to me. It arrived 2 days later.

3rd diagnostic - SIM install

After installing the new SIM (see below), there's a 2 hour delay for T-Mobile to fully detect and provision it.

I waited 3 hours and resarted the phone twice, however the VoLTE option was still greyed-out as previously. Verified also that voice calls were dropping. SIM was no solution. Failure.

2nd analysis

The remaining unverified problem was firmware. We can see from the phone info that both baseband and system firmware are Verizon. If I'd had unlimited patience, I might have written Verizon to see if they had a more recent version that was VoLTE enabled -- there was nothing on their website which looked like a solution.

conclusion

Appears I need to purchase a 5G phone; the Verizon firmware limitation cannot apparently be remedied. Lesson: if buying a cheap unlocked phone, it's smart to purchase a device which was previously used on my current provider's network. Accordingly, I found a 5G OnePlus Nord 200 on Ebay for $130, unlocked from T-Mobile.


part 2 - related notes

Home: SIM installation (T-Mobile)

Home installation relies partly on one's online T-Mobile account. The old SIM needs to be operating to log-in (2FA) to that account, and a person must complete the SIM swap before the online account times-out. There's no way to 2FA back into the online account without the new SIM being registered. Here's what I needed:

  • paper; copy down the new SIM number from the package
  • a tool to quickly pop the SIM from the phone
  • laptop to get on the T-Mobile website
  1. login to T-Mobile. T-Mobile sends a 2FA text to my phone
  2. Go to Account->Lines and Devices ->Change SIM.
  3. Work fast before you're logged out.
    • turn-off the phone
    • pop-out old SIM and put in new SIM
    • power-on the phone (all kinds of error messages will appear -- disregard them)
  4. enter the new SIM number in the box for it on website (laptop) and then "continue"
  5. completion message appears
  6. After about 20 minutes of the phone being inoperable, a text from T-Mobile arrived asking for new SIM verification.
  7. re-establish accounts in phone. Most accounts (google play, voice, phone) are tied to a SIM card, not to a phone, so all of these accounts logged out and needed to be re-established.

Vendor: possible store visit

SIM config can only be done by the provider, so if the phone is still not properly registering in the network, take it to the provider. More about it here. Also the phone probably has to be registered for IMS, unlike 3G. And if a person has a perfectly configured 4G phone, the provider might also be banning that device model from the 5G network. With so many variables, it's good to be patient with oneself if a person eventually must visit the vendor shop.

VoLTE functions (23:15) Telecom Tutorial info, 2018. Pre-5G video provides in-depth PowerPoint of how 4G VoLTE connects from User Equipment(UE) with voice in an IP Multimedia System (IMS). Covers congested network scenarios also.

Saturday, August 28, 2021

cell - motorola droid turbo2 - xt1585 4G

2024 Note: These can be used as WiFi Cams for video production. G Pure (xt2163) and G Play (xt2093) are updated versions of this phone with slightly stronger performance, but still without 5G; only VoLTE is available. Further, providers are no longer supporting these phones.

Need a new phone and not in the income category of an investment banker or a first responder? T-Mobile traditionally uses SIM cards (GSM)

These 2015 phones run about $60 on Ebay and have 32GB of storage for apps and storage, plus a person could add an SD storage card.The SD card goes in next to the SIM. The camera creates JPG pics, and handles low light reasonably well.
  • outward facing phone: 5344 x 3006 (5M per pic)
  • self-facing phone: is 2592x1458 (1.1M per pic)
  • video: 1920x1080, h264 high, 17,000kbs. (1M per second).
  • processor: Snapdragon 805, Krait 450 chipset
  • battery: a 3550 mAh lithium-poly battery (see below).

Battery FB55

tools: spudger and micro spudgers, torx t3

The phone seems to go about 2 years on a battery. Replacement battery is $10 delivered. They're not easy to access. It's about a one hour job, at a slow pace. Seventeen micro TORX screws. That's 17 chances to strip one. Keep downward pressure on the tool.

The little ribbon cable on the lower right is key. Some I've ordered arrive *without* enough length on that connector and are thus worthless.

Battery Replacement (2:12) Wit Rigs, 2016. by far the best video. All others go unnecessarily further. It's bad enough: the 17 x T3 screws cannot be avoided.

VoLTE status

We want to use the phone in LTE mode for fastest data and solid voice connection. The phone will otherwise default to GSM voice and EDGE data. This way we can talk on 3G and still text on EDGE simultaneously. But these are 3G type functions, so once providers sunset 3G in 2022, their will be no way to use voice and data at the same time, or GSM voice at all. We need LTE. How to ensure the phone is set for it?

I installed the Hidden Android Settings app. It doesn't require root b/c it doesn't have special functions. What it does is give quick access to functions which typically require menu after to menu to locate.

For LTE, I went into RadioInfo, then found the screen you see below. Although it appears relevant, just ignore the "Volte Provisioned" slider. Go instead to the drop-down arrow. There's 20+ options. I selected "LTE/CDMA/UMTS auto (PRL)". As you can see this resulted in both my Voice and Data Network types switching to LTE. For me, this is good enough

Thursday, October 8, 2020

old cell phones for webcams (usb, wifi)

Links: Android Partitions :: Arch Android tools :: xda F3Q
xda xiaomi redmi2 :: xiaomi community :: more flashboot commands

NB: check out updated 2022 version


Overview

Two main layers of software function:

  • system video is of course displayed on a laptop or screen. Several layers of internal software must accomodate webcams.
    1. The kernel should detect the video source
    2. software like V4L2 should be able to transport detected video.
    3. software like ffplay or OBS with ftl can then display transported video.
  • phone configuration software, typically fastboot, usually has many poorly documented model-specific functions. Still, it's a necessary step because the phone webcam is not a stand-alone camera, but functioning within phone firmware.

The handshake is the trickier, more time-consuming project. Yet the handshake tends to be low maintenance, once established. When configured properly, the phone cam should be detected like any other cam by the kernel. We'll start with USB access into the phone to configure it; following configuration, the phone cam can connect via WiFi or via USB.

phone powerup

Rooting a phone typically compromises its camera commands and degrades resolution. To avoid rooting the phone, we want to set Android into developer mode with USB bugging turned-on. Then we can connect via USB and authorize an ADB program. Once that's in, we can get to the phone's cam.

Most Androids can initialize in several modes. We want them in either ADB mode or Fastboot mode. Another site about this. The F3 and one of the F3Q's powered into fastboot mode (more fastboot commands), and still did not boot after a hardware reset. Good article here and it's important to know the Android partion names.

Even with correct fastboot syntatx....

# pacman -Syu android-tools
# fastboot oem unlock
OKAY [ 0.291s]
Finished. Total time: 0.291s
# fastboot erase boot
Erasing 'boot' FAILED (remote: 'failed to erase partition')
fastboot: error: Command failed
# fastboot format boot
fastboot: error: Formatting is not supported for file system with type ''.

It was a weekend long process to simply boot one of these phones into operation as a webcam

Note also that the adb commands were inoperative with all the phones, eg # adb devices produced nothing. Eventually, adb kill-server was run. Back to flashboot and determining the proper flags for it.

xioami tools

All three devices have Xiaomi inside. There's a good Xiaomi tool, xiaomi-adb-fastboot-tools, in the AUR. It runs on Java and needs the JRE...

$ yay -S xiaomi-adb-fastboot-tools

Sometimes this worked, but it failed to compile on boxes with the newest version of Java. On systems which it did compile, I couldn't find the executable.

$ which xioami*

...returned nothing. A Redditor helped me out...

$ pacman -Qql "$pkg_name" | while read fn; do [[ -x $fn && -f $fn ]] && echo "$fn"; done

...which returned...


Phones

One LG F3 and two LG F3Q's were available. All 3 were Jellybean (4.12), with 5MP cameras.

BTW, no idea why these 2 fastbooted, I hadn't tried to root or tamper with the devices. The 3rd phone booted normally, but since I had moved my SIM into my active phone, I could only connect by WiFi without Google Play store. How then to download webcam apps? Ultimately, without being able to boot the phone nor get access to Google Play, the unfortunate reality seemed rooting the two unbootables. They may also have had some sort of Factory Reset Protection (FRP), not sure.

Xiaomi sidenote

Xiaomi is the phone's cell xponder manf. It's actually a Qualcomm SnapDragon 410E. The phones I used were all Redmi 2, presumably with wt88047 hardware. When a phone powers into fastboot, lsusb provides the phone's internal manufacturer ID instead of the LG phone ID. For example, below you'll see the bootable F3Q displayed a charging identifier, but the F3Q that powered into fastboot displayed the 18d1:d00d Xiaomi Redmi 2 hardware identifier. Xiaomi itself produces some ROM's; their site is worthy of research also.

LG Optimus F3Q D520 (lg-d520)

$ lsusb
1004:6300 LG Electronics, Inc. G2/Optimus Android Phone [Charge mode]
1004:632c LG Electronics, Inc. LGE Android Phone [MTP files]
1004:631e LG Electronics, Inc. LM-X420xxx/G2/Optimus Android Phone (PTP/camera mode)
18d1:d00d Google Inc. Xiaomi Mi/Redmi 2 (fastboot)

5MP HDMI autofocus, Snapdragon 400, Android 4.12 (Jellybean). Only 1.3GB internal but takes a 32GB microSD

files
stock for the F3Q (d520) D52010c_00.kdzfactory firmware (ZIP or KDZ), flashed to "boot". aka ROM.
stock for the F3 (p659) P65910b_05.kdzfactory firmware (ZIP or KDZ), flashed to "boot". aka ROM.
structure/workflowfactory image (always IMG) for the device
color balanceapplication (always APK) to root
crossfadeslideshow complex! use a GUI app
de-interlacewatermark
gif

LG Optimus F3 (lg-p659)

$ lsusb
18d1:d00d Google Inc. Xiaomi Mi/Redmi 2 (fastboot)

5MP HDMI autofocus, Snapdragon 400, Android 4.12 (Jellybean). Only 1.3GB internal but takes a 32GB microSD

Fastboot Process

YES

fastboot oem device-info
fastboot getvar product
    product: FX3Q_TMO_US
    product: FX3_TMUS
fastboot continue

NOPE

fastboot erase boot
fastboot flashing unlock_critical

failed f3q hard reset

The first pass at restoring factory failed with the message...

Secure booting error!
Cause: boot certificate verify

errors

  • partion table doesn't exist :: command: fastboot erase data Valuable response also helping with directory names.
  • Error2: Failure sending erase group start command to the card (RCA:2) :: command: fastboot erase recovery

Card RCA:2

This card was nearly continually in failures

# fastboot continue
[phone] Error No. 2: Failure sending read command to the Card (RCA:2)

One site had a theory about why recovery writes fail having to do with multiple bootloader slots. My phones though....

# fastboot --set-active=a
fastboot: error: Device does not support slots
# fastboot getvar slot-count
slot-count:

ADB Process

ADB mode is less important than Fastboot mode, but problems in Fastboot can sometimes be solved by having a proper ADB capability. So it can be worth it. The commands are different from Fastboot. Also, you might even have to manually make Plugdev rules for the damned thing. If you can see it in lsusb, you have a chance.

YES

adb start-server
adb kill-server
adb logcat
adb devices
fastboot continue

NOPE

fastboot erase boot
fastboot flashing unlock_critical

failed f3q hard reset

The first pass at restoring factory failed with the message...

Secure booting error!
Cause: boot certificate verify

errors

  • partion table doesn't exist :: command: fastboot erase data Valuable response also helping with directory names.
  • Error2: Failure sending erase group start command to the card (RCA:2) :: command: fastboot erase recovery

plugdev group

I want to add a system group

# groupadd -r plugdev
, add myself to it, and then also of course make a rule...
# nano /etc/udev/rules.d/51-android.rules
. The rule is described well here.

SD/USB boot

Site describes how to unbrick using the EMMC method, special software. It appears however this method requires also converting the KDZ file into BIN files for the software. A pain.

A33 Unbrick with SD Card (8:09) Kiko Dog, 2015. Requires special program to burn the OS onto the SD card.

Monday, December 30, 2019

Pt 2 :: A33 (quad core 32-bit Cortex A7) Allwinner notes

Links: key xda post :: firmware site

Ok, here we go again.

  1. Uses eMMC (not NAND) flashing
  2. Can run the installation from an SD card, which makes no changes, but allows users to do so.
  3. Maybe can use linux scripts in lieu of PhoenixCard or Phoenix USB (manufacturer), or Live Suite (retailer)

Command line connection

This particular Allwinner (A33) has a sunxi sun8i SoC (System on a Chip). I found this using the app, "Terminal Emulator for Android" and looked in the /system directory.

adb

NB: both boot.img and recovery.img are image files, so one needs to know which is which to know which directory into which to put them.

Different ID's depending on mode, like other phones.

$ lsusb
1f3a:1007 Allwinner Technology Android
18d1:d001 Google Inc. Nexus 4 (fastboot)
Similarly with the ADB's; depends on the mode.
$ adb devices
List of devices attached
990c3b4b07f100000000 device
990c3b4b07f100000000 recovery
990c3b4807f100000000 sideload
$ adb reboot bootloader [to run other adb's]

fastboot

press power and volume down at same time. When it's correct, you'll see only the A33 Quadcore logo with caption "Allwinner Tech". Verfiy...

# fastboot devices
Android Fastboot fastboot

yes

fastboot devices
fastboot erase boot [or recovery, data, cache, system]
fastboot continue

no

fastboot devices
fastboot flash boot someimage.img [block size]
fastboot continue
video unbrick with SD card It's possible that the initial "fastboot flash boot" failed with block size errors because all block sizes in the phone must be 1024 (native to phones), not 4096 (native to my laptop and desktop) or 256 I got the PhoenixCard here and then tried to use it with Wine.

Sunday, October 27, 2019

Pt 1 :: A33 (quad core 32-bit Cortex A7) Allwinner notes

Links: ADB, APK, and ZIP sideloading :: Gadget Hacks :: XDA developers

Must have: a Micro SD card for side loading ROMS. There's no other way.

The Allwinner A33 QuadCore touchscreen tablet anachronisms come straight out of Guangdong. They run $40 on EBay and come preloaded with Android 4.42 (KitKat) and firmware embedded adware. The A33 has (a $4) quad-core 32-bit Cortex-A7 processor and a dual-core Mali-400 MP2 GPU, both are licensed from ARM, and these are built by Onda (v702 or v975).

The tablets feature only 500Mb of working RAM, and 1.2 G of internal storage, half taken with bloatware.

Google, Phone, Linux?

I can't find the SIM installation location or an IMEI. As noted however, it's Android Wi-Fi, so it would seem to do anything a Wi-Fi phone would do, if a person could get it properly configured to detect WiFi. It's not lsusb detected when a USB Micro-B (older Android connector) is attached to the tablet and the opposite USB-A connector is plugged into a desktop.

But is there a Linux distro that runs on it so we can use it as a media player tablet? It has a 3.5mm sound jack.

Out of the box, the tablet is a functional media player. Load media via USB from one's desktop -- the 7" 1024x600 WSVGA display (9" advertised, lol) natively plays MP3's and MP4's rendered as 5:3 WVGA, or WXGA...

Video: h264 (High), yuv420p, 1366x768 [SAR 2048:2049 DAR 16:9], 1096 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 47.95 tbc (default)
Audio: mp3 (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 192 kb/s (default)
... typically created by re-rendering video, eg...
$ ffmpeg -codecs [to be certain]
$ ffmpeg -i original.mkv -vn -ar 44100 -ac 2 output.wav
$ ffmpeg -i original.mkv -vcodec libx264 -b:v 500k -s wxga -an output.avi
$ ffmpeg -i output.avi -i output.wav -acodec libmp3lame
-ar 44100 -ab 192k -ac 2 -vol 330 -vcodec copy -b:v 504k wxga final.mp4

Recharge with a standard Android charger. They supposedly take a SIM and phone service if needed. It's extremely slow, even loading a browser page. I believe the limit for SD card expansion is 32GB.

rooting these days (2019)

It's not like it was in years past. The tablets require the hassle of rooting unless you can tolerate malware/adware, but at the same time, these days, we can't easily sideload APK's and ZIPs without tripping SafetyNet (more in this 7:32 video -- TLDR: IP/DRM sewer strikes again) and losing access to much of Google Store. BTW, since one needs to access Onda factory firmware, in order to disinfect it, some custom ROMS might be fun to attempt. Fortunately, the SELinux is natively set as "permissive" (verify with any root validator), which is a start. Still, and even though it's necessary in this case, sideloading undoubtedly carries the complications of 1) signature verification, 2) tablet compatibility, and 3) Google Store risks. Early on, it looked like a new sort of ROM that carefully avoids modifying PlayStore files Xposed, might be the best solution.

some features

type note
Processor Core7 (32 bit) quad core
SoC Sunxi 8i sunxi8i
GPU Mali-400 MP2
/etc/asound.conf alsa config file for pulse
/usr/share/alsa/default.pa change ALSA hooks
/etc/pulse/default.pa change PulseAudio hooks

rooting problems 12+ hours

It's not easy; , many people have problems rooting this tablet. Neither Kingroot, Kingoroot, SuperSu, nor Towelroot could root this tablet. It was also the case that the old version of SuperSu(2.46) blocked installation of the newer SuperSu(2.82), lol. I had to get a special uninstaller, and boot into Recovery Mode, to remove the old SuperSu. This also did not work -- as with all other ZIPs, the installation was aborted.
Xposed also was a failure (screenshot), not even its basic Framework was successful. Meanwhile, from the store, I downloaded the Terminal Emulator for Android (Pavlovich), so that I could at least use the terminal once rooted. But really, I was beginning to think of some ARM version of Linux by this point. Eg, I located an ARM Arch port, and they had some Onda compatibility, but only the 2 core version of the ARM7 was available. The other interesting look might have beeen the Android Pi with GAPPS, since there are apparently getting to be many AOSP ROMS out there, if the A7 can run any of them.

wine and iRoot

I found a post from a person who successfully rooted this tablet. He wasn't confident about the process, he knew he used iRoot, a Windows based PC app, with a USB connected to the device. Unfortunately, USB device connections are one of the largest shortcomings in Wine(2015). If you've seen Chris Titus' video on Garmin software (11:45), you know he's good with these kinds of environments, so I went to his web-pages about it. I ultimately used an Arch configuration (I describe it here) underwritten with his knowledge. In short:
1) Recovery preliminary -- to kill the ad and stealware.
  • Tablet: settings -- enable developer USB connections and security
  • Tablet <-> PC: physically connect USB cable.
  • PC: digitally establish a USB connection. Suggest CLI, eg simple-mtpfs --device 1 ~/mnt
  • PC -> Tablet: transfer the ZIP file (eg, ROOT_Limpieza_Logo_V3.zip) onto whatever tablet SD card
  • Tablet: Settings -> Backup & reset -> Recovery Mode and reboot into recovery mode.
  • Tablet: select the ZIP file and reboot
The option will also appear to use either Launcher or Nova Launcher, of which Nova Launcher is apparently the lighter.
2) Install APK -- for root binary, others.

screenshot

Power and Volume Down buttons simultaneously.

disable gmail

you have to disable this or it will be downloading messages to your phone.

browser viruses and notifcations

Try to modify the stock browser google's instructions.

auto-mount connection

Requires writing a udev rule specific to the device.
  1. I get a better result with USB debugging (Developer options) turned on
  2. Put the device in file transfer mode, not just charging
  3. arrange the system as described below
I recommend this, in concert with mtpfs, a fusermount, (NOT gvfs) library way to mount. It also includes the utility mtp-detect. With a rule in place, the Onda always mounts. The rule-writing steps are described well in this Ubuntu post. For the Arch case...
$ lsusb |grep Onda
Bus 001 Device 032: ID 1f3a:1007 Onda (unverified) Android
... then take the bus and device and determine what the kernel calls them...
$ udevadm info --query=path --name=/dev/bus/usb/001/032
/devices/pci0000:00/0000:00:12.2/usb1/1-3
$ udevadm info --export --query=property --path="/sys/devices/pci0000:00/0000:00:12.2/usb1/1-3"
...
ID_MODEL='Android'
...
ID_MODEL_ID='1007'
...
... then create the rule, in /etc/udev/rules.d ...
# ONDA A33 - MTP mount & unmount rules SUBSYSTEM=="usb", ATTR{idVendor}=="1f3a", ATTR{idProduct}=="1007", MODE="0666", OWNER="your-login" ENV{ID_MODEL}=="Android", ENV{ID_MODEL_ID}=="1007", ACTION=="add", RUN+="/usr/bin/sudo -b -u your-login /usr/bin/go-mtpfs -dev=1f3a:1007 -allow-other=true /media/Nexus_4" ENV{ID_MODEL}=="Android", ENV{ID_MODEL_ID}=="1007", ACTION=="remove", RUN+="/bin/umount /media/Nexus_4"

Sunday, October 20, 2019

[solved] Nougat (Android 7) - USB options selection

In Android 7, the USB notification is sometimes available in the shade, but other times it doesn't appear. This is because some USB -> Micro USB (Android port) cables will only charge. If the cable has the capacity to transfer data, the options will appear pulling down the shade.

After tapping, the options appear, of course, as we see in the second screenshot.

Sunday, December 4, 2016

[solved (suboptimal)] thunar udiskie fickleness - android, cgroups, lost weekend

Rambling hurried post here to be edited down later, but basically breadcrumbs from a basket of unhappiness attempting a USB download of a picture from my phone. Three of us guys took a picture at the football game on celly -- can we even look at the photo on a desktop?

setup

Normal. I have my regular user in the uucp group and libmtp installed per typical. I have EHCI and UHCI USB controllers that easily recognize and mount any USB drive. The phone is cleanly ID'd in lsusb.

solution (still suboptimal)

The only app that could interact with the phone was simple-mtpfs from the AUR (yaourt). The CLI is required to mount and unmount the phone, but GUI is no problem except for mounting/unmounting. Make a directory in ~ called mnt or something else easy to remember and verify that the device has been detected:
$ simple-mtpfs --list-devices #verify detected
$ simple-mtpfs ~/mnt #mount phone
$ fusermount -u ~/mnt #unmount phone
At the same time, one should blacklist auto-mounting from inside ~/.xinitrc. This stops problems with gvfs attempts to automount the phone, or anything else. Auto-mounting usually fails in a way which apparently conflicts with udiskie2.
$ nano .xinitrc
# stop gvfs auto-mounts
export GVFS_DISABLE_FUSE=1

problem

On every system I have but the newest (aka, "DRM"est) one, I connect via USB and thunar detects and displays it. On the new system, even with MTP and all related software installed, I get the following symptom upon USB connection: phone detected, but in installer mode, on the phone the taskbar shows "USB slow charge only", and in the phone main screen, a popup with "Media Transfer Protocol" and a spinning prompt asking me whether I'm on a Mac. This means three different descriptions for the same connection. Unbelievable. Once I click Mac or whatever, I lose the phone on my system, lose the phone screen, and see USB slow charge on the phone status bar. It's outrageously wrong that protocols are this kludged nowadays in the copyright universe (or whatever the ultimate underlying problem is, but typically copyrights/DRM) with proprietary, instead of standardized, file and mounting types. A simple file manager connection is matter of a weekend.

thunar: volman issues

Volman is just not seeing the phone as what it is: if I start thunar from a terminal and connect the phone to a USB, lsusb detects it right down to the model number, but thunar does not, spewing, eg:
thunar-volman: Unsupported USB device type.
thunar-volman: Unsupported USB device type.
thunar-volman: Unknown block device type.
thunar-volman: Could not detect the volume corresponding to the device.

Good discussion about volman with USB is here, including many fellow gvfs and gnome-disk-utility haters (though we can install no-gconf, which helps somewhat). Interestingly, this led to one person, I think on the second page noting they use rox, udiskie, and openbox (esp the openbox pipe menus), but openbox is still too heavy for me, and I don't like rox that much. However, the idea of pipes intrigued me -- if I could get pipes in icewm, I could still use thunar for everything else so: thunar, udiskie, icewm pipes. Found this icepipes discussion, which laid most of it out.

mtab: an old friend reveals another kludge

So was the phone being mounted at all? This led to yet another new issue: cgroups. I catted /etc/mtab, an old friend that simplifies viewing what's mounted (eg. where is my f*cking phone?), if mounted. This time, in addition to the 4 or 5 entries I expected, I was greeted with an additional 8 unknown mounted file systems from who knows where in my system and so eating who knows how many processor slices or memory blocks:
tmpfs /sys/fs/cgroup tmpfs ro,nosuid,nodev,noexec,mode=755 0 0
cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd 0 0
cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0
cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0
cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0
cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0
cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0
cgroup /sys/fs/cgroup/net_cls cgroup rw,nosuid,nodev,noexec,relatime,net_cls 0 0
cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0
cgroup /sys/fs/cgroup/pids cgroup rw,nosuid,nodev,noexec,relatime,pids 0 0
... as well as these 6 beauties...
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
mqueue /dev/mqueue mqueue rw,relatime 0 0
hugetlbfs /dev/hugepages hugetlbfs rw,relatime 0 0
configfs /sys/kernel/config configfs rw,relatime 0 0
securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0
... for a total of 14 new-to-me, unknown, mounted file systems, but I can't mount my f*cking phone without creating an fstab for that model? I guess the end-user is just becoming a nuisance. Anyway, a panicked df followed, and this thankfully only revealed 3 (still too many) of these new tmpfs entries. Why wasn't this on the evening news?