Changing the screen brightness on a Pi-Top Ceed

TL;DR:

You need to install OpenCV and its python libraries

Update:

This no longer works. At all.

One aspect of the Raspberry Pi ecosystem which continues to baffle me is the absence of a good cheap Pi desktop system. The Pi400 is terrific, but it lacks a monitor. In fact, monitors are a huge sticking point, in that it’s really hard to buy anything smaller than about 23″ across, and for less than about £120, that doesn’t plain suck. And if I were to buy a bunch of such monitors – where would I put them when they weren’t in use? They’re massive.

As far as I can tell, there’s no reliable supply of, say, 15″ 1080p laptop display panels with neat little stands and HDMI inputs. Doubtless nobody sells them because the economics don’t work out, but this still sucks.

There have been a couple of attempts to fix this, over the years. The Pi folks themselves sell a little 7″ touchscreen, but… well, it was maybe a decent proof of concept, but beyond that it’s pretty hopeless. The only product I’ve seen that makes any sense is Pi-Top’s Ceed unit. I mostly like it: a small footprint on your desk, the Pi’s pins are sort-of accessible if you plug in a slightly odd extra bit (or do what everyone actually does and leave the Pi hanging out), the display is fairly poor but ‘good enough’, and the price is… well, it’s OK. Best of all: it’s lime green.

The units more-or-less stack, too, which makes them fairly easy to stash on a shelf when they’re not in use. You can fit about eight in a standard Tesco bag-for-life, which isn’t exactly great packaging but works pretty well if you’re careful.

Trouble is, the Ceed hasn’t been updated in years. It doesn’t really support the Pi 4 (though I believe you can make it work, if you power it separately), the display panel is still a shaky 1344×768, and so on.

Worst of all, the software support is… well, ‘quirky,’ if I’m being generous. For reasons I’ve never understood, Pi-Top run their own OS distribution. It’s built on top of Raspbian, but they do their own thing for a lot of classroom tools and teaching materials. I’ve zero interest in any of that, not because it isn’t good (I’ve no idea), but because I work across a range of systems and I want my Pis to be as close to vanilla as possible.

So, today: Pi3 on my desk, in a Ceed case. Fresh install of Raspbian on an SD card. Away we go. First problem: the screen’s awfully dim. How do I turn the backlight up?

There used to be a neat little script on github which worked well, but that now points to a help FAQ which doesn’t actually work, and anyway is incomplete. Here’s what actually worked for me:

First up, with the Pi’s pins connected to the Pi-Top Ceed Hub via the chunky cable, you need to enable SPI (or I2C, I forget which. Just turn both on). Do this is Preferences -> Pi Configuration -> Interfaces, then reboot.

Now you need some additional packages installed, but they’re not in the main Raspbian repo. The Knowledgebase article linked above would have you enter:

echo "deb http://apt.pi-top.com/pi-top-os sirius main contrib non-free" | sudo tee /etc/apt/sources.list.d/pi-top.list &> /dev/null
curl https://apt.pi-top.com/pt-apt.asc | sudo apt-key add

The first line here failed for me. I ended up adding the pi-top.list entry to /etc/apt/sources.list.d manually. The second line adding the crypto key worked.

An apt update/upgrade at this point does some slightly weird things, like install a different version of SonicPi. Mmmm. Whatever, but that’s not a great first impression.

The instructions then suggest:

sudo apt install --no-install-recommends pt-device-manager pt-firmware-updater pt-sys-oled

Meh, whatever. The oled thing is presumably to do with the fancier pi-top modular products, I’m not sure how it’s relevant here. Not installing recommended packages seems odd, and I eventually re-installed pt-device-manager without that flag. I’ve no idea if that was critical or not.

…and that’s where the knowledgebase article stops. After a bunch of digging around, I learned that the new command-line tool is ‘pi-top’, and that I was looking to do something like:

pi-top display brightness 10

…which sounds great. But it doesn’t work, because the python script underpinning the pi-top command has a dependency on … er … OpenCV.

I’m sorry, let me check my notes. Yes, ModuleNotFoundError: No module named 'cv2'.

<blinks>
The screen brightness control requires 280Mb of vision processing library?

Right.

Well,

sudo apt install python3-opencv

…and now the brightness command works. It takes about ten seconds to run, but it works.

Anyway, the upshot is that I’m genuinely not sure I could recommend the Pi-Top Ceed to anyone at this point. I got burned by Pi-Top’s original laptop units – they were shaky, and the support was useless. So I’m still not convinced the company has the resources to properly support legacy products, and a monitor which requires software updates just for a brightness control strikes me as very likely to have issues in the future.

Please, somebody make a ~15″ desktop HDMI monitor for bare Pis and Pi 400s.

Update, 2022-12-05:

As far as I can tell, none of this work any more. Or at least, not on a 64-bit install. The relevant packages appear to be unmaintained, and as far as I can tell the Ceed is now effectively unsupported. Drat.

Teams

If you know, you know.

My theory: the design brief was: “Build something which looks like Slack and demos well enough, but that is quantifiably worse in every respect. Then add video chat, because we have that lying around and it’s the one thing Slack doesn’t have, so everyone will have to choose us anyway.”

