Preparing Retired Laptops For Computing Beginners

I’ve just finished looking over several old laptop computers with an eye for using them as robot brains running ROS, a research project made possible by NUCC. Independent of my primary focus, the exercise also gave me some ideas about old laptops used for another common purpose: as cheap “starter” computers for people getting their feet wet in the world of computers. This intent involves a different set of requirements and constraints than robot building.

In this arena, ease of use becomes paramount which means most distributions of Linux are excluded. Even Raspbian, the distribution intended for people to learn in a simplified environment on a Raspberry Pi, can get intimidating for complete beginners. If someone who receives a hand-me-down computer knows and prefers Linux, it’s a fair assumption they know how to install it themselves as I had done with my refurbished Dell Latitude E6230.

Next, a hand-me-down laptop usually includes personal data from its previous owner. Ideally it is inaccessible and hidden behind password protection, but even if not, the safest way to protect against disclosure is to completely erase the storage device and reinstall the operating system from scratch.

Historically for Windows laptops such cleaning also meant the loss of the Windows license since the license key has almost certainly been separated from the computer in its lifespan. Fortunately, starting from Windows 8 there is a Windows license key embedded in the hardware, so a clean install will still activate and function properly. For these Windows laptops and MacOS machines, it is best to preserve that value and run its original operating system. This was the case for the HP Split X2 I examined.

If a Windows or MacOS license is not available, the most beginner-friendly operating system is Chrome OS. It is available for individuals to install as Neverware CloudReady: Home Edition. Putting this on a system before giving it to a beginner will allow them to explore much of modern computing while also sparing them much of the headaches. And if they dig themselves into a hole, it is easy to restart from scratch with a “Powerwash”. This was what I had done with the Toshiba Chromebook 2 I examined.

But modern computing has left 32-bit CPUs behind, limiting options for older computers lacking support for 64-bit x86_64 instruction set. It meant Neverware CloudReady is not an option for them either. It is possible the user can be served by a machine that is a stateless web kiosk machine, in which case we can install Ubuntu Core with the basics of web kiosk.

And if we have exhausted all of those options, as was the case for the HP Mini netbook I examined, I believe that means the machine is not suitable as a hand-me-down starter computer for a beginner. Computers unable to meet minimum requirements for all of the above would only be suitable for basic command-line based usage. And whether computing veterans like it or not, current convention wisdom says a command line is not the recommended starting point for today’s computing beginners.

So in order of preference, the options for a beginner-friendly laptop after wiping a disk of old data are:

  1. Windows (if license is in hardware) or MacOS (for Apple products)
  2. Either original Chromebook/Chromebox or Chrome OS via Neverware CloudReady.
  3. Ubuntu Snappy Core in Web Kiosk mode.
  4. Sorry, it is not beginner friendly.

A Tale of Three Laptops

This is a summary of my research project enabled by the National Upcycling Computing Collective (NUCC). Who allowed me to examine three retired laptop computers of unknown condition, evaluating them as potential robot brain for running Robot Operating System (ROS).

For all three machines, I found a way to charge their flat batteries and get them up and running to evaluate their condition. I also took them apart to understand how I might mechanically integrate them into a robot chassis. Each of them got a short first-pass evaluation report, and all three are likely to feature in future projects both robotic and otherwise.

In the order they were examined, the machines were:

  1. HP Split X2 (13-r010dx): This was a tablet/laptop convertible designed for running Windows 8, an operating system that was also designed for such a dual-use life. Out of the three machines, this one had the longest feature list including the most modern and powerful Intel Core i3 CPU. But as a tradeoff, it was also the bulkiest of the bunch. Thus while the machine will have no problem running ROS, the mechanical integration will be a challenge. Its first pass evaluation report is here. For full details query tag of 13-r010dx for all posts relating to this machine, including future projects.
  2. Toshiba Chromebook 2 (CB35-B3340): This machine was roughly the same age as the HP, but as a Chromebook it had a far less ambitious feature list but that also gave it a correspondingly lighter and slimmer profile. It is possible to run a form of Ubuntu (and therefore ROS) inside a Chromebook, but there are various limitations of doing so. Its suitability as a robot brain is still unknown. In the meantime, the first pass evaluation report is here, and all related posts (past and future) tagged with CB35-B3340.
  3. HP Mini (110-1134CL): This was a ~10 year old netbook, making it the oldest and least capable machine of the bunch. A netbook was a simple modest machine when new, and the age meant this hardware lacks enough processing power to handle modern software. While technically capable of running ROS Kinetic, the low power processor could only run the simplest of robots and unable to take advantage of the more powerful aspects of ROS. The first pass evaluation report is here, and all related posts tagged with 110-1134CL.

