“Brain In A Vat” 6502

The 6502 was a revolutionary processor for its time. Offered at a small fraction of the cost of other processors available when it was released, it became adopted in such iconic computers at the Atari 2600, the Apple II, the NES, and the Commodore 64. For that reason it’s still extremely popular among retrocomputing enthusiasts who will often go to great lengths to restore these computers or build them from scratch. [jamesbowman] had an idea to build a 6502-based computer with the processor only, leaving the rest of the computer up to an FPGA.

He describes the system as a “brain in a vat” since a real 6502 is used as the “brain” and all other functions are passed off to the FPGA. In his build he uses an FPGA board with built-in graphics abilities, but the truly interesting part of this build is how the FPGA handles memory. If a particular value is placed on the data bus of the 6502, it loops forever through the entire memory and executes all of the instructions it finds. This saved a lot of time getting this system up and running, and he is able to demonstrate it by showing a waveform on the video output of the device.

Of course you can take an FPGA and emulate an entire computer based on a 6502, but using the actual silicon in a build like this really ensures that the user can learn and understand the hardware involved without some of the other tedium of doing things such as converting old video signals to HDMI for example. It’s a great take on retrocomputing that we expect to see more of in the future.

Make Some Noise Or Simulate It, At Least

Noise is a fact of life, especially in electronic circuits. But on our paper schematics and just as often our simulations, there is no noise. If you are blinking an LED on a breadboard, you probably don’t care. But if you are working on something meatier, handling electrical noise gracefully is important and simulation can help you. [Ignacio de Mendizábal] has a great piece on simulating EMC filters using LTSpice that can get you started.

There are many ways of classifying noise and [Ignacio] starts with common-mode versus differential noise, where common-mode is noise with current flowing in the same direction without regard to the circuit’s normal operation, and differential noise having currents that flow in the opposite direction of normal current flow.

Continue reading “Make Some Noise Or Simulate It, At Least”

E-Paper Weather Display Is A Great Base To Build From

As e-paper modules have become more affordable, we’ve started to see them pop up more and more in hacker projects. It used to be that you had to force a second-hand Kindle to do your bidding, but now you can buy just the screen itself complete with a header to plug right into your Raspberry Pi. It will still cost you as much as a used Kindle…but at least it comes with some documentation and there are Python libraries to talk to it.

But where to start? If you need some inspiration, and perhaps a little source code, this very slick weather display put together by [James Howard] is a great as baseline. Not that it really needs any additional refinement, as we think it already looks gorgeous. But rather than starting from scratch for your own project, it would be much easier to graft some additional functionality onto his code.

A lot of that has to do with how concise and well commented his code is. We’ve seen enough of these projects to know the kind of spaghetti that’s often running on the backend, but there’s none of that here. [James] assembles the display using the powerful Pillow graphics library, which lets you draw primitives and drop in text and icons with just a couple lines of code.

Once all the data is plugged in, the entire screen is saved as an image file which is then opened up on the e-paper display. Even if you aren’t a Python expert, you should be able to understand what’s happening and how to bend it to your will.

We’ve always had high hopes for electronic paper, and it seems the technology might finally be hitting critical mass. While it’s still a bit expensive, we’ve started seeing it pop up in unexpected places to great effect. Hopefully projects like this one will inspire others to take the B&W plunge.

Computer Vision Maps Christmas Lights

There’s a small but dedicated group of folks out there who spend all year planning their Christmas decorations. These aren’t simple lawn ornaments or displays, either, but have evolved into complex lightning performances that require quite a bit of computer control. For some things, hooking up a relay to a microcontroller can get the job done, but [Andy] has turned to computer vision to solve some of the more time-consuming aspects of these displays.

Specifically, [Andy] has a long string of programmable RGB LED lights to wrap around a Christmas tree, but didn’t want to spend time manually mapping out each light’s location. So he used OpenCV to register the locations of the LEDs from three different camera angles, and then used a Python script to calculate their position in the 3D space. This means that he will easily be able to take the LEDs down at the end of the holidays and string them back up next year without having to do the tedious manual mapping ever again.

While [Andy] notes that he may have spent more time writing the software to map out the LEDs than manually doing it himself, but year-after-year it may save him a lot of time and effort, not to mention the benefits of a challenge like writing this software in the first place. If you want to get started on your own display this year, all you really need is some lights and a MIDI controller.

Emmanuelle Charpentier And Jennifer Doudna Sharpened Mother Nature’s Genetic Scissors And Won The Nobel For It

It sounds like science fiction — and until 2012, the ability to cheaply and easily edit strings of DNA was exactly that. But as it turns out, CRISPR/Cas9 gene editing is a completely natural function in which bacteria catalogs its interactions with viruses by taking a snippet of the virus’ genetic material and filing it away for later.

