James Mitchell

Hi, I'm James Mitchell

IT Operations Specialist • Builder • Problem Solver

I build things, break things, and figure out how they work. This blog is where I share projects, experiments, lessons learned, and technical discoveries across IT, automation, RF, security, and software development.

Featured Projects

View all featured →

Latest Articles

View all posts →

Orca slicer

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.


About Me

James Mitchell

I'm James Mitchell, an IT Operations Specialist with a strong interest in CNC automation, software tooling, RF experimentation, hardware security, and practical problem solving. JimDotDev is my working notebook, project journal, and public learning archive.