While not the focus of my research project, looking over four old laptops in rapid succession (these three from NUCC plus the refurbished Dell Latitude E6230 I bought) also gave me a perspective on preparing old laptops for computing beginners.

HP Mini (110-1134CL): First Pass Evaluation

This HP Mini netbook was the oldest of three laptops in this NUCC-sponsored research project. As a netbook, it was a very limited and basic machine even when new, and that was around ten years ago. A lot has changed in the computing world since then.

Today, its 32-bit only CPU limits robot brain applications, as only the older ROS Kinetic LTS released prebuilt 32-bit binaries. Outside of robot brain applications, any modern graphical user interface is sluggish on this machine. From Chrome OS up through Windows 10 and everything in between. When running Ubuntu Mate, it actually felt worse than a Raspberry Pi running the same operating system, which came as a surprise. Both had ~1GHz CPUs and 1GB of RAM. And even though a 10-year old Atom could outperform a modern ARM CPU, the 10-year old Intel integrated graphics processor has fallen well behind a modern ARM’s graphics core.

So it appears the best position for this machine is in running command line computing or data processing tasks that work well on old low-end Intel 32-bit chips. It would be a decent contender for the type of projects that today we would think of running on a Raspberry Pi. With the caveat of weaker graphics effects, it offers the following advantages over a Raspberry Pi:

  • Intel x86 (32-bit) instruction set.
  • Higher resolution screen than the standard Raspberry Pi touchscreen.
  • Keyboard (minus the N key in this particular example)
  • Touchpad
  • Battery for portable use
  • Actual data storage device in the form of a SATA drive, not a microSD card.

It is also the only one of the three NUCC machines to have a hard wire Ethernet port. As someone who’s been burned by wireless communication issues more than once, this is a pretty significant advantage over the rest of the machines in my book.

 

HP Mini (110-1134CL): Command Line Adept

So far I’ve determined a ~10 year old netbooks lack the computing power for a modern desktop graphical user interface, even those considered lightweight by today’s standards. Was it always sluggish even in its prime? It’s a little hard to tell from here, because even though computers have undoubtedly gotten faster, our expectations have risen as well.

But there’s more to a computer’s capability than pushing pixels around, so we fall back to the next round of experiments with command line interface systems. And since we’ve already established that a solid state drive was not a great performance booster on this platform, I put the original spinning platter hard drive back in for the next round.

This time instead of Ubuntu Desktop, I installed Ubuntu server edition instead. This minimalist distribution lacks the user friendliness of a graphical user interface, but it also lacks the graphics processing workload of displaying one as well. As a result this machine is quite snappy and responsive. I found it quite usable, especially now that I’ve learned about virtual consoles and use the Alt key plus F1 through F6 to switch between up to six different sessions. Simple tasks like running Python scripts and running a basic server were done easily and quickly.

I started experimenting with Ubuntu 16, because Ubuntu did not release prebuilt installation binaries for 32-bit Ubuntu 18. However, once Ubuntu 16 server was and and running, I was able to rundo-release-upgrade to move up to Ubuntu 18. From minor tinkering I didn’t notice any significant difference between them.

Then I remembered I had played with an even more minimalist Ubuntu earlier, on an even older machine. Ubuntu 18 Snappy Core is available for 32-bit i386 processors, and it installed successfully on this laptop. Now I have one more incentive to learn how to build my own snaps to install on such a system. I just have to remember to that I can only connect to an Ubuntu Snap machine via SSH, and the list of valid keys associated with an account do not auto-update. I typically generate a SSH key every time I reset a machine, and I no longer have the keys to access my previous snappy core experiment. I ended up reinstalling snappy core to pick up the current set of SSH keys.

HP Mini (110-1134CL): Ubuntu Mate and Chrome OS Slow Even With SSD

After a ~10 year old netbook was upgraded with a solid state drive, we can now confirm the hard drive is not the only thing holding back performance. The following experiments indicate the old Atom CPU at the heart of this machine lacks the power to run any modern operating system graphical user interface.

First up at bat was Ubuntu Desktop 16.04 i386. It ran sluggishly when loading from this machine’s original spinning platter hard drive, and it was not significantly better when loading from the upgraded solid state drive. Watching the HDD activity light earlier, I thought this might be the case, but wanted to verify firsthand, which I have.

Next candidate was Ubuntu Mate, which has a 32-bit installer for 18.04. (Mainline Ubuntu stopped supporting 32-bit in 18.) Even though Ubuntu Mate advertised itself as a lighter-weight alternative to mainline Ubuntu, it was unfortunately still far from pleasant to use. But if needed, one reason to run Ubuntu Mate 18.04 is for the longer supported timeframe of Ubuntu 18. According to Ubuntu releases list, 18 is supported until April 2023.

