Search This Blog

Thursday 23 November 2017

New Life for Old Tablets

As a techie, I have collected a number of tablets over the years.  There's a couple of very senior Pandigital Novels (Android 1.5), a middle-aged Kobo monochrome e-reader with wi-fi (non-functional due to an auto update from Kobo that was buggy, but apparently recoverable, when I have time...), a 7 inch Chinese tablet ("Diverseway MID7007" )running Android V4.2.2, and my main tablet, a 2012-era Samsung Galaxy Tab 10.1 .  (not counting the cast off older smartphones I have accumulated, a few of which run early Android versions, and some early iPhones...)
Fig 1- About Page of my Samsung Galaxy Tab 10.1, Pre Update



Google Crashes Tablets...
However, earlier this year, the Galaxy started to show frequent crash error messages from various Google Play apps, and the Google Browser would crash often on websites with complex page components (CBC.CA was a big problem, but far from the only one).  The Firefox Browser also had a lot of trouble with complex pages.  This was making the tablet unpleasant to use for news feeds, and other uses.

So began my search for a fix.  The tablet has reasonable hardware (ArmV7 dual core 32b cpu, 1Ghz, 722MB reported RAM (likely an actual 1GB..?) , 32GB internal storage), good display, wifi, bluetooth, various sensors, GPS and excellent battery life.  The OS was at Android V4.0.4 (ICS), Samsung's last official update for this tablet model.

Emphasis on Due Diligence Research...
Some online reading identified:
1- a lot of activity noted on multiple websites, regarding Android updates for this model.  Much discussion around updates from V3 and V4.0 to:  V4.1, 4.2, 4.4, 5.0, 5.1, and even a bit of work on  V6 and V7!  Multiple sources / groups identified as involved, but most common references are to:  the Android Open Source Project (AOSP), a fork called AOKP, and the CyanogenMod CM series of Android updates.  The CyanogenMod CM series became LineAge OS series last year.  The LineAge OS series officially doesn't list any updates going back more than a few years.
2- The likely cause of Google Apps failures (google's upgrades to NEON instruction set, with no support for older cpu sets), and some likely strategies to overcome this (rollback to earlier Google apps versions, ways to prevent auto-updates, and apparently kernel? updates to simulate the NEON instruction set components otherwise missing.)
3- safe and effective procedures to perform the OS update, using tools like TWRP, CWM, Odin3...

Fig 2- AOSP Android 5.1.1 Lollipop Update Thread
The Direction Forward...
So the direction forward seemed clear.  I elected to update to an Unofficial AOSP-based Android 5.1.1 Lollipop, using TWRP and Odin3.  There is a huge amount of discussion available about this update, esp. on the xda-developers website.  This work was done / led by senior developer "decatf", for whom I have incredible respect, given not only the excellence of his work, but his extensive involvement and support of those who asked for help along the way to using his work.  Many thanks!

The First Success...
Although I have extensive background in small computing hardware and software, this class of update flashing for Android devices was new to me.  I elected to start with one of the Pandigital Novels, since no big deal if I bricked it!  There is also extensive discussion of updates for this device, including Pandigital's interesting use of variations in Models to identify regional sales areas of the same device.  It's important to know what exact model you are going to update, and most of the discussion evolved around US model #s, rather than the Canadian model # on the device I have.  But this soon got clarified, and I was able to identify a likely update candidate, and successfully update one of my Black PDNs from V1.5 to V2.1 !.  There are a few glitches, as yet unresolved, that prevent reliable operation of the Google Browser, but the likely cause is too little space in the OS partitions.  It's a known problem, with some documented fixes, so when there is time, I may look into this further, but not a priority now.  Otherwise, a very useful update, using xda-developer "terminander" 's V2.1 update, as documented on the thread "Android 2.1 on the original BPDN --- coming to a channel near you".  Again, many thanks!

Onward...
So, on to the real goal, that of updating my Galaxy Tab.  Gathering the selected components was straightforward.  It is important to use a correct Samsung USB Driver to communicate between Odin3 on my W10 PC, and the tablet, in it's Download mode.  I had installed an old version of Samsung Kies some years ago in support of an early cell phone, and forgot about it.  Installing the latest Samsung USB driver package seemed to cause some problems with Odin, but the underlying cause was never clear.  After multiple uninstalls, and re-installs of a couple of versions of the Driver, and lots of Reboots, and some analysis of my USB subsytem with the marvelous USB TreeView utility (part of the MS Driver Dev Kit, and supported and improved by Uwe Sieber), I was able to see the tablet's download connection in Odin!

The Samsung standard Download / Recovery Tool is useful and deceptively simple.  So simple, in fact, that no-one really bothers to clearly and correctly describe how to invoke it, and cause it to actually begin a USB download!!  After some twiddling and references to the many partial notes online about how to get the actual download to begin, wondering all the time if this was a USB driver issue, things finally came together, and the TWRP Recovery Utility (twrp2870-20150814-p4wifi.zip) began to download and install, with no further issues.

Fig 3- TWRP Running on my Galaxy Tab, Prior to Backup, and Updates.


Everything else was easy from this point on!  Be sure to use decatf's update to the AOSP 5.1.1 ROM file, from 20171009 . It worked great for me.  I also installed the Google Play program set in p75xx-gapps-L-7-17-15.zip, with no problems.
I now have an updated Galaxy Tab 10.1, running well, without the problems I had before, and with some additional capabilities, such as overclocking, I have yet to explore.
The updated Android has a different look to it, wrt V4.0.4 .  It is very familiar, since it tends to match the appearance of my Nexus 5 smartphone,  which runs Android V6.0.1 !

Fig 4- Galaxy Running 5.1.1 - Home Screen, Post Update
Fig 5- Galaxy About Page, Post Update.


Saturday 25 March 2017

3D Printing Example...

I acquired a Prusa i3 type 3D Printer kit late last year from ElectronicGeek.com (EG) (Montreal; great printer, good price compared to eBay import for same printer, and great customer service from EG, btw!) The printer works reasonably well as built; the learning curve for solving the problems that occasionally appear is not trivial, but I am making progress.
We decided to use PLA only until we have a very good reason to use something else. Although I have a heated aluminum bed that works well, it is not needed for PLA work so far. I use blue painters tape (from Home Depot) to cover the bed, and get mostly good adhesion, as long as I change the tape frequently (no more than half a dozen prints in the same place, otherwise adhesion starts to become unacceptable).
A recent print that turned out well, was a case for my recently acquired Electronic Device Tester. This device, the LCR-T3-H, is a very versatile Arduino-based tester that handles many different types of 2 and 3 terminal, active and passive components. I've included some photos of several types of components being tested. The particular device I bought is based on a public domain design that is very well documented here: https://www.mikrocontroller.net/articles/AVR_Transistortester .
The case I built is described on Thingiverse here: http://www.thingiverse.com/thing:694790 .
This design was straightforward to print in PLA (despite a small amount of warping from insufficient bed sticking). The pcb is a tight fit, and the display panel backlight connections stick out a small amount past the edge of the pcb, requiring that a small section of the side wall of the case be cut out to allow the pcb to fit in the case. Still works very well.


Top view of case, shows startup info. 


Back view, base removed. ATMEGA386 smt chip, 8MHz crystal, not much else!

Back of case is a tight fit, screws not really needed. Print looks good...

Testing a Cap. One button operation, auto power off, tests battery on power up.

Inductor test.  But very small inductance looks like a Resister...

PNP xistor. also does FETs, SCRs, Diodes, etc. SMT parts too.