Squish That Stack With Rampart

[P B Richards] and [Aaron Flin] were bemoaning the resource hunger of modern JavaScript environments and planned to produce a system that was much stingier with memory and CPU, that would fit better on lower-end platforms. Think Nginx, NodeJS, and your flavour of database and how much resource that all needs to run properly. Now try wedge that lot onto a Raspberry Pi Zero. Well, they did, creating Rampart: a JavaScript-based complete stack development environment.

The usual web applications have lots of tricks to optimise for speed, but according to the developers, Rampart is still pretty fast. Its reason for existence is purely about resource usage, and looking at a screen grab, the Rampart HTTP server weighs in at less than 10 MB of RAM. It appears to support a decent slew of technologies, such as HTTPS, WebSockets, SQL search, REDIS, as well as various utility and OS functions, so shouldn’t be so lightweight as to make developing non-trivial applications too much work. One interesting point they make is that in making Rampart so frugal when deployed onto modern server farms it could be rather efficient. Anyway, it may be worth a look if you have a reasonable application to wedge onto a small platform.

We’ve seen many JavaScript runtimes over the years, like this recent effort, but there’s always room for one more.

ERRF 22: Building A Library Of Filament Colors

If you’ve ever paged through the color samples at the hardware store trying to match a particular color, you know how hard it can be. Not only are there nearly limitless color variations, but each manufacturer has their own formulas and tints. Often times, the only way to get the exact color you need is to get it custom mixed.

Unfortunately, that’s not really an option when it comes to filament for your 3D printer. Will that roll of orange from Hatchbox actually match the orange from Overture? That’s where the Filament Librarian comes in. Created by [Joe Kaufeld], the project aims to catalog and photograph as many 3D printer filaments as possible so you can see exactly what you’re getting.

Now of course, if it was as easy as looking at pictures of filament swatches on your computer, you wouldn’t need this service to begin with. So what’s the trick? A custom automated camera rig, powered by the Raspberry Pi, is used to position, light, and photograph each filament sample in the library. So while [Joe] can’t promise your monitor is showing a perfect representation of each filament’s color, you can at least be sure they will all look correct in relation to each other. So for example, the site can help you figure out if the local Microcenter stocks anything that comes close to matching Prusament’s Galaxy Silver PLA.

[Joe] brought a collection of his samples along with his slick camera setup to the 2022 East Coast RepRap Festival so attendees could see first-hand how he adds a new filament to the database. With an easy-to-use touch-screen interface, it takes just seconds to get the camera ready for the next shot.

Now that he’s got the hardware and the procedure down, [Joe] is asking the community to help out by providing him with filament samples to process. It doesn’t take much: all he asks is you snip him off a couple meters of filament, write down what it is and who makes it on a pre-made form, and drop it in the mail. If you’re in the US, you can send it directly to his address in Indiana, and for those on the other side of the globe, he’s got a drop point in the Netherlands you can use.

We love a good passion project here at Hackaday, so here’s hoping that the Filament Librarian receives plenty of new filament samples from all over the planet to feed into that fancy camera setup of his.

Never Too Rich Or Thin: Compress Sqlite 80%

We are big fans of using SQLite for anything of even moderate complexity where you might otherwise use a file. The advantages are numerous, but sometimes you want to be lean on file storage. [Phiresky] has a great answer to that: the sqlite-zstd extension offers transparent row-level compression for SQLite.

There are other options, of course, but as the post mentions, each of these have some drawbacks. However, by compressing each row of a table, you can retain random access without some of the drawbacks of other methods.

Continue reading “Never Too Rich Or Thin: Compress Sqlite 80%”

Screenshot of the website, showing the sidebar with technology types on the left, and an entry about modifying LCD polarizers on the right, with a video showing an art piece using LCD polarizers

Alternative Display Technologies And Where To Find Them

[Blair Nearl] has been working on an information database for artists and hackers – a collection of non-conventional display technologies available to us. We’ve covered this repository before, six years ago – since then, it’s moved to a more suitable platform, almost doubled in size, and currently covers over 40+ display technology types and related tricks. This database is something you should check out even if you’re not looking for a new way to display things right now, however, for its sheer educational and entertainment value alone.

[Blair] doesn’t just provide a list of links, like the “awesome-X” directories we see a lot of. Each entry is a small story that goes into detail on what makes the technology tick, its benefits and fundamental limitations, linking to illustrative videos where appropriate. It’s as if this guide is meant to give you an extensive learning course on all the ways you can visualize things on your creative journey. All of these categories have quite a few examples to draw from, highlighting individual artworks that have made use of any technology or trick in a particular way.