I then tried an even more constrained operating system: install Chrome OS and make a faux Chromebook out of this thing. I had known Neverware CloudReady as a build of Chrome OS that anyone can install on an old laptop to turn it into a Chromebook. I had trouble making it work before on an old machine before, and wanted to try again.

I noticed the minimum recommended amount of RAM has increased as I remembered it was 1GB, now it is up to 2GB. But that was just a recommendation and I was able to load CloudReady on this netbook with just 1GB RAM. Once launched and running, CloudReady proved to be about as sluggish as Ubuntu Mate 18.

But that’s not the biggest problem:

CloudReady 32-bit EOL

CloudReady, originally advertised to help give old machines new life, has been forced to leave 32-bit CPUs behind. After seeing this notification I went online to find their announcement, as well as confirmation that Chrome OS v76 was about the right vintage for this to happen.

For interactive graphical desktop use, it really doesn’t get any more lightweight than Chrome OS and this machine still struggles. It looks like we need to fall back to a text-based server edition of operating system software.

HP Mini (110-1134CL): SSD Upgrade

Installing Ubuntu Desktop 16.04 LTS on this ~10 year old netbook resulted in a very sluggish computing experience. Since it was not a speed demon even when new ten years ago, I doubt its performance was only held back by its old school spinner platter hard drive. As a quick experiment, I’ll perform a SSD upgrade and see how much of an performance improvement it would result.

Opening the door at the bottom revealed a memory module as expected. It appears to be a DDR2 memory module with a capacity of 1 GB. Unfortunately I don’t have any DDR2 laptop memory modules to attempt a memory upgrade, so I left it alone and continued trying to open the laptop.

HP Mini 110-1134CL remove easy stuff

There are clips around the perimeter. Trying to open them up, I find resistance at the corners due to screws hidden underneath each rubber feet.

HP Mini 110-1134CL screws hiding under feet

Removing them did not help release the top and bottom halves of the machine, so there are even more fasteners I have yet to see. Looking for what I might have missed, I found three screws with a keyboard icon inside the battery compartment.

HP Mini 110-1134CL keyboard retention screws

Removing those screws allowed the keyboard to be popped open, exposing the hard drive plus additional fasteners holding the laptop together. The focus at the moment is the SSD upgrade, so I’ll hold off on further disassembly for now.

HP Mini 110-1134CL keyboard removed

The bright piece of metal had the right shape and size for a hard drive cage, and it was also conveniently labeled with an instructional diagram. I thought that was great — it’s going to be as easy as 1, 2, 3! Except it wasn’t. For reasons I don’t understand, they neglected to mention two more screws that had to be removed before I could proceed with steps 2 and 3.

HP Mini 110-1134CL hard drive removal

Once removed, the stock hard drive was held to this cage with four standard mounting screws. From there it was straightforward to install a 2.5″ SATA SSD for further adventures in netbook computing.

HP Mini (110-1134CL): Slow At Ubuntu 16 Desktop

A quick hardware orientation tour of this retired netbook found that we should be able to run ROS Kinetic Kame on this computer. Getting a simple ROS Kinetic environment running would be a baseline test to see how it might perform as a robot brain. And for that, we’ll have to erase the Windows 7 Starter Edition on this hard drive with Ubuntu 16.04 “Xenial Xerus”.

A sticker at the bottom of the machine identified the default operating system as Windows 7 Starter Edition. Since this machine predated Windows 8 mechanism for embedded licenses, we know this hardware would not have an embedded license for Windows and erasing this drive would mean the loss of a Windows license. I decided a Starter Edition license was no great loss and proceeded to install Ubuntu Desktop 16.04 LTS, i386 (32-bit CPU) edition.

Installation was successful on this netbook, but it was annoyingly slow to use. Every action required a few seconds, starting from activating the logon screen to every single interaction after that. I don’t know if running Windows 7 Starter Edition was any more responsive on this computer, but I wouldn’t have wanted to run an end-of-life OS even if it was faster.

What was the bottleneck here? Was it the CPU? Was it the RAM? Was it the hard drive? Or perhaps a combination of the above, like a lack of RAM triggering virtual memory activity that is hampered by a slow hard drive? For diagnosis I appreciated the fact this little netbook had a hard drive activity light, a feature that has been dropped from most modern machine. Judging by the lack of activity on that light, I suspect the problem is a slow CPU and upgrading the drive to a SSD would have limited benefit.

Even with this pessimistic view, I wanted to give it a try. I had a spare SATA SSD already on hand so it shouldn’t take a lot of time to test.

HP Mini (110-1134CL): Hardware Specifications

After a quick check to make sure this machine comes to life after charging, I started researching its hardware specifications. A sticker below the machine identified itself as a HP Mini 110-1134CL.

