The SpaceMouse Wireless
This is a tale of ancient wizardry, yearning for control, failed prototypes, and just plain bad timing. Let us begin.
I’m a bit skeptical on the concept (even though I did use Windows 10 timeline a fair bit), but I find it rather telling that a key future Windows feature is tied to ARM processors (plus their NPUs, sure, but it’s a key sign that Intel lost the plot here).
This was a moderately intense week work-wise, but I had a few hours in the evenings to continue my tests of RK3588
boards and, of course, fiddle with GPT-4o’s API
.
I’m pretty impressed by the sheer speed of the responses, although I must say correctness hasn’t improved that much over GPT-4 (for the kind of stuff I put it through).
But the image analysis portion is pretty good and it works well with Open Web UI, so I get a nice chunk of the Pro experience without having to subscribe and I get to keep my chat history on my NAS.
I must confess I spent an embarassing amount of time playing with RetroArch. I mean, one has to unwind somehow, right?
Other than that, it was mostly about trying to trim down my personal backlog. So besides winding down my SpaceMouse project, I ended up fiddling with various electronics and doing a bit more CAD work for one of my projects, printing test slices and poking at measurements.
The nicest hack of the week was probably setting up a RP2040
to act as a PWM
signal generator for testing salvaged speakers:
# code.py
from audiopwmio import PWMAudioOut
from audiocore import RawSample
from array import array
from board import GP14
from math import sin, pi
from time import sleep
# Generate one period of a sine wave at 440 Hz
rate = 8000
length = rate // 440
data = array("H", [0] * length)
for i in range(length):
data[i] = int(sin(pi * 2 * i / length) * (2 ** 15) + 2 ** 15)
pwm = PWMAudioOut(board.GP14)
sample = RawSample(data, sample_rate=rate)
# Short beeps
while True:
pwm.play(sample, loop=True)
sleep(1)
pwm.stop()
sleep(1)
The RP2040
is a pretty neat little chip and it can do a lot more with audio, but as always, it is the little hacks that are the most satisfying.
This is a tale of ancient wizardry, yearning for control, failed prototypes, and just plain bad timing. Let us begin.
Someone said on Twitter that “The Apple TV has just become 1000% more useful”, and I tend to agree. We already played Apple Arcade games on it occasionally, but great classic arcade emulation (like R-Type) is just a fabulous thing to have.
Apple’s restrictions on JITs make it a little less efficient than my NVIDIA SHIELD, but with the right tweaks the overall experience is so much more polished…
With RetroArch (and PPSSPP) in the App Store, I think it’s time to start discussing system emulators again. I’d love to see Basilisk II, Amiga and even PC emulators in the App Store–and right now, about the only reason I would consider using the Alt Store is if they (by some miracle) were the only ones distributing UTM.
Come on, Apple, take the next step and let me run UTM (with hypervisor support, or at the very least a JIT) on my Apple Silicon iPad Pro–then we can stop complaining about the iPad not being “Pro” as far as developers are concerned.
Aside from the overly enthusiastic Californian attitude and several cringe-inducing moments, this felt a lot like a trailer for Her (which was an intentional subtext, I’m sure).
I can’t see why I’d need a singing AI (let alone two doing it badly), but a few of the demos hinted at some interesting applications for multimodal models that regular people might actually use, and the math tutor one, despite seeming very scripted, was interesting enough to make me wonder what else it can really do (and how much of it is just smoke and mirrors).
The latency also seemed vastly improved, which is definitely a factor. All of this hints at a set of tweaks that are decidedly non-trivial, and I’m curious to see how it will work in real life.
But, in short, this added emphasis on voice and visual interaction makes recent rumors about Apple being in talks with OpenAI to improve Siri seem a lot more plausible–they would definitely appreciate the Californian vibe, for starters, and OpenAI has apparently already licked watching an iPad screen, so they’re halfway to immersive integration already.
Still, there’s a long way to go. Even though I live and breathe English with a motley accent, I am a bit miffed that the multi-language support is still a work in progress. There were a few glitches in the demos, and the text examples still read as Brazilian Portuguese–the overbearing presence of which in training corpuses has been a long plight for Continental Portuguese tech folk.
Thanks to the lethargy brought upon by allergies and the beginning of the warm season, this was a week where most of my free time was spent fixing things and building tools.
Another technique for boosting inference speeds–this time at the expense of a little more fine-tuning effort, which seems fairly easy to justify for a 3.5x speed gain.
Considering the rumor mill had already laid out pretty much everything that was going to be presented, today’s “event” could almost have been an e-mail–except for this, and the way it makes the new iPad Pro look like an even more insanely powered tablet held back by an overly simplified OS.
Yes, the lack of feature parity between iPadOS and macOS is still ridiculous (and I will keep beating that drum, at least from a functional perspective). Making use of all that performance and power efficiency with iOS apps feels… Too limited.
Still, it’s pretty impressive. I fully expect the next iPad mini (that will replace the one I’m typing his in) to at least have an M2–hopefully better, to tide it over for a few years given they only update it when the cows come home.
Update: I just noticed that the new iPad Magic Keyboard ships with an
Esc
key! What a time to be alive!!!
Following up on my display hackery, I upgraded my SK1’s firmware to the latest iteration, which didn’t really fix its display (it now displays thumbnails, but all the responsiveness bugs I mentioned in my review are still there).
A couple of months ago, Deepsounds reached out to ask if I could have a look at their Novation Circuit Tracks patch editor, to which I enthusiastically agreed since I was actually in the process of adding a MIDI IN
interface to my MiniDexed and designing printable DIN
to TRS
adapters so I could use both together.
Like I wrote on my review, the TwoTrees SK1 comes with a somewhat serviceable, but quite buggy screen that uses the Nexion UI toolkit. At the time I was already able to use CYD-Klipper to have a remote display, but I’ve been investigating ways to get KlipperScreen working, and finally set up a single-cable, plug-and-play solution:
I loved my Palm devices, end even though I am actually writing this with scribble on my iPad, I miss the simplicity and speed of Graffiti almost every day–and wish I could use it on an IPhone.
I had my own suspicions back when HashiCorp changed the Terraform licensing (and, yes, I’ve pretty much switched to OpenTofu on the one or two things I use that require infra nuke & pave), but I can’t say that IBM did a bad deal here - even though I don’t see that much value in the enterprise market (multi-cloud is very much a reality, but once you have Kubernetes a lot of the truly relevant plumbing vanishes from Terraform), it is a nice complement to RedHat’s Ansible and IBM’s own (almost unknown) orchestration software.
And, of course, it’s yet another data point for doomsayers harping on about Open Source licensing being a barrier to corporate growth…
Just updated my Ideapad Flex, and it’s nice to see how it’s improved since I started using Fedora 36. So yes, I’ve definitely settled on Fedora as my laptop distribution of choice, even if I still target Ubuntu on the server.
(I’ve resisted moving my laptop to Silverblue or Bluefin for now, but I suspect it won’t take long.)
This week’s notes come a little earlier, partly because of an upcoming long weekend and partly because I’ve been mulling the LLM
space again due to the close release of both llama3
and phi-3
.
Back when I last tried it (on the Apple TV, quite a few years back), Provenance was very nice. I just hope it won’t follow Delta’s footsteps and discriminate against EU users.
I ended up throwing my back out on early in the week, so most of my time was spent in comical pain, moving around like a crab on stilts and trying to get some work done in between bouts of lying down, watching Fallout and reading Scalzi’s Starter Villain, which was actually quite fun.
Since it seems to be iOS emulator season, I thought I’d rewind back to my Easter break, when as a concession to the need to relax I decided to pack some form of gaming device. But since I also wanted to minimize packing, I settled on a game controller and using my iPad Pro for light gaming.
I know I am very late to this party, but the stupidest thing about this for me is that as a EU resident, if I want to download Delta (which is a free app), I have to install AltStore and pay Eur. 1.50 + VAT a year, which is definitely something I don’t agree with in principle. And it’s all Apple’s fault to begin with, regardless of the fact that the EU forced them to allow third-party app stores, because this is to cover Apple’s Core Technology Fee.
I’m just going to wait until this stupidity gets sorted out and I can get it via Apple’s own app store–there are literally dozens of Nintendo emulators out there still, and I suspect Delta will be outclassed by all the Android ports that are likely to pop up.
I’ve been pointing out that LLMs are barely optimized for ages now, so here’s another example of possible inference speedups that seems very promising (it works somewhat like on-the-fly distillation).
If this technique checks out and ends up implemented in mainstream tooling like ollama
, it’s going to significantly lower compute and memory requirements for a bunch of scenarios.
In short, I spent a fair chunk of my time dabbling with LLM
s again, but also still dealing with shifting priorities at work.
As part of my forays into LLMs and GPU compute “on the small” I’ve been playing around with the AceMagic AM18 in a few unusual ways. If you missed my initial impressions, you might want to check them out first.
This is what I’d splurge on if I had free rein on my budget (and the time to relax and actually play with it).
Only thing it seems to be missing is using the USB
port for audio (which seems kind of silly, since it would let people do away with their audio interfaces).
Also, it would be nice if Arturia ever bothered to ship V-Collection as iOS Audio Units, but I’ve mostly given up waiting on that.