Some days all I want to do is smash a hard drive to pieces and pour them into a roaring fire.
Category Archives: hacks
So after building up all the missing metal the next step is turning the shaft back into dimension.
To do this properly a lathe and/or a special grinder is used. I have neither but the points from that compass, a dremel and a bit of ingenuity.
Thus, this is how we create a precision ground shaft in the third world:
I did most of the hard work free hand at the bench grinder and then used this contraption and a small stone on the dremel to get it as close as possible to how it is supposed to be. The keyway only needed a small touch with a round burr after filling the walls.
The gear fits nice with just a bit of runout that I hope the rest of the tolerances will mask out.
And after putting all back together it’s running again. I only needed to add a shim between the gear and the bearing to take out a bit of axial play.
When it broke I was almost about to dump it, I had little experience welding and back then it was really cheap. But in spite of how it looks on the outside it has a very sturdy construction (for its price) and a quality needle bearing instead of a plain bushing like the others.
It was a good call, as now I have another working tool.
Worn shaft buildup.
I had this “Gladiator” angle grinder awaiting repairs for quite a lot of time. It was cheap but I liked it a lot because it came with a speed control and took a lot of use without complaining.
But one day it broke. The motor spun, there was a lot of noise but the output wasn’t turning. Inspecting the gearbox revealed that the small bevel gear was free in the motor shaft. The grease had some shiny specks and looking closer the key was still in the gear.
On the previous weeks it started to make louder and louder sounds but I assumed it was kind of normal for the abuse.
And then it seems that the keyway gave up and the shaft, soft as butter, ground itself between the hardened gear and the woodruff key until it became free:
I used the bearing puller to have a solid ground connection and started to pad beads to build up the missing metal. I went a bit overboard with the heat but I somehow managed to not bend nor twist the shaft. Tomorrow I’ll try to grind it back to the original dimensions.
Fixing a belt sander.
Well turns out that puller works with a bit of effort to keep it from buckling. So I used it to finish a belt sander that has been waiting on the bench.
Because this bearing made an unbearable amount of noise:
It’s amazing how much damage heat and wood dust can do. This was a 608-2RS and the metallic plates behind the seals were worn just paper thin.
Homemade bearing puller
Tonight I made something that resembles a bearing puller. I’ve been putting off for quite some time fixing a couple of tools because I needed one and this stormy evening seemed like a good time to end that.
(And also fire up the tig welder again now that I have a full bottle of argon.)
Yeah, it looks passable. But doesn’t work at all.
While building it I made (again) the same mistake of not getting the screw out after tacking the nut. And so, between the galvanized coating inside and the different expansion of the nut and the threads on the plate, the screw was firmly locked.
I waited for it to cool, applied penetrating oil and only managed to turn it a bit. I kept torquing and lo, it snapped. This is not a puny screw, it’s a stainless M8.
I welded a nut on the other side and again it snapped.
Then I ground it flush with the nut on the plate, affixed to the original end and tried again. This time just as I felt it about to give and break, it got loose and came apart.
Jut a little twisted.
Retrieving passwords with tcpdump
The other night many weeks ago I chose to install Jitsi in one of our streamers.
I log into the OpenStack panel and make a quick resize of the instance.
Midway it barks and doesn’t come up. And nothing I can do from the console or there manages to un-stuck it from that state. So off it goes a ticket to support.
Meanwhile I spin another instance and rebuild the basic services.
In the heat of the night I forgot the set of users and passwords for the ingress streams. They were just there, in a volume attached to a zombie machine that I couldn’t access. And also in a backup disk just a room across, but I forgot about it back then.
Thankfully we got Nginx (and Traefik on the newer boxen) that take care of handling ssl, so inside everything is in the clear. All I had to do was
tcpdump -n -w dump 'tcp port 8000'
and after a quick run with strings I had all the passwords again.
Making a beam compass
Today was one of those days when in order to do something I say to myself “I need this tool and (especially now) I can not buy nor justify buying it. So let’s build one”.
And that in itself takes more time than the whole project.
I was in the process of fixing an old dentists lamp that was laying around, the fresnel lens was originally held with some tiny and feeble metal strips that were in horrible shape.
Instead of making a replacement with some leftover stock or filler rods I decided to make a proper retention ring with sheet metal from a computer case.
But, my simple compass wasn’t able to make circles as big as I needed. Thus I set to build a beam compass.
I had the hardened points from a couple of broken punches, so it was only a matter of cross drilling some bolts and figuring out how to end up with something that would be useful.
Except from the bolts everything else came from either the rust bucket or the trash.
There are a lot of things that can be improved but as it is, it fulfills its intended purpose just fine:
Pity that it’s already too late to start the plasma cutter and finish this part.
Late night welding.
Part of the frame for a small overhang roof.
Weekend geek reads
This weekend (and up to a couple of minutes ago) I read:
- “High performance browser networking” by Ilya Grigorik
- Many articles and videos about WebRTC from Tsahi Levent-Levi
- A couple of stories from The Architecture of Open Source Applications. I always come back there when I need inspiration.
Latest geek reads
Some of the things I’ve read/watched lately to sharpen my skills:
- Inside the C standard library by Begriffs (and its predecessor on portability for weird machines)
- Making C less dangerous by Kees Cook (at Google back then)
- Streamlining systemd’s code and safety
- Algorithms by Jeff Erickson and the corresponding materials at the Illinois University course. I’ll get around later with a more thorough study of this one.
- A compiler writing journey
- The complete guide to (external) Domain Specific Languages
- HabitLab: Online Behavior Change Experiments
Today I replaced a couple of quick hacks with InfluxDB and Chronograf.
I like things that run without breaking:
# supervisorctl carbon RUNNING pid 1415, uptime 207 days, 19:49:57 graphite RUNNING pid 1419, uptime 207 days, 19:49:57 icecast RUNNING pid 24419, uptime 32 days, 1:11:18
Today after 15 years I finished the last course of the Electronic Engineering career at Universidad Nacional de La Plata.
For the next year I only have to do a supervised work experience and a final project.
I know that today is a big day. But still it feels like every other one.
Boot / No Boot
Today while cleaning I found an old stm32 board carrying an STM32F030F4P6.
Turns out that PlatformIO supports it so just for fun I tried to blink some lights.
I couldn’t find my stlink at home but openocd can use a buspirate as a programmer.
It took a while to upload but after that I was able to launch gdb.
And the light was dead.
Strangely enough poking at the memory showed that the code indeed was there. After a long pause to think I noticed that the boot 0 jumper was misplaced.
The lights flashed and there was much rejoicing.
(this has nothing to do with a window manager)
During the last couple of days I was mostly dumb because of the heat. But the nightly breeze gave me a bit of life.
So I started to tile the new bathroom.
I helped many times with this kind of endeavors but this is the first that I’m completely on my own.
The initial bucket of paste yielded around 7 tiles, most of it ended on the floor. But when I finally got the hang of how to use the trowel I managed to put 16 tiles with little waste.