Based on reviews online for the HP Mini 110 product line, this is roughly ten years old powered by an Atom N270 processor. This is a big strike against using this computer as a robot brain running ROS, as the N270 is limited to 32-bit software. The latest longer-term support distribution of ROS “Melodic Morenia” only officially supports 64-bit Intel/AMD chips. If this machine is to run ROS, it would be limited to the previous LTS of ROS “Kinetic Kame” which is not ideal, but at least it will be supported until April 2021.

According to BIOS readout, there is 1GB of RAM installed on this computer. An access door with a memory module icon is visible on the underside of the machine, so a RAM upgrade is probably possible. But I don’t have any old memory modules on hand and I’m not inclined to spend money upgrading a ten year old computer. A single gigabyte is expected to be very limiting, but it is possible to get a very basic ROS installation running on a Raspberry Pi 3, which also only has 1GB. It might get annoying but is probably not going to be a deal breaker.

The BIOS hardware list also describes the hard drive as an old school spinning platter type, which was as expected. Thankfully the Fujitsu MJA2160BH G2. A 2.5″ 160GB 5400 RPM is at least a standard SATA drive and not the compact variant that stumped me earlier. This means I have the option to try upgrading it with one of the SATA SSD drive I already have on hand.

Now that I’m oriented, it’s time to take on the first experiment: see if it can run Ubuntu 16, the basis for ROS Kinetic Kame.

HP Mini (110-1134CL): Relic of the Netbook Era

After I had completed my first pass at the Toshiba Chromebook 2, I moved on to the third and final machine in this research project made possible by NUCC: the HP Mini 110-1134CL. It is an example from “netbook” era, a category of computers launched by the Asus Eee PC. Netbooks were an early attempt to build minimalist computers for basic internet activity, years before Chromebooks defined their own product category.

Like Chromebooks, the first netbooks ran a custom operating system that offered a web browser and very few other basic applications. But unlike Chromebooks, netbooks quickly abandoned custom OS and started running a special “Starter Edition” of Windows. Was it due to customer demand? Manufacturer preference? Microsoft offering carrot and stick? I have nothing useful to contribute here.

Like the other two machines, when I received this machine the battery was flat. Nothing happened when I first pushed the power switch. Fortunately it could be charged with the “type I” tip for my Targus universal laptop AC power adapter, same as the Toshiba Chromebook 2 I looked at earlier.

While it was charging I looked over its physical condition. There is a missing “N” key on the keyboard, but nothing else was outwardly wrong. Once the battery was charged, I turned it on to take a quick look at its condition. I saw what I recognized as the Windows 7 boot up sequence, but after some time staring at “Welcome…” I never got to the login screen. It threw up an error of “failed to start” without any error codes I could investigate, and suggested “rerun installation” which I don’t particularly care to do as we’ve long passed the end of life for Windows 7.

That’s a problem to be looked at later. For now, I’m glad the machine showed signs of life making it worthwhile to spend some time looking over its specifications.

Toshiba Chromebook 2 (CB35-B3340): First Pass Evaluation

Taking apart this Chromebook immediately after taking apart the HP Split was a very instructive contrast in varied approaches taken when building a laptop. Even though the two devices were only 2-3 years apart, they ended up at very different destinations reflecting the philosophy of the software they were designed to run.

HP Split was built for Windows 8, together they positioned themselves to be all things to all people including ability to convert between tablet and laptop modes. And as a result the overall package is big and bulky. It tries to do everything, but it’s not especially great at any single task.

A Chromebook runs Chrome OS, which is a thin shell built around the Chrome web browser. It does not try to be anything else, and its simplicity in software was also reflected in a thin lightweight laptop built for a singular purpose and doing just that one thing well.

Windows 2-in-1 machines have evolved a lot since the first generation of devices like the HP Split, and while the penalty for compromises have been greatly reduced, they still exist in the form of weight, space, cost, or some trade off between them. In contrast, Chromebooks have remain thin and light machines in terms of software, hardware, and price tag.

If I wanted to turn this Chromebook into a robot brain computer, though, I need to break out of the Chrome OS sandbox and put it into developer mode. Unfortunately that menu is only visible on the primary display, which is broken. I could spend money on a replacement screen, but it seems wasteful just to use it to toggle the developer mode switch. A robot brain computer would not need a screen! So if I am to buy the screen, I should probably use it as a Chromebook laptop. The cost/benefit for that isn’t great, because Chrome OS may drop support for this hardware platform pretty quickly. When that happens,  security upgrades stop coming.

I will set this machine aside while I debate what to do. In the immediate future I have the third and final machine to examine in this research project.

Toshiba Chromebook 2 (CB35-B3340): Hardware Internals

While I contemplate buying a replacement screen to bring this Chromebook back to function, I removed the bottom panel as well, just for a look. Ten screws held the bottom panel in place, two of which were hidden under two rubber feet. (Top two as shown in this picture):