Now, two women have won the 2020 Nobel Prize in Chemistry “for developing a method for genome editing”. Emmanuelle Charpentier and Jennifer Doudna leveraged CRISPR into a pair of genetic scissors and showed how sharp they are by proving that they can edit any string of DNA this way. Since Emmanuelle and Jennifer published their 2012 paper on CRISPR/Cas9, researchers have used these genetic scissors to create drought-resistant plants and look for new gene-based cancer therapies. Researchers are also hoping to use CRISPR/Cas9 to cure inherited diseases like Huntington’s and sickle cell anemia.

The discovery started with Emmanuelle Charpentier’s investigation of the Streptococcus pyogenes bacterium. She was trying to understand how its genes are regulated and was hoping to make an antibiotic. Once she teamed up with Jennifer Doudna, they found a scientific breakthrough instead.

Dr. Emmanuelle Charpentier via Wikimedia Commons

Emmanuelle Charpentier Fights Flesh-Eating Bacteria

Emmanuelle Charpentier was born December 11th, 1968 in Juvisy-sur-Orge, France. She studied biochemistry, microbiology, and genetics at the Pierre and Marie Curie University, which is now known as Sorbonne University. Then she received a research doctorate from Institut Pasteur and worked as a university teaching assistant and research scientist. Dr. Charpentier is currently a director at the Max Planck Institute for Infection Biology in Berlin, and in 2018, she founded an independent research unit.

Upon completion of her doctorate, Dr. Charpentier spent a few years working in the States before winding up at the University of Vienna where she started a research group. Her focus was still on the bacteria Streptococcus pyogenes, which causes millions of people to suffer through infections like tonsillitis and impetigo each year. It also causes sepsis, which officially makes it a flesh-eating bacterium.

Continue reading “Emmanuelle Charpentier And Jennifer Doudna Sharpened Mother Nature’s Genetic Scissors And Won The Nobel For It”

This GCode Post-Processor Squeezes Lines Into Arcs

When the slicer software for a 3D printer model files into GCode, it’s essentially creating a sequential list of connected line segments, organized by layer. But when the features of the original model are dense, or when the model is representing small curves, slicers end up creating a proliferation of teeny segments to represent this information.

This is just the nature of the beast; lots of detail translates into lots of teeny segments. Unfortunately, some printers actually struggle to print these models at the desired speeds, not because of some mechanical limitation, but because the processor cannot recalculate the velocities of these segments fast enough. The result is that some printers simply stutter or slow down the print, resulting in print times that are much higher than they should be.

Enter Arc Welder, a GCode compression tool written by [FormerLurker] that scrutinizes GCode files, hunts for these tiny segments, and attempts to replace contiguous clusters of them with a smaller number of arcs. The result is that the number of GCode commands needed to represent the model drop dramatically as connected clusters of segment commands become single arc commands.

“Now wait”, you might say, “isn’t an arc an approximation of these line segments?” And yes–you’re right! But here lies the magic behind Arc Welder. The program is written such that arcs only replace segments if (1) an arc can completely intersect all the segment-to-segment intersections and (2) the error in distance between segment and arc representation is within a certain threshold. These constraints act such that the resulting post-processing is true to the original to a very high degree of detail.

A concise description of Arc Welder’s main algorithm as pulled from the docs

This whole program operates under the assumption that your 3D printer’s onboard motion controller accepts arc commands, specifically G2 and G3. A few years ago, this would’ve been uncommon since, technically, 3D printing and STL file only requires moving in straight line segments. But with more folks jumping on the bandwagon to use these motion control boards for other non-printing applications, we’re starting to see arc implementations on boards running Marlin, Smoothieware, and the Duet flavor of RepRap Firmware.

For the curious, this program is kindly both well documented on operating principles and open source. And if [FormerLurker] seems like a familiar name before–you’d be right–as they’re also the mind behind Octolapse, the 3D printing timelapse tool that’s a hobbyist crowd favorite. Finally, if you give Arc Welder a spin, why not show us what you get in the comments?

Thanks for the tip [ImpC]!

As Facebook Tightens Their Grip On VR, Jailbreaking Looks More Likely

The Quest 2 wireless VR headset by Oculus was recently released, and improves on the one-and-a-half year old Quest mainly in terms of computing power and screen resolution. But Oculus is owned by Facebook, a fact that Facebook is increasingly keen on making very clear. The emerging scene is one that looks familiar: a successful hardware device, and a manufacturer that wants to keep users in a walled garden while fully controlling how the device can be used. Oculus started out very differently, but the writing has been on the wall for a while. Rooting and jailbreaking the Quest 2 seems inevitable, but what will happen then? Continue reading “As Facebook Tightens Their Grip On VR, Jailbreaking Looks More Likely”