Building An EEPROM Programmer

Behold this ATtiny85 based EEPROM programmer. It seems like a roundabout way of doing things, but [Quinn Dunki] wanted to build to her specifications using tools she had on hand. What she came up with is an ATtinyISP USB programmer, pushing data to an ATtiny85, which then programs an EEPROM chip with said data.

The hardware is the next module for her Veronica 6502 computer build. When we last saw that project [Quinn] was planning to add persistent storage for the operating firmware. This will be in the form of an EEPROM programmed with this device. Using ISP and an ATtiny as a go-between means that she should have no problems reflashing the OS without removing the chip. But it all depends on how she designs the interface.

For example, she blew a whole bunch of time troubleshooting the device because garbage data was being written to the chip. In the end, having her manual bus programmer hooked up during the flashing operation was the culprit. Lesson learned, it’s onward and upward with the build.

We’ve been featuring [Quinn’s] projects a lot lately. That’s in part because they’re really interesting, but also because she does such a great job of documenting her experience.

Backplane And Mainboard For A 6502 Computer

[Quinn Dunki] has been busy through the holidays giving her 6502 processor-based computer a place to live. The most recent part of the project (which she calls Veronica) involved designing and etching a mainboard for the device. In the picture above it’s the vertical board which is right at home in the backplane [Quinn] also designed.

The project is really gaining momentum now. You may remember that it started off as a rather motley arrangement of what we’d guess is every breadboard she owns. From there some nifty hex switches gave [Quinn] a way to program the data bus on the device. Many would have stopped with these successes, but the continuation of the project makes the hardware robust enough to be around for a while. The single-sided boards are playing nicely together, and the next step is to redesign the ROM emulator to use chips for storage. [Quinn] alludes to a side project in which she plans to build her own EEPROM programmer to help with getting code into the experimental computer.

Hacking Old Server Hardware For New Home Use

[Arnuschky] was looking for a network storage solution that included redundancy. He could have gone with a new NAS box, but didn’t want to shell out full price. Instead, he picked up a Dell PowerEdge 2800 and hacked it for SATA drives and quiet operation.

It’s not surprising that this hardware can be had second-hand at a low price. The backplane for it requires SCSI drives, and it’s cheaper to upgrade to new server hardware than it is to keep replacing those drives. This didn’t help out [Arnuschky’s] any, so he started out by removing the SCSI connectors. While he was at it, he soldered wires to the HDD activity light pads on the PCB. These will be connected to the RAID controller for status indication. The image above shows the server with eight SATA drives installed (but no backplane); note that all of the power connectors in each column are chained together for a total of two drive power connectors. He then applied glue to each of these connectors, then screwed the backplane in place until the glue dried. Now the device has swappable SATA drives!

His server conversion spans several posts. The link at the top is a round-up so make sure you click through to see how he did the fan speed hack in addition to the SATA conversion.

If your tolerances don’t allow you to glue the connectors like this, check out this other hack that uses shims for spacing.

Tiny Audio Switcher Eliminates Repetitive Plug Swapping

usb-audio-switcher

[Phil] uses both his computer’s speakers and a set of headphones while working at his desk, but he was growing tired of constantly having to remove the headset from his sound card in order to insert the speaker plug. He’s been meaning to rig something up to make it easier to switch outputs, but never seemed to get around to it until he recently saw this LAN-enabled audio switcher we featured.

His USB-controlled switch features a single audio input and two audio outputs, which he mounted on a nicely done homemade double-sided PCB. The switch can be toggled using any terminal program, sending commands to the on-board ATtiny13A via an FT232R USB to serial UART chip.

The switch’s operation is really quite simple, merely requiring [Phil] to type in the desired audio channel into the terminal. The ATiny and a small relay do the rest, directing the audio to the proper output.

Programming The 6502 One Nibble At A Time

[Quinn Dunki] keeps rolling with her 6502 based computer build. This time around she’s added some memory to store the programs, but needed a way to get that code into the device. Above is her solution, a bank of hex switches used to program the 8-bit command and 16-bit address for each line of machine code.

This is a continuation of her Veronica project. The last time we saw it she had hardwired the logic levels for the data bus, but that’s no fun since nothing can actually be computed. [Quinn] picked up an SRAM chip which will store the program. It’s compatible with the 6502’s memory bus, but needs a bit of extra circuitry for her to be able to hand program it with this switch bank. She used some tri-state buffers to switch between connections to the processor, and to the hex switches. This way, she disconnects the RAM from the processor using the buffers, uses the switches and push button to clock in the program, then patches the RAM back into the computer.

Seeing this process in the video after the break certainly gives you an appreciation for what an improvement the punch-card system was over this technique. Still, seeing this is a delight that we’d like to try! Continue reading “Programming The 6502 One Nibble At A Time”

Binary Division When Your Processor Lacks Hardware Division

[Hamster] wanted to take a look at division operations when the chip you’re using doesn’t have a divide instruction. He makes the point that the divide instruction takes a lot of space on the die, and that’s why it’s sometimes excluded from a chip’s instruction set. For instance, he tells us the ARM processor used on the Raspberry Pi doesn’t have a divide instruction.

Without hardware division you’re left to implement a binary division algorithm. Eventually [Hamster] plans to do this in an FPGA, but started researching the project by comparing division algorithms in C on an AMD processor.

His test uses all 16-bit possibilities for dividend and divisor. He was shocked to find that binary division doesn’t take much longer than using the hardware instruction for the same tests. A bit of poking around in his code and he manages to beat the AMD hardware divide instruciton by 175%. When testing with an Intel chip the hardware beats his code by about 62%.

He’s got some theories on why he’s seeing these performance differences which we’ll let you check out on your own.

Power Strip Hack Reduces Standby Electricity Consumption

computer-standby-circuit

For years, [Rasmus] has left his computer connected directly to the mains power so that he can turn it on via Wake on Lan. While powered down, it would still continuously consume about 6W of electricity, but now that he didn’t need it to be on standby so often, he wanted to make it more energy efficient.

In Denmark, where he lives, many people use power strips that have an onboard USB cable. These strips are meant to reduce the standby power consumption of PC peripherals such as monitors by powering on the mains sockets only when the computer is active. He decided the easiest way to cut his standby energy consumption to 0W would be to power his computer via this strip as well.

While it sounds great in theory, it presented a sort of chicken/egg problem. If the computer needs to be turned on for the power strip to recognize it, then how could he also supply power to the computer from the same strip? His solution was a small circuit that would charge up while the computer was running, and still hold enough juice to kickstart the PC’s boot process, thus turning on the power strip.

It really is an ingenious way to go about things, nice job!