Toshiba Chromebook 2 CB35-B3340 bottom

Once removed, we could see the surprisingly roomy interior.

Toshiba Chromebook 2 CB35-B3340 internals

This was a relatively thin laptop for its age and screen size, so I had expected components to be packed densely. The battery, a single large module in the center, dominated the volume as expected. On either side are speakers, each with the luxury of the largest enclosures than I’ve ever seen in laptop speakers. Far larger than the volume allocated to speakers within the HP Split. I’ve read that interior volume for audio tuning is at an extreme premium, with sound designers fighting for millimeters, so it was a surprise to see this. And even with that use of volume, there are still room left unused near the corners.

Electronics occupied the area close to the hinge. They covered less than half of the available surface area and far less than half of the available volume within this laptop. Most of the main circuit board was covered by a metal shield, so I removed it to see components underneath. (In this picture, the machine was rotated 180 degrees relative to previous picture.)

Toshiba Chromebook 2 CB35-B3340 internals without EM shield

I see the CPU, RAM, and flash storage are all tightly integrated and soldered on board. No RAM or storage upgrades for this machine, which is consistent with the Chromebook ethos. About the only core component not soldered down is the commodity WiFi card, which I interpret to mean there was little to no cost savings to integrate an unit.

I had known about Chromebook’s concept of reduced complexity, but it was mostly in terms of software and maintenance. Since Chrome OS was running a Linux kernel under the hood, I expected the hardware to be just as complex as any other laptop. But apparently not this one, which I found very interesting. Now I’m curious if all Chromebooks have electronics guts simpler than equivalent full PC laptops. If I have the opportunity to take apart more Chromebooks in the future, I’ll keep an eye open to see if this is actually common across all Chromebooks or maybe the simplicity of this model is just good work on the part of the Toshiba Dynabook team which designed this Chromebook.

This was an interesting and instructive look inside the machine, time to put it back together and take stock of the current situation.

Toshiba Chromebook 2 (CB35-B3340): Replacement Screen Shopping

I have an old Chromebook that was pretty obviously retired due to a broken screen and I freed the damaged module for a closer look. I had no expectation that I could repair the display module, as there’s a visible crack. Interestingly the crack is inside the glass and not present at the outer-most surface. There’s also discoloration surrounding the crack hinting at more severe damage underneath. I could probably go online and find information on the display module used in this particular Chromebook, but getting the make and model is only a secondary objective. Before I contemplate a replacement, I wanted to first make sure I could install the replacement with low risk of damage. Hence the removal exercise to verify the lack of an impenetrable wall of glue or similar impediments.

It turned out getting to the actual module label was useful because this device was apparently sold in multiple configurations. There’s at least one variant with a minimal 1366×768 low resolution panel, and this device was an upscale version with a 1920×1080 panel. A search on Amazon marketplace found replacement new LP133WF2(SP)(A1) available for roughly $75 (*) and eBay sellers in a similar price range.

The price was the last piece of information I needed, now I need to make a decision about this project. $75 isn’t a terrible price to pay to bring a laptop computer back up and running, but it doesn’t compare very favorably to what else that money can be spent on. Even if we limit ourselves within the Chrome OS ecosystem.

New Chromebooks can be had for a little over $100 with the occasional sale, though at that price point we’re limited to 1366×768 resolution displays. I’ve seen 1920×1080 resolution Chromebooks at around $150 on sale, or roughly double the cost of a replacement panel. A new Chromebook would have access to newer developer features like Crostini that this Chromebook does not. A new Chromebook will also receive Chrome OS updates for at least five years, where support for this 2014 vintage ‘swanky’ Chromebook would end considerably sooner. Even if I put Ubuntu on this machine via Crouton, it is still dependent on Chrome OS for Linux kernel security updates.

At $75 for a new replacement panel, the economics is a tough call. I may contemplate buying salvaged panels which are available for less. (As of this writing, as low as $47.) I’ll keep thinking about this for a while. In the meantime, I want to look at the rest of this Chromebook out of curiosity.


(*) Disclosure: As an Amazon Associate I earn from qualifying purchases.

Toshiba Chromebook 2 (CB35-B3340): Screen Removal

If I wanted to turn this Toshiba Chromebook 2 into a robot brain, I need to put it into developer mode to install software outside of Chrome OS. Unfortunately the menu to put it into developer mode is only visible on the primary display which is damaged and illegible. Time to explore what it would take to bring the screen back.

The screen bezel are held in place by two screws and a lot of plastic clips. Once the screws were removed, I could go around the perimeter and pop loose all the plastic clips.

Toshiba Chromebook 2 CB35-B3340 screen bezel screws