If you’re ever wondered about the current state of technology when it comes to flexible or transparent displays, or looked for good examples of volumetric projection done in a variety of ways, this is the place to go. It also talks about interesting experimental technologies, like drone displays, plasma combustion or scanning fiber optics. Overall, if you’re looking to spend about half an hour learning about all the ways there are to visualize something, this database is worth a read. And, if there’s a display technology the author might’ve missed and you know something about, contributions are welcome!

Someone setting out to compile information about an extensive topic is always appreciated, and helps many hackers on their path. We’ve seen that done with 3D printer resin settings and SMD part codes, to name just a few. What’s your favourite hacker-maintained database?

Open Database Shares Resin 3D Printing Settings

3D printing is much like CNC milling or welding or just about any physical manufacturing process, in that good results fundamentally come down to having the right settings. In an effort to aid those working in the resin printing space, [Adam Bute] has put together a community database of resin printing settings.

The site has sections relevant to a variety of resin 3D printers, sorted by manufacturer. Those eager to find the right settings for their given resin and printer merely need to click through and look up the appropriate data. The settings are crowdsourced, provided by manufacturers, community members, and users of [Adam]’s Maker Trainer website.

While it’s still important to run validation tests on a resin printer to get the best results, having a community-sourced list of settings can help users get up and running much more quickly than they otherwise might. It appears that community contributions can’t directly be made yet, but we suspect such a feature is in the works.

We’ve seen similar material databases before for melty-plastic printers, and those have proven to be valuable to the community. We’re sure this resin database will be received in much the same way. If you know about other great resources for printing tips and tricks, do drop us a line!

Decoding SMD Part Markings

You’ve probably encountered this before — you have a circuit board that is poorly documented, and want to know the part number of a tiny SMD chip. Retro computer enthusiast [JohnK] recently tweeted about one such database that he recently found, entitled The Ultimate SMD Marking Codes Database. This data base is only a couple of years old judging from the Wayback Machine, but seems to be fairly exhaustive and can be found referenced in quite a few electronics forums.

Unlike their larger SMD siblings, these chips in question are so small that there is no room to print the entire part number on the device. Instead, the standard practice is for manufacturers use an abbreviated code of just a few characters. These codes are only unique to each part or package, and aren’t necessarily unique across an entire product line. And just because it is standard practice does not imply the marking codes themselves follow any standard whatsoever. This seemingly hodgepodge system works just fine for the development, procurement and manufacturing phases of a product’s lifecycle. It’s during the repair, refurbishment, or just hacking for fun phases where these codes can leave you scratching your head.

Several sites like the one [JohnK] found have been around for years, and adding yet another database to your toolbox is a good thing. But none of them will ever be exhaustive. There’s a good reason for that — maintaining such a database would be a herculean task. Just finding the part marking information for a known chip can be difficult. Some manufacturers put it clearly in the data sheet, and some refer you to other documentation which may or may not be readily available. And some manufacturers ask you to contact them for this information — presumably because it is dynamic changes from time to time. Continue reading “Decoding SMD Part Markings”

Linux Fu: Databases Are Next-Level File Systems

It is funny how exotic computer technology eventually either fails or becomes commonplace. At one time, having more than one user on a computer at once was high tech, for example. Then there are things that didn’t catch on widely like vector display or content-addressable memory. The use of mass storage — especially disk drives — in computers, though has become very widespread. But at one time it was an exotic technique and wasn’t nearly as simple as it is today.

However, I’m surprised that the filesystem as we know it hasn’t changed much over the years. Sure, compared to, say, the 1960s we have a lot better functionality. And we have lots of improvements surrounding speed, encoding, encryption, compression, and so on. But the fundamental nature of how we store and access files in computer programs is stagnant. But it doesn’t have to be. We know of better ways to organize data, but for some reason, most of us don’t use them in our programs. Turns out, though, it is reasonably simple and I’m going to show you how with a toy application that might be the start of a database for the electronic components in my lab.

You could store a database like this in a comma-delimited file or using something like JSON. But I’m going to use a full-featured SQLite database to avoid having a heavy-weight database server and all the pain that entails. Is it going to replace the database behind the airline reservation system? No. But will it work for most of what you are likely to do? You bet. Continue reading “Linux Fu: Databases Are Next-Level File Systems”