I’m a ham!

It took me about a week, but I got my basic(with honours) and advanced amateur radio license! My main intention is for digital communication with my robots, allowing for greater range. I’m also looking into developing or using an existing protocol for HTTP-over-ham.



Inside a $45,000 Tape Library

A few months ago, April, I think, my local university was giving away two tape libraries, model IBM Totalstorage 3584. I had to leave one behind, but I was able to convince my parents let me get one. They weigh 900 pounds and are huge, so I rented a uhaul. A friend, my dad, and I spent an afternoon moving it home. IMG_0931

I’m on the right. This is a picture my dad took of us after we got it in the truck. It’s a pretty good indicator for the size of the beast.

Fast forward to last week, and my parents made me throw it away. I kept the drives(LTO3 and LTO4), the power supplies for them, and most of the electronics.

I started with the power distribution unit(PDU). It was held together with rivets, and when I tried to drill them out, they just spun. I tried to burn them away with hydrochloric acid, but I partially filled my basement with chlorine gas, which was a bad idea. In the end, I used a motor from a drill without the gear box, and grinded them away. It worked really well, and I had it apart in under an hour.


Here’s what’s left of the PDU. I intend to take out the screw terminal block in the future. Inside were 3 very hefty relays. They make a very satisfying “ca-chunk” sound. Furthermore, there were 2 hot swappable 37V 290W power supplies. I could take them out without opening the PDU, but I wanted the connectors for them as well. The tape library uses a lot of power, so it has its own dedicated set of circuit breakers – I took them out too. Two are rated for 15 amps, and one is rated for 30 amps. There was also an extremely overkill 36 volt, 1.2 amp fan. I can feel it blowing from roughly 10 feet away!









Now onto the heart of the machine – the robot. Most of the value of the tape library was in it, so I was curious what was inside. I did try to get it running, but without any schematics, it was difficult. It did turn on, but wouldn’t move. I even tried looking for a serial connection on it, but eventually gave up.

Let’s start with the motors. They were certainly big, but what I found interesting is the variety of motors. The biggest one controlled the vertical motion of the robot. It was connected to a 4 foot lead screw via a pulley. The next biggest motor controlled horizontal movement. It was also connected via a pulley, but to a wheel that could ride a track instead. These two motors had their own dedicated motor drivers, which I intend to use with an Arduino. They’re also brushless motors, with three wires to drive. There was also some kind of filter board, which the drivers and motors plugged into.


There are two of these.


The next two biggest motors were used in the tape grabber. The machine could grab two tapes at once, which is why it has 2 motors – One for each grabber. These are just standard DC motors. Finally, the last motor was used to turn the grabber assembly around. Tapes would be mounted on both sides of the inside, and there’s a barcode reader on the opposite side, so it was important for it to be able to turn. What’s interesting is that this is the only motor that has a gear train on top. It’s also brushless, but I wasn’t able to find a driver, or even a chip with a heatsink, anywhere.

The barcode scanner came out, and it looks like it would be easy to interface with an Arduino.



All the motors were equipped with some kind of encoder on the end, which fed back into the board for extremely accurate positioning. There were also endstops on some parts of the robot. Overall, it’s a very nice piece of engineering.

I have absolutely no idea what I’m going to do with any of the parts, but I’ll probably sell most of them.

An unexpected load test

A few days ago, there was a post on /r/Minecraft. Someone put up a 1.4GB world file. It was a scale model of the Earth. It got more popular than they expected, and they hit bandwidth limits on free sites, so I offered to host it for them, with no limitations. It peaked somewhere around 85 downloads. Although my internet upload was saturated, I didn’t really mind. By the next morning, I was down to only 5 or 6 concurrent downloads(I keep a window open on one of my screens that checks every 2 seconds). I thought my 5 seconds of fame were over.

But then the concurrent connections count started rising again. Within a minute it was back up to 20, then 30, then 40. I was extremely baffled, so I thought to google the link to the file on my server. It led to the description of a youtube video, which had been posted 15 minutes ago by this point. I checked and he had just over a million subscribers! The download count kept rising, up to 118 concurrent downloads.

I didn’t mind, but there were a few problems. First of all, I didn’t want the file hotlinked, so I set up a rewrite rule(301) to redirect from the file(Which was hotlinked on a different domain, a website purely dedicated to silly things my math teacher says) to a page on my blog, with a link to the file in the post. It was a pretty short post, the youtuber was french so I didn’t want to hide the download link too much. I had that fixed in a few minutes, but I still had another problem.

The server was taking 4-5 seconds to load the math teacher site, which was purely static HTML and an image, and was timing out to reach my blog(WordPress + https). The CPU and RAM of the web server weren’t anywhere near maxed. It turns out the problem was in apache’s config: “MaxClients” was set to its default of 150. I increased it to 500, and immediately, load times went away, and everything was back to normal. Apache2 peaked around 180 processes, if I remember correctly.

This was all yesterday. It seems to have died down now. I made a dollar from adsense for all my hard work. c: (Kidding of course, it was a lot of fun for me, especially having my homelab being used by so many people, and I’d gladly do it again!)