After the bezel was removed, I noticed a small magnet held inside. This allows the base to detect if the lid is open or closed via a Hall effect sensor. If we end up going without the screen and need to spoof lid state, this is where we would place a magnet.

Toshiba Chromebook 2 CB35-B3340 screen bezel magnet

The lid had heat-set inserts that looked like they could be used to help fasten the screen in place, but no fasteners. I thought maybe someone had investigated screen replacement before me and just didn’t put the screws back, but as it turns out, screws wouldn’t have done anything.

Toshiba Chromebook 2 CB35-B3340 heat set insert but no fastener

This screen is held by four adhesive pads, one at each corner. Perhaps a different model used a different screen with metal brackets that would have been held using screws, but this screen was held by sticky pads.

Toshiba Chromebook 2 CB35-B3340 screen freed from adhesive pads

Once freed from the four pads, the final point of attachment was the electrical connector. The plastic tag is actually adhesive tape, helping to keep two sides of the connector together together. Once plastic is peeled away from metal, it was easy to unplug the connector.

Toshiba Chromebook 2 CB35-B3340 screen cable

Disconnecting that connector freed the screen, and we can take a closer look.

Toshiba Chromebook 2 (CB35-B3340): Developer Mode

The upside of a Chromebook is that the user never has to worry about hardware specifications, applications minimum requirements, or any of the typical headaches of computer ownership. It’s all handled through the Chrome browser. The downside of a Chromebook is that the user is not allowed to install traditional computer applications. Or at least, not by default. Under the hood, Chrome OS runs a Linux kernel, and it’s possible to use that as a foundation to extend computing experience outside the walled garden of Chrome OS. I started learning about Crouton, a project using chroot capability of Linux kernel to allow a variant of Ubuntu or Debian to run on Chromebooks.

Documentation for Crouton referenced the Crostini project, a way to get a Linux shell and container support without putting a Chromebook into developer mode. It sounds like a great thing to try first! But unfortunately this particular Chromebook is not supported. More specifically, this Chromebook hardware generation with the code name ‘Swanky’ does not meet the hardware virtualization support required for Crostini.

Especially frustrating is the explanation that, while the Intel spec sheet says the Celeron N2840 has the required hardware virtualization support, ‘swanky’ Chromebooks actually use a special variant of the chip without such support. I guess it saved them some money at the time? Keeping in mind the original intent of Chromebooks, it made sense to cut out virtualization support. But that decision now cuts this laptop off from Crostini.

So no Crostini for this machine, back to looking at Crouton. And the next critical step is to switch this Chromebook into Developer Mode. Holding down ESC + Refesh then pressing power, I can see the broken display is illuminated but the external monitor is not. It appears the recovery/developer mode menu is shown only on the built-in display, which I can’t read. And unlike the power wash menu earlier, the screen mirror key combination has no effect on the developer mode menu.

I searched online for a complete procedure to put this Chromebook into developer mode. Unfortunately all I found were”press control-D from recovery screen and follow menus” which isn’t helpful when I can’t read the screen!

It appears if I want to venture outside the Chrome OS sandbox, I have to look into screen replacement and the first step is investigating its removal.

Toshiba Chromebook 2 (CB35-B3340): Hardware Specifications

The old Chromebook retired due to cracked screen has been updated to latest Chrome OS, so I started searching for its technical specifications. I stumbled right out of the gate, failing to find anything on toshiba.com. Eventually I learned Toshiba sold a majority share its laptop business to Sharp and the new company (does that make it a joint venture?) is called Dynabook.

This would explain why every single product support page for the CB35-B3340 I found was under the Dynabook domain. There is not a lot of detail here, as a Chromebook is supposed to be low maintenance and they carried that concept through to reduced number of things a user has to worry about. A Chrome OS user shouldn’t ever have to worry about gigahertz or gigabytes.

But I did get some useful information implying this machine meets requirements for running robot operating system (ROS). The Intel Celeron N2840 processor is 64-bit capable. The maximum clock speed is up to a very respectable 2.58GHz. But it is constrained to run under 7.5 Watts, so it’s still an open question whether it has enough processing power in practice. Typical web browsing only need CPU power in short bursts: render a web page, then wait for the user to read the page, before rendering the next page. But robot intelligence puts a consistent high workload and if the machine needs to stay under 7.5 Watts it might have trouble sustaining maximum clock speed.

Its 4GB of memory and 16GB of flash storage meet bare minimums for even contemplating an Ubuntu installation. I’m not sure if 16GB storage is enough for the full suite of ROS nodes, but it can certainly run the subset necessary to operate a particular robot. And just like how CPU operating pattern differs between Chrome OS and ROS, the storage I/O pattern will be very different between typical Chrome OS and ROS. There’s a risk the flash storage will wear prematurely, a concern to keep in mind.

