Paolo Amoroso's Journal

Tech projects, hobby programming, and geeky thoughts of Paolo Amoroso

The historical novel The Physicists’ Daughter by Mary Anna Evans has just been published.

As a beta reader I had the opportunity of contributing feedback on the manuscript. I loved the story, the protagonist, and the setting. I nodded at all the geeky references to physics and the history of 20th century science, which is not suprising given the author's professional background in physics and engineering. However, the novel is for everyone and hooks you from the start.

A couple of decades ago I helped Evans brainstorm an astronomy related plot element of her novel Artifacts, and I have been enjoying her books since then.

#books

Discuss... Email | Reply @amoroso@fosstodon.org

Since getting a Xiaomi Redmi Watch 2 Lite smartwatch I've been monitoring the battery usage of the Mi Fitness (Xiaomi Wear) companion app for Android. On my Pixel 4 XL phone, with the watch turned off battery usage was at 10%, then dropped to an acceptable 4% a couple of days later.

I'll wear the watch mostly when on the go, so I want to control the resources the app consumes when the device is not in use.

#Android #smartwatch

Discuss... Email | Reply @amoroso@fosstodon.org

Thanks tmo for the shout-out to my journal in his blogroll. Check it out, there are good blogs I didn't know about.

When I blog, I post mostly for publishing a record of my notes and projects I can reference later. Although I do every effort for creating interesting or helpful content, I write with not much expectation of being read, as I'm used to the typical platform algorithms burying me and not bringing many readers.

So it's really rewarding when an actual person reads my blog and finds it interesting enough to recommend it. This is why I appreciate tmo's mention so much.

#blogging

Discuss... Email | Reply @amoroso@fosstodon.org

I bought a Xiaomi Redmi Watch 2 Lite smartwatch for use with my Pixel 4 XL Android phone. Here's the product packaging.

Xiaomi Redmi Watch 2 Lite product packaging

I wasn't familiar with Xiaomi's line-up of smartwatches but an Android Police article drew my attention to the Watch 2 Lite. I realized it's what I was looking for as it has the features and price point I want in a smartwatch.

Why did I get the product? Is it any good?

Motivation

I loved the glanceability and essentiality of the early Android Wear. Then came apps and Android Wear — later Wear OS — smartwatches became expensive, bloated, dog slow, and clumsy smartphone replicas.

All I want in a smartwatch is a cheap device that mirrors my phone's notifications, with vibration for incoming calls as a plus. Exactly what the Android Police article advocates for, highlighting the Watch 2 Lite as an example.

Although I don't care about fitness tracking, the Xiaomi Mi Band seemed perfect. I tried a Xiaomi Mi Band 4 but returned the product, as the screen was too small and notifications were barely legible with my prescription glasses.

The 1.55” display of the Watch 2 Lite seemed large enough. At a price not much higher than the Mi Band's, I decided to give it a shot.

Hardware

I've been using the Watch 2 Lite for over a day and text is comfortably legible with my glasses, particularly the text of notifications. Withouth glasses I can even read most large text. For example, the options of the system settings menu look like this.

System settings menu options on the display of a Xiaomi Redmi Watch 2 Lite smartwatch

The device is light and feels comfortable on the wrist. I don't care much for the design, which is good enough for me.

Touch sensitivity seems uneven. At times I have to tap icons or perform gestures more than once to make the actions go through.

The reviews of the Watch 2 Lite warn about the one-second delay between activating the display and it turning on, so it's something I expected. But the delay may be less of an issue than anticipated because, by the time I raise the wrist close to the eyes to view the screen after pressing a button to activate it, the display has already turned on.

It's still early to evaluate battery life. I turned off the fitness tracking features and functionality I don't need, so I expect it to be higher than average. Something to watch for is the battery usage of the Mi Fitness (Xiaomi Wear) companion app for Android, which is constantly at 10% on my Pixel 4 XL even with the smartwatch turned off.

Software

It didn't take much to familiarize with the few features of the smartwatch. The notifications shade is just a swipe-down gesture away from the home screen.

The companion app Mi Fitness (Xiaomi Wear) is a bit confusing though, especially when signing up for a new account. But, again, exploring the app clarifies how it works.

#Android #smartwatch

Discuss... Email | Reply @amoroso@fosstodon.org

I ordered a Z80-MBC2 Limited Edition Tin, an awesome homebrew Z80 single-board computer. It's available as a kit but I picked an assembled unit as I'm not familiar with hardware and soldering.

It was part planned and part impulse buy.

My Suite8080 project, a suite of Intel 8080 Aseembly cross-development tools I'm writing in Python, is making me rediscover the 8080 and Z80 CPUs, CP/M, and retrocomputing.

I'm having a lot of fun writing 8080 Assembly programs and running them under CP/M emulators, but I'd like to test my code also on actual hardware. So a few months ago I ordered a Z80 Membership Card, a homebrew 4 MHz Z80 single-board computer that runs CP/M 2.2. It comes only as a kit, so I'm having a hardware-savvy friend assemble it.