My laundry list from today:

  • Make the top-level organisational concept (the ‘Team’) a second-level component of the user interface, so you can’t switch quickly between Teams. cf. Slack’s ⌘1, ⌘2 etc.
  • Remove notifications from the interface for tertiary-level elements. So to find out if you have new messages within a specific team’s group, you have to open that team.
  • Ensure all of this is slow.
  • No keyboard shortcuts for any of this.
  • No menu items for any of this.
  • No matter how many Teams you’re a part of, they’re all presented within precisely one window.
  • Except Chats, which can be split out into separate windows.
  • …from which key elements of the interface are removed.
  • …except on mobile, where the ‘reply to specific message’ feature is added.
  • …so on mobile, drop the partial Markdown-processing of text entry.
  • Ignore separate Chat windows and switch to the main viewer if you respond to a notification alert.
  • Make those notification alerts not use system-provided mechanisms.

Let’s not get started on why Immersive Reader is a top-level right-click action for individual messages.

The irony here is that email bloody sucks, and many of us have been arguing to get off it for years. What I hadn’t anticipated was the future where we actually do move away from email… to something worse.

Back in the Pro Game

This guide to upgrading classic ‘cheesegrater’ Mac Pros is a rare example of a document which earns its ‘definitive’ title. An astonishing and immensely valuable piece of work.

Related: I’m dusting off my old Mac Pro. Again. It was built in 2008 – twelve years ago – but it’s enough of a tank that I fear it will once again be pressed into service. In theory I can hack it to run the current Mac OS, though it’s not quite clear if it’s going to need yet another graphics card to manage that. If all else fails I can reboot it into (whisper it) Windows 10, where it seems to behave like a normal, supported system.

Not being able to upgrade the RAM and drive in my not-quite-as-old MacBook Pro means it’s not cutting the workloads I’m trying to hack on right now. Amusingly enough, what’s tipped it over the edge is … Microsoft Teams. Sigh.

Where the time goes

One sign of a large project can be the degree of arcane hoop-jumping foisted on project members. Right now, I’ve a few projects underway where I’m supposed to track my time. In at least one case, the overhead of tracking my time will amount to more of my time than the time on the project I’m tracking. If you see what I mean. But here we are.

For the most part I’m rather enjoying using Toggl, which syncs nicely between web, desktop and mobile apps. It also nags me quite successfully, without being too smug about it. However, entering data is a little clunkier than I’d like, and the visual design and typography feel to me just a little… off, somehow. Like the app should be doing just a little more to render my recent history clearly? I’m not sure.

I’ll very likely stick with Toggl, but Brett Terpstra’s command-line/plain text system doing has caught my attention. I’m working partly on an Ubuntu laptop these days (more about that another time, perhaps, but the short version is: meh, but it was cheap) and tearing core tools out of the Mac/iOS ecosystem has its attractions. Presumably I could stick a doing log file in Dropbox and access it from whatever system I happen to be in front of, but these sorts of shell tools aren’t very usable from my phone, so there’s little net benefit right now. This is also why I haven’t (yet?) moved from Things to something more like .taskpaper format files. Also because Things is delightful and fabulous and sync works in exactly the way Dropbox sync all too often doesn’t.

Still: doing: interesting.

Push Off

It’s not that we need finer-grained control over our push notifications. It’s that we need the algorithms to be a whole lot less artificially stupid. This, for example, is not something that needed to interrupt my weekend.

The whole point of newspapers like the Washington Post is editorial taste, their ability to filter the world and find the bits of it which are important. It’s not clear to me that outlets like the Post should be risking algorithmic control.

Which will be the first newspaper to publicly pledge they’ll always keep a human in the loop?

Quick post to show Edith how this works

Just to annoy her, I’m going to:

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Hello, World!

On 29th August, this:

For more, see Gwydion’s own website.

The sausage sandwich here is significant. Elin rather missed out on the traditional tea and toast, and when she woke up a few hours later she was ravenous. Happily, the hospital canteen served what, at the time, seemed like the Best Sausage Sandwiches Ever.

Implausible hovering

Even if you aren’t of the steampunk persuasion, airships are plain cool. Here’s a bunch of them care of The Atlantic.

Airship

We’re used to seeing photographs of aircraft, and we imagine their speed and air flowing over their wings and all that; familiarity with the concept has led us to forget how mysterious they are. The A380 is big enough to offer a glimpse of sufficiently advanced technology, but only barely.

Photographs of airships do not, I suspect, do them justice. They didn’t fly, they hung. They were weightless, but far from massless: Hindenburg was as big as an aircraft carrier and it operated at a gross weight of more than 200 tonnes, roughly half the maximum take-off weight of an A380.

And it hovered. Silently.

Look at The Atlantic’s photos and tell me that wouldn’t have been just a little eerie.

Gernsback Discontinuum

It’s a terrible shame and a real disservice for the years to come when the people we count on to dream are content with IKEA and iPads.

Star Trek and the shiny, boring future — Adventures in Consumer Technology — Medium.

Great – and in an age of ever-longer blog posts, commendably short – essay on the lack of futurism in ‘futuristic’ cinema. The IKEA conformity of popular TV was something in which I cheerfully participated, mostly because it made my budget go further. But we were horribly aware that as a result, essentially all shows had the exact same look.

The other day I saw, lurking in the back of shot on Defiance, a giant caster wheel bolted to one of those kick-steps you use so kids can reach the sink. The whole thing was sprayed silver, presumably so it looked like some weird abstract future artwork. No, it was a wheel bolted to a kickstep, and painted silver.