But first, we have to get this system to a point where we can install ROS, because ROS doesn’t install on bare Chrome OS.

Toshiba Chromebook 2 (CB35-B3340): Reset and Restart

I have a Chromebook with a damaged screen. Fortunately I could connect an external monitor via HDMI and mirror the primary display. It makes the machine usable, which is an improvement, but I have to command display mirroring every time there is a change in state. I have to press the magic key combination after every boot-up, every user log-in, and every user log-out. It is rather less than ideal but at least I can proceed.

The first order of business is to erase the system. The Chrome OS login screen showed the image of someone’s Google profile. I don’t know who it is, and I don’t care. This person’s data is none of my business and, since it is a Chromebook, I know all their data is still available online with Google.

Chrome OS has a “Log in as Guest” option, which allowed me to access the system settings menu. I thought this was where a system reset could be commanded, but after coming up empty handed I went online for more research and learned a Chrome OS reset is actually triggered by a particular key combination upon power-up. I was worried the reset process would be restricted to the primary monitor, fortunately I could mirror that display to initiate the reset process which someone at Google decided to call a powerwash. Cute.

Once up and running on a blank slate, the next order of business is to update the system. There’s no telling how long it has been since this machine received a security update.

Chromebook 44.0.2403.156

This model Chromebook launched in 2014. Chrome OS 44.0.2403.156 was released August 19, 2015. Since Chrome OS auto-updates itself, it appears this particular machine lasted less than two years in use, possibly far less, before its screen was damaged. This makes me feel bad for the original owner.

Chromebook 53.0.2785.154

Update was a multi-stage process, I assume due to its age. I’m not familiar with Chrome OS development history but each of these steps probably transition across large architectural changes. The first round of update only took it to 53.0.2785.154 (October 2016).

Chromebook 72.0.3626.122

Another round brought it to 72.0.3626.122 (March 2019) This update resulted in a very different looking user interface and many items were moved around.

Chromebook 79.0.3945.123

Yet another round of updates brought it to 79.0.3945.123 (Jaunary 2020) which is the latest available. This is a pleasant surprise, as I had not expected this device to still be supported but it looks OK on the Developer Information For Chrome OS Devices page. This model launched in 2014, and Google only guarantees Chrome OS support for 5 years, so this device is probably living on borrowed time.

We’ll worry about that later. Now that we are up and running with latest Chrome OS, time to start looking at technical information.

Toshiba Chromebook 2 (CB35-B3340): Cracked Screen

By the time I wrapped up investigation of the HP Split tablet/laptop convertible, the Targus type I adapter arrived. I needed it to charge the battery in the remaining two machines of my research assignment from NUCC. I set aside the HP Split and started charging the Toshiba Chromebook. Once the charge LED turned from orange to white, I turned it on and the answer to “why was this machine retired?” was immediately apparent.

Toshiba Chromebook 2 CB35-B3340 screen detail

There is a large diagonal crack across the middle of the screen. Sometimes when a screen is damaged we could still read the content around the crack, but not here. The entire screen is illegible. Turning the machine on and off a few times, I saw the content is not consistent between runs. Either Chrome OS is booting to a dynamic splash screen every time, or what’s visible just have no correlation with the intended content.

Fortunately, this Chromebook has a HDMI video output port. Plugging it into a monitor, I see a very pretty picture of a night time landscape. This is probably a background picture, but without any controls, it is merely the secondary screen. The login prompt is still on the primary display I can’t read.

Since this was my first Chromebook, I didn’t know if there was a key combination I could press to toggle from this “extended” mode to “mirrored” mode where the login screen is sent to both displays. A little bit of research implied that there was, and a few minutes of fumbling found the magic keystroke: control plus an icon that might be maximizing a window or possibly going full screen.

Chromebook keyboard closeup

I’m not sure if it’s common to all Chromebooks or specific to this model, but at the moment it doesn’t matter. I can see the ChromeOS login screen on my external monitor, time to get down to business.

HP Split X2 (13-r010dx): First Pass Evaluation

After I had my fun looking inside this retired tablet/laptop convertible, I put it all back together and verified everything still worked. As far as I could tell there’s no functional problem with this machine, no deviation from original designed performance. It’s even capable of running the latest release of Windows 10.

Why it was retired by its original owner? My personal opinion points to the nature of a tablet/laptop convertible. When this class of devices were introduced alongside Windows 8, they were advertised to be machines that combine the best of both worlds. But Windows 8 failed to deliver its promised revolution in touch-centric tablet computing. So machines that made design compromises instead found themselves saddled with the problems of both worlds.