Yesterday I was googling for more Z80 homebrew computers and run across the Z80-MBC2. I noticed its impressive features such as an 8 MHz Z80, support for running different operating systems, including CP/M 2.2 and 3, and more. The product soon ended up in my shopping cart.

There's another reason why I want a second Z80 computer: redundancy.

I'll access these computers by connecting them to my Chrome OS devices via serial USB and running a terminal emulator. However, Chrome OS may or may not support the serial USB adapters of those computers and the only way to know is to try them. A second unit improves the odds at least one of them works.

For maximum flexibility I'd like to access the computers from Crostini Linux, but its sandbox may limit USB access. There are other options, such as running a Web Serial terminal emulator app under Chrome OS, or a similar app in the Android container. As a last resort, it should be possible to hook up the computers to my Android devices via an OTG USB adapter.

The Z80-MBC2 is about to be shipped and I look forward to receiving it.

#z80mbc2 #sbc #retrocomputing #CPM

Discuss... Email | Reply @amoroso@fosstodon.org

I made a poll on Mastodon asking what's the preferred delivery format for online courses. Although having a mix of formats and material is a good thing, I advised those taking the poll to select the format that best matches their learning style and needs, the one they'd prefer to get the majority of the content in given a choice.

Of the 33 polled users, 55% said they prefer text, 39% video, and 6% audio. Although the sample is tiny, there are a couple of interesting takeaways.

Video is the default format, with many creators and course platforms focusing on or requiring this medium. But I strongly prefer text, to the point video is a deal breaker for me. I suspected I may not be alone, hence the idea of the poll.

The majority of the users who took the poll prefer text like me. This is unexpected, I didn't think there may be so many. Another interesting takeaway is there's a small but significant preference for audio, possibly related to the popularity of podcasts.

I hope this bit of insight will help course creators, who seem to take video for granted.

#misc

Discuss... Email | Reply @amoroso@fosstodon.org

As a geek, I’m excited about the cool tech of the Google Assistant. As a user, I’m frustrated and disappointed.

Localizing Assistant products and features is significantly more complex than translating user interface text and documentation. It requires major development work on core functionality relying on language processing and machine learning. This delays the release of new products and features to countries outside of USA or languages other than English.

By the time an Assistant feature rolls out to Italy where I live, years later and often incomplete, I long forgot about it and don't give it a try.

Even when Assistant features do arrive in Italy, using them is frustrating. My Google Home Mini smart speaker may not understand me or can't do what I want, which happens sufficiently often to discourage further use. Also, potentially useful voice commands have little or no discoverability.

I end up rarely using the Assistant, and only for trivial tasks such as setting alarms or getting weather forecasts.

#Google

Discuss... Email | Reply @amoroso@fosstodon.org

The more I journal with Write.as here, the more I consider abandoning my Blogger blog. Blogger introduces friction, is inflexible, has a stale design, and Google isn't likely to develop it further.

#blogging

Discuss... Email | Reply @amoroso@fosstodon.org

Leanpub announced changes to pricing plans and features, including a membership plan similar to Kindle Unlimited. I'm not sure I like these changes, I need to study them in more depth.

Leanpub is a self-publishing platform focusing on technical and in progress works.

#publishing

Discuss... Email | Reply @amoroso@fosstodon.org

Chrome OS 101 was supposed to prompt to upgrade Crostini, its Linux container subsystem, from Debian Buster to Bullseye. A 9to5Google article on Chrome OS 101 noted:

Linux on Chrome OS now uses Debian 11 (Bullseye) with upgrade prompts available in the Settings app for those on Debian 10 (Buster). You also now get an upgrade log that’s saved in the Downloads folder.

However, when Chrome OS Stable 101.0.4951.59 landed on my ASUS Chromebox 3 with Crostini running Buster, I got no such prompt. A comment by the user Mr. Smith on an About Chromebooks post about upgrading to Bullseye clarified the prompt is hidden behind a flag.

I went through the upgrade process Mr. Smith outlined and it worked, sort of. Here are the steps I took:

  1. enable the flag chrome://flags#crostini-bullseye-upgrade
  2. reboot Chrome OS
  3. accept the prompt to upgrade to Bullseye
  4. open the Terminal app
  5. run the following shell commands:

    $ sudo apt update
    $ sudo apt full-upgrade -y
    $ sudo apt -y autoremove
    

Sure enough, after rebooting the system I got the upgrade prompt, accepted it, and watched a dialog reporting on the upgrade progress. A dozen minutes later the process ended with the following errors:

Failed to connect to bus: No data available
Failed to connect to bus: No data available
invoke-rc.d: initscript sudo, action "restart" failed.
Failed to connect to bus: No data available
dpkg: error processing package sudo (--configure):
 installed sudo package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 sudo
E: Sub-process /usr/bin/dpkg returned an error code (1)

I'm not sure what triggered the errors. But a few quick checks of Crostini suggested the installed apps work and nothing major seems broken. Therefore, I'm leaving the container upgraded to Bullseye 11.3 as is and monitor it.

#chromeOS #Linux

Discuss... Email | Reply @amoroso@fosstodon.org

Enter your email to subscribe to updates.