In a way it feels somewhat silly to market a version of Lisp as targeting resource-constrained platforms, considering the systems it ran on back in the 1960s, but as time goes on, what would have given 1970s Big Iron a run for its money is now a sub-$5 microcontroller that you can run uLisp (MicroLisp) on. This particular project now even has an ARM assembler that is written in Lisp whose source code (GitHub) fits on a mere two A4-sized pages.
ULisp currently supports five platforms, being AVR-nano (ATmega328 and similar low-cost AVRs), AVR, ARM, ESP (8266 and 32), as well as RISC-V. The purpose of this assembler is to execute native ARM instructions when running on an ARM board, since uLisp itself runs a Lisp interpreter on the platform. When executed natively like this, a considerable speed-up of the task can be expected, as illustrated by a number of ARM assembler examples in the documentation.
Running a Fibonacci sequence that takes 24.6 seconds with the Lisp version on an Adafruit Metro M4 is reduced to a mere 61 ms when ARM assembly is used instead. This shouldn’t be too shocking, since this assembler essentially bypasses the Lisp runtime, coming closer to what would be the performance of firmware written in e.g. C. However, it also demonstrates that with this ARM assembler it is possible to have your Lisp and still get native performance when you want it, all using Lisp code.
The design philosophy of Unix is fairly straightforward. Software should do one thing as simply as possible, and do that one thing only. As a design principle this is sound advice even well outside of the realm of Unix, and indeed software in general, but that doesn’t stop modern software packages from being too large for their own good. So, if you’re tired of bloated chat programs like Slack or Mattermost with their millions of lines of code, you might instead favor something like Simple Unix Chat (suc).
The idea is that suc can perform almost all modern chat functions in only five lines of Bash, supporting rich-text chat, file sharing, access control, and encryption. These five lines, though, only perform the core function of suc — which is to write text to a file on the system. Indeed, suc makes liberal use of plenty of other Unix services which do not add to the line counts, such as the use of SSH to handle authentication. It also relies on some other common Unix system features to handle things like ownership and access for the text files that host the text for the chat.
As channels are simply text files, it makes writing bots or other tools exceptionally simple. You can also easily pipe the output of commands directly into suc with one-liners that can do things like dump the output of make into a specific channel if compilation fails.
While it’s not likely that everyone will ditch tools like Slack to switch to something like this, it’s still an impressive demonstration of what can be done when designing around the Unix philosophy and taking advantage of system tools that already exist rather than reinventing the wheel and re-programming all of those tools into the application. Practices like this might decrease development time and increase the ease of developing cross-platform applications but they often also produce a less than desirable user experience.
We’re sorry to say that back in May we missed the passing of Walter LeCroy, the man whose name appeared on some of the most desirable and higher-spec oscilloscopes to be found. If you’ve never used a LeCroy ‘scope then you’ll still have benefited from his work, as a pioneer of storage oscilloscopes even the more modest instruments which now grace our benches owe much to his legacy.
The linked article about his life comes from the successor to his company, and describes his early experience in scientific instrumentation and in particular in the field of high-energy physics,before the development of the first digital storage oscilloscopes. In particular it mentions the 1971 “Waveform Digitizer”,a device that used a transmission line and a series of sample-and-hold circuits to grab and digitize a sequence of readings with a single ADC. It goes on to describe the model 9400 series from the 1980s which with its successors are probably are what come to mind for many of us when thinking of a LeCroy ‘scope, the familiar big square box with integrated computer-style CRT, floppy drive, and small printer.
Here in 2023 it’s not beyond the bounds of possibility to design your own digital oscilloscope simply by pairing a fast microcontroller with an appropriately expensive ADC chip. To look back at the effort required to produce one with a high bandwidth using 16-bit microcomputer parts and 1980s silicon is to be reminded that we stand upon the shoulders of giants.
Toyota is going through a bit of a Kodak moment right now, being that like the film giant they absolutely blundered the adoption of a revolutionary technology. In Kodak’s case it was the adoption of the digital camera which they nearly completely ignored; Toyota is now becoming similarly infamous for refusing to take part in the electric car boom, instead placing all of their faith in hybrid drivetrains and hydrogen fuel cell technologies. Whether or not Toyota can wake up in time to avoid a complete Kodak-style collapse remains to be seen, but they have been making some amazing claims about battery technology that is at least raising some eyebrows. Continue reading “Toyota Makes Grand Promises On Battery Tech”→
Unsatisfied with commercial VR headset options, [dragonskyrunner] did what any enterprising hacker would: gathered parts over time and ultimately made their own. Behold the Hades Widebody (HWD), a DIY PC VR headset that aims for a wide field of view and even manages to integrate some face and eye tracking.
[dragonskyrunner] is — and we quote — “NEVER building one of these again.” The reason is easily relatable to anyone who has spent a lot of time and effort creating something special: it does the job it was created for, but it also has limitations and is a lot of work. If one were to do it all over again, there would be a host of improvements and changes to consider. But one won’t be doing it all over again any time soon because it’s done now.
The good news is that [dragonskyrunner] made an effort to document things, so there is at least a parts list and enough details for any suitably motivated hacker to replicate the work and perhaps even put their own spin on it.
The Hades Widebody has a dual-lens arrangement and wide displays that aim to provide a wider field of view than most setups allow. There’s a main lens in front of the user’s eyes and a cut Fresnel lens providing a sort of extension to the side. [dragonskyrunner] claims that while there is certainly not a seamless transition between the lens elements, it does a better job than an Ambilight at providing a sense of visuals extending into the wearer’s peripheral vision.
The DIY spirit of making a piece of hardware to suit one’s own needs is exactly the sort of thing that would fit into our 2023 Cyberdeck content, and while a headset by itself isn’t quite enough to qualify (devices must have some form of usable input and output), it just might get those creative juices flowing.
Boomboxes are one of those status symbols that define the 1980s and part of the 1990s, being both a miracle of integration and the best way to share your love of music with as many people as possible. Naturally, this led Joe Grand to figure that it would make it a perfect subject for a modern take on such an iconic device. The primary inspiration for this came from a piezo speaker developed by TDK called the ‘PiezoListen’. These are piezo devices that can be less than a millimeter thick, while still claiming to reproduce a broad range of audio frequencies.
Just having these speakers is only part of the solution, of course, which led Joe down the rabbithole of not only figuring out the components that should go into the system, but also how to get it all on a single PCB and see how far one can push different solder mask colors with an appropriately boombox-like design. At its core is a Raspberry Pi Zero 2 W that runs Mopidy, to provide music server functionality. Also added are some RGB lighting and touch controls.
In space, everything is harder. Hardware has to be built to withstand not only the harshest possible regimes of temperature and radiation but the rigors of launch. Power is at a premium, things that are supposed to stay cool get too hot, and things you want to keep warm freeze solid. It seems like everything you “send upstairs” has to be over-engineered compared with the stuff that stays down the gravity well.
But what about software? Yep, that needs special engineering too — after all, one little mistake, one uncaught exception, and millions or even billions of exquisitely crafted space hardware could become as useful as a brick. Jacob Killelea is an aerospace engineer who has done the rounds of a number of space concerns, and he’s worked on a number of space software projects, including a pulsed laser system with the potential for lunar orbital communications. He knows what it takes to write software that keeps space hardware ticking, and we’re excited to have him log into the Chat to talk about it.