Even though it offered bigger screen real estate than the standard iPad, it had inferior resolution and responsiveness is sluggish. It is also significantly heavier on account of having all the hardware of a PC inside the case, including the hard drive I failed to replace. For normal web browsing and content consumption, it isn’t any better than an iPad. Sure, it can be docked into the base to do things an iPad can’t, but that just brings in a different set of problems.

The laptop mode dock had to support the weight of a full PC inside the tablet module, whereas normal laptops only had to support the weight of the screen. This class of hardware became inherently top-heavy and required a lot of design work to keep from toppling over. Up to and including unfortunate additions of counterweights. The hinge and docking mechanism adds parts weight and cost, resulting in a laptop that is bulkier and more expensive than non-convertible counterparts. This machine is nominally a 13″ laptop but it is almost double the physical volume and weight of a 13″ Macbook Air from the same era.

The computer market of 2020 have some pretty compelling 2-in-1 machines, built with the advantage of several years of hardware advancement. High resolution screens, flash storage, and power-efficient CPUs that can run on smaller lighter batteries. They incurred a much smaller penalty for the compromises of a convertible design. Technology moved on, and first generation convertibles like this model were left behind.

But even if it is no longer desirable as either a tablet or a laptop, this machine is still capable of running latest generation of software. Including latest releases of Windows 10, Ubuntu, and both ROS 1 and 2. Despite being saddled by the performance of a hybrid hard drive, I’m confident some interesting use for this machine will be possible. I’ll set this promising machine aside for now to examine the next unit in line.

HP Split X2 (13-r010dx): Docking Base Internals

After I’ve poked around in the main tablet unit of this convertible laptop, attention shifted to the docking base. There were 9 screws, 4 of which were hidden under rubber feet which had to be removed.

HP Split X2 13-r010dx base

Once the screws were removed, only a few tabs held the panel in place. Since the base had functionality in addition to just hosting a keyboard and touchpad, it was not a surprise to find circuit boards near the USB ports, HDMI port, and SD card reader. But there is also a long, much larger than expected, circuit board. This base must be more sophisticated than what I gave it credit for.

HP Split X2 13-r010dx base unused connector

An unused connector caught my attention. Typically when a connector is not used, it is not even soldered to the board. (See earlier examination of a potential M.2 connector.) This connector is soldered, but unused. Perhaps supporting a feature of an upscale model or an optional upgrade, but I have no guesses on what it might be.

HP Split X2 13-r010dx base possible ballast

Another unusual point of interest are these two pieces of metal flanking the touch pad. They appear to serve no electrical or structural purpose, and I speculate they are here just to provide a few grams of weight. Convertible tablets like this device are top-heavy and it’s a challenge to prevent them from toppling over backwards when open. Clever geometry could solve most of this problem, but when all else fails, bolt some counterweight to the base far from the hinge for leverage. Some laptop shoppers compare by weight, motivating companies to go to great lengths to reduce overall weight. Adding counterweights negates the effort, so I would guess these were done as a last resort.

There was more inside this base than I had expected. Now that I’ve looked around the insides, it’s time to put this machine back together and write down some concluding thoughts before moving on.

HP Split X2 (13-r010dx): Tablet Innards

I took apart this convertible tablet/laptop with the goal of upgrading a SATA hybrid drive to a full SSD, but I was foiled. Since I had it open anyway, I took a look around. With the hybrid drive sitting directly in the middle and batteries on either side, circuit boards were necessarily scattered on either side with ribbon cables connecting them.

Most of the computing brains resided on a circuit board up top, and peripheral interfaces lived on the bottom. Including the microSD slot, headphone jack, charging port, and the docking connector. In between them were black speaker assemblies, one left and one right.

HP Split X2 13-r010dx wifi module

There were also provisions for interface cards to flank left and right of the main processing board. On one side is a WiFi interface module, with wires leading to antennae. The antenna is smaller than I had expected, but I don’t know enough to say if this necessarily meant reduced WiFi range. I also noticed the WiFi module didn’t occupy the entire width of the interface slot, leaving a few pins unconnected. I don’t think I’ve ever seen that before.

HP Split X2 13-r010dx unpopulated connector

The opposite side is even more interesting, with pads for an absent connector. This has roughly the pin counts to be a M.2 “B key” edge connector which could support a M.2 SSD. There’s also a hole cast into the chassis that’s roughly the correct distance to secure a M.2 2280 card. But like my previous experience with unpopulated connectors, several adjacent supporting components also seem to be missing from the circuit board so I am not confident I can just solder a M.2 connector and make things go.

I was curious if the 4GB RAM on this board could be upgraded. If a standard memory module is here it would be under the metal shield covering most of the processing board, but I didn’t want to dig that deep just yet. 4GB is enough to cover basic tasks and it is clearly not designed to be easily upgraded.

With curiosity about the tablet internals satisfied for the moment, I reassembled the tablet module and turned my attention to the docking base.