Repurposing an Old Tablet: A Time Hole of SDKs, Bootloops, and Stubborn Curiosity
What started as a small idea — turning an old Samsung Galaxy Tab 4 (SM-T230NU) into a dedicated FluidNC pendant — turned into a full dive into Android development, debugging, firmware archaeology, and system recovery.
Here’s the real takeaway from today.
Coming Up With a Simple Goal
The original goal wasn’t complicated:
- Old tablet
- FluidNC web interface
- Fullscreen
- Landscape
- Launch on boot
A normal person would’ve added the webpage to the home screen in Chrome and been done with it - and I might regret not stopping there - but it all came from curiosty.
Learning the SDK Environment
I spent time in Android Studio learning:
- How project structure is laid out
- Where manifests, layouts, Kotlin files, and themes actually live
- How Gradle build files fit together
- How SDK versions impact compatibility
I went from not knowing where things were to being able to navigate the project tree quickly and edit the right files without guessing.
I built a working APK — even if the target browser engine didn’t support what FluidNC needed, the app did exactly what I wrote it to do.
Using ADB and PowerShell
I pushed deeper into device-level interaction:
- Installed platform-tools
- Added ADB to system PATH
- Queried the device
- Verified connection in developer mode
- Used ADB to sideload, inspect, and test
Following the Rabbit Hole Further
Once it became obvious that Android 4.4 was the real limitation, not the app, I kept going.
That led me into:
- Hunting down discontinued libraries (Crosswalk, old .aar packages)
- Trying different browser runtimes
- Experimenting with launching Chrome in kiosk-like modes
- Testing fullscreen flags and orientation locks
- Dealing with missing APIs and deprecated functions
It stopped being about FluidNC at that point.
It became about a carefree environment for testing Android development that sparked from a simple project.
Stepping Into Firmware Territory
When software limits hit a wall, I decided to try upgrading the tablet entirely — aiming for LineageOS or anything newer than KitKat.
That started a different rabbit hole:
- Searching for factory firmware for a device long out of support
- Sorting through mismatched builds and dead download links
- Learning how PIT files map partitions
- Understanding (or trying to) why Odin fails during writes
- Flashing TWRP
- Watching the tablet "soft-brick" into recovery loops
- Figuring out how Samsung’s download mode actually behaves
- Attempting to restore system partitions manually
A lot of it was trial and error.
A lot of it was frustrating.
None of it was wasted.
It was about chasing a small idea until it forced me to learn:
- Android app fundamentals
- Legacy WebView limitations
- How Chrome vs system web engines differ
- ADB usage
- Firmware flashing and partition mapping
- Bootloader interactions
- How older hardware complicates everything
And honestly — it was interesting the whole way through.
Even if the tablet fought back at every step, I walked away knowing a lot more than when I started.
Creality Ferret 3D Scanner
The above photo is the third attempt at using the Creality Ferret - and the results are looking promising! While setup did not come without some of its challanges and learning curves, I believe it will be a useful tool for design going forward.
From the Creality website:
Based on the specs alone, we are to safe assume that we are limited by the .1mm accuracy, resolution and point distance of .16mm and the NIR ( near infrared) light source limiting our scanning ability for certain materials and thin objects, opposed to laser scanners, but overall a seemingly great entry level scanner.
Challanges
Getting started, I began with my phone which is a Samsung Ultra 23. To note, this version ood the scanner did not include the wifi bridge - so what's included is a 4500 mah battery boom, high speed USB C connector and the scaning unit. Connecting it to my phone was a tad frustrating, as I could not get it to remain connected. Thinking this was an issue with lint in my input, I spent a lot of time fiddling with what I thought was a hardware issue that seemly fixed itself after I happened to reboot my phone. It turns out, I will need to reboot my phone following every scan from this point forward, an annoyance for sure.
Following a scan, it warned me that my capture was large and require much time to mesh, and I should bring my project to my PC for meshing. I seemed to quickly have found the limitations of my phone hardware.
Switching to PC, I discovered that I was not utilizing my dedicated GPU (Graphics processing unit) and that Creality Scan was using the integrated display adapter. Once I changed this, the performance was great. I was able to use my high speed USB C cable that was purchased for my Oculus 2 before I figured out an Airlink solution, allowing me some addition travel while wired.
Laptop specs:
I9 14th Gen
64GB RAM
SSD's
4070
To play with a bit of a use case, I took my 1994 Tiger Power Rangers hand held and scanned it to design a battery cover off of it.
These pointcloud captures came out excellent. I used a few tips shared in the Facebook group and I think I am getting the technique for it.
CrealityScan has a feature to merge objects together and to achieve the best results and success of a merge, you must get overlapping surfaces for reference. I was able to do so with this scan and applying the image overlay turned out awesome
Here we can see some distortion in what is otherwise a great looking scan. The areas seemingly affected were the bottom edge of the objects position on the table. I think rotating the part and placing up off a table would allow for a crisper scan in these areas.
Over all, the scanner is great when connected to my computer. The software felt clunky at first - but such is the case when coming into any cad type software as controls can be different.
Looking forward to scanning other items and use them for practical designs.