Tuesday, October 20, 2015

Bicycle Storage Box

Bicycles Again.

One of the other things I've been wanting for a long time is a covered, lockable storage box for bicycling around town. I have Givi cases for my motorcycles, and I find it indispensable to be able to store things securely while away from the vehicle. It's something I miss when biking.

So, I went to my local hardware store and found this small-ish plastic toolbox for about $15.

 The first thing noticed is that the lid doesn't stay up on it's own. Very annoying.

The culprit turned out to be these plastic tabs intentionally appended to the hinges. What the hell? So, I shaved those off with a wood rasp, and now the lid will at least stay open when the box is level. But I may need to revisit that down the road.

So, on to the mounting. The Idea I came up with was to put key-hole slots into a plate, so that #6 sheet metal screws could be inserted, the whole box would then slide to lock the screws in place, and then the screws tightened down. The idea is that this way, it'll be easy to remove the box when necesary, but you have to be able open the box to remove it from the bike rack.

I'm doing this kindof quick-and dirty. So I kinda eyeballed the alignment of my bike rack (your typical aluminum rack). I drew the outline of the rack on the bottom of the box with a sharpie to help with this.
The top plate screws into the box with screws inserted from the bottom. I counter-sunk the screw holes so that the bottom of the box will be flush with the bottom plate. In hindsight, it would have been easier to put slots into the bottom plate. But, I didn't think of it.
 Some pictures of the bottom plate, finally mounted.

The next challenge was to cut out the slots. If I were in less of a hurry, I'd have done all this on a mill or router. But then I'd have to deal with figuring out how to clamp or fixture on this box, which just seemed like kindof a pain in the ass. So I did it by hand: using the mounting plate as a template, I drilled holes along the slot, then filed and sanded to clean up the result.
Yeah, it's a little rough, but it should work for my purposes.
See? The bottom plate fits right on there. Next step was to mount the bottom plate onto the rack. Eyballed again. The bottom plate is secured with M6 bolts. I drilled a hole for one, and got it finger tight, and then just went for it with the 6mm drill for the second hole.
Well, that's enough progress for one afternoon. I have already printed a second set of mounting plates, so I should be able to finish this one up tomorrow. But I am out of M6 nuts / washers, so I need to at least make a trip to the hardware store.

The nice thing about this particular project, is that it's its own storage own box :)

Wednesday, October 14, 2015

Bike Lights

I've been without bicycle lights since loaning my bike out to one of the interns at my former employer. Unfortunately, this makes riding at night somewhat illegal. As autumn wears on, the daylight is going, and the likelihood of being caught without lights after dark increases dramatically, so I decided to fix this problem.

Not long ago, I was at Cole Valley Hardware, and they had some really cheap bike lights. But then I loaned these to a friend, and it's not worth the trouble to get them back. And then I went back to the hardware store to get the lights, and all they had was the rear light. The headlights weren't available.

So rather than shell out $20 for an expensive headlight, I decided to adapt this cheapo LED flashlight I don't use very much. It came as part of a set which included too many flashlights. I had tried to do this once before using a product called "Shapelock" (also sold at Radioshack as U-Shape). But the result was super ugly. I took it off and recycled the Shapelock.

So the first step was to make a clamp which would grab the flashlight itself. This was my first attempt. I got the internal dimensions of the channel correct on the first try. The flashlight handle is basically a tapered cylinder, which I modeled using a loft operation in 123d.

 It looked reasonable on the computer screen, but when I printed out just seemed way too bulky and ugly.
So, I made a slimmed-down version. It took a couple of tries to print this correctly. The first time, I tried to print both pieces simultaneously, but the filament jammed near the end of the print. I was able to fix the jam, but the goof weakened the print and it snapped when I tried to assemble it. This motivated the previous post on preventing filament jams.

Today, I re-printed the pieces separately, and this  time they printed beautifully. To get the best finish, I printed the top piece face up with support. The support comes off easily with pliers, but leaves a jagged edge which must be filed / sanded down. I'd rather you not see that on the top-side, but it doesn't matter if it's on the interior.

I've made versions of this handlebar bracket, but my bicycle handlebars are 1.25" in diameter, rather than .9" like the motorcycles' are. So, I needed to make a slightly larger version. Also, the clamp which holds the bars in place requires that the mount be offset slightly. This one printed beautifully on the first try:

There are two tricks to assembling the clamp: one is that I use brass thread inserts from Yardley products. This allows me to use machine screws to get good clamping force without worrying that the screws will pull out of the plastic. The other trick is to use contact-cement to adhere a thin layer of rubber on the interior of the clamp.

This is both to ensure a good tight grip on the bars, and also to protect the paint on the bars when you rotate the clamp. For rubber, I just used an old bicycle inner tube, which the neighborhood bicycle shop gave me for free. One trick is to trim along the rubber seams, so that you get a nice, flat piece.

For the rear light, I didn't have to work nearly as hard. The light comes with a kindof useless clip mount, but this unscrews very easily.

I reverse-engineered the screw hole / alignment dowel pattern and whipped up this flexture clamp design, which printed beautifully on the first try. Since the seat post comes out completely, this seemed like a good way to go, rather than using a two-piece clamp.

I measured my seat-post diameter as about 1.050", decided to make the outside diameter of the clamp 1.1" just to give a little margin for error. The clamping force is provided by a #6x1/2" sheet metal screw. A 0.1" slot cut into the clamp allows the clamp to flex just enough to tighten around the seat post.

Mounting the clamp onto the light just re-uses the screw it came with. Since the mounting screw goes into the light, I had to add a counter-bore, which I chamfered so that the tapered head would snug nicely onto the light. I made a little bit of a goof, by making the mounting surface too long, but this has been corrected in the model. In order to actually screw the mounting screw on, I had to add a second hole to allow for insertion of the screw driver.

The result looked a lot more professional than I was expecting. I think the bright screw set against the dark, black plastic tends to do that.

Tuesday, October 13, 2015

Tips for avoiding 3D Printer Filament Tangles and Jams

I'm still somewhat new to 3D printing with FDM machines, but what I've come to realize is that filament spools are hateful things. Especially a very full spool.

The fundamental problem is that it's not possible to wind a filament spool perfectly such that the filament never crosses over or under itself. And even if it were, if you don't keep constant tension on the filament, it will unwind and tangle on the spool. Also, the filament seems to have twists which cause it to want to reverse the direction that it coils in, creating a kink or a knot.

The key to avoiding this problem is two-fold:

  • On the one hand, keep the filament path into the printer as short as possible. Try to keep the filament path clear of anything around which the filament might tighten itself.
  • On the other hand, keep the filament loose on the spool.

Loose filament actually wants to to straighten itself out into orderly coils. It's only when the filament is held taught that it wants to kink, knot, and jam. At the same time, unless the filament is contained by the sides of the filament spool, it will still want to snag or constrict around objects along the filament path.

For a New or Full Filament Spool

Don't try to print off a full filament spool. The filament is not adequately contained by the sides of the filament spool, and wants to leap over the sides. It will then wrap itself around the spindle, kink, knot, and all manner of nasty things as it is pulled ever tighter by the extruder.

Instead, after slicing, look at the summary info in your slicer and find out how filament is required. Measure out double that amount, and coil it loosely around an empty filament spool. I.e, don't actually lock it onto the filament spool.

If you don't have an empty spool yet, then the best thing to do is just let it dangle loosely from the printer, and clear the path into the printer as much as possible. You'll need to watch that it hasn't tangled from time to time.

If you hear the filament making noise, better take a look! But, it's much easier to straighten out filament that's not attached to a spool -- especaially a full spool.

For a Used Filament Spool

You can print directly off of a half-used spool. But apply this trick before you start the print, and periodically while the print progresses.

Grab hold of the free end of the filament in your hand, and then back-wind the filament spool. This loosens up the filament. As you back-wind the filament, it will help if you scrape your finger back and forth across the spool, to loosen up tight spots. Keep doing this until you have enough filament loose on the spool to complete the print.

Check on the spool from time to time to make sure that there is still ample filament loose on the spool.

Tuesday, September 15, 2015

BT Remote Is Alive!

The bluetooth remote is done, at least for the time being. The software and hardware both needed some changes.

My attempt to salvage the BlendMicro from the old circuit board was not successful. I was going to have to re-do the board. So I re-did it different. I put all the buttons and knobs onto the same board, and then attached the LCD on a riser, as before. Also, this time I added diodes on the power connection to protect from reverse voltage :P.

One of the issues I ran into here is that the screen could not be centered, due to the 0.1" spacing. I would have to account for this in my case design.

I did something slightly different than with the previous iteration. I mocked up the electronics in CAD, and then was able to reference the enclosure design to them. I would prefer being able to do things the other way around, but that requires being able to do a custom PCB layout, and I don't have the skill for that yet. Also, 123d design can't export sketches, so there's no way to reference component placement to the 3D model of the housing.

Fortunately, the encoder knob could be centered, so I was able to use this as a reference point for the entire design. It still took a couple of tries on the 3D printer before I had the dimensions correct. But once I did, I was able to reference the openings for the screen and buttons off of that. And that ended up being correct almost on the first try.

Once I was satisfied with the basic component placement, I wired up all the connections.

Once I was satisfied that it all worked, I made this test to check that my dimensions were correct.

It took a few iterations to get to the final case design. Once again, screw placement was the bug-bear of the whole project. I was trying to keep the over-all size down, but kept running out of room for screws. And 123d design doesn't make it easy to go back and change fundamental things like the under-lying dimensions, so I had to start almost from scratch 3 times before I got it right.

Here's the first printed version with mounting tabs on the sides.

I ended up not liking that the tabs on the sides. I re-did it with mounting tabs on the top and bottom. For some reason, I thought it made sense to offset the top tab. I changed my mind about that and moved it to the center.

Added a dollop of hot glue between the MCU and the screen for added rigidity and insulation.

Final design coming together.

Finishing touches with Sugru as a gasket material.

And yet I still have issues with the encoder knob and buttons being too close together. During my first road test, I had trouble skipping tracks without accidentally hitting the volume knob. I eventually figured out how to do it, but it takes some practice.

So, if I have to do it again, I need to space the buttons out more, or mount them sideways.

The other issue I ran into is that since Android has only 16 steps on its volume scale, I found that one step per encoder click was far too sensitive. So I had to scale the encoder input. But the whole thing now feels too sluggish, since I had the volume display update only in response to the round trip. This keeps the volume in sync with the display, but makes everything feel unresponsive.

In hind-sight, I guess what I can say about this is that an encoder wheel actually doesn't work very well as the volume controller. If android could adjust volume in finer increments, it would work a lot better. Another thought might be to make the encoder knob harder to turn so that it's harder to accidentally bump it. And also so that it takes more effort to move one step, one is unlikely to move it too quickly. But that might compromise the encoder's value as an input device for scrolling through menus (not yet implemented).

The encoder's button works good, though. And the rubber button pads actually feel pretty good, even with gloves on. So, I'm pretty happy with that.

I designed this mounting scheme shamelessly cribbed from an action camera I also own. The original intention was to have inter-operable components, but it turns out that the precision of my 3D printer and the quality of the materials I use are both factors, and so the mounting clip failed after a few weeks of use.

But there was another problem: vibrations. I figured something like this might  be a problem, so I had padded my handle-bar mounts with Sugru.

But the bars still transmit some very strong, high-frequency stuff at particular RPMS. In my case, very close to my cruising RPM. And the result was that the display would wig out. First, the contrast would get very dark, then the display would cut out all-together. Strange! But was it mechanical or electrical interference? I tested this by taking the display out of its clamp and holding it in my left hand while riding along at 5000RPM (I do NOT recommend doing this!) The problem did not re-appear. So my temporary solution was to work the mount a little bit so it wouldn't be clamped so tightly, which solved the problem with the display cutting out. But now the thing tends to fall out of the mount.
My original thought might be to cast something out of sillicone, but my experiments with molding silicone via 3D printed molds have been problematic. Basically, you can't separate the mold from the silicone. So that gives me an idea: don't even try to separate the silicone. Instead, embed the mount in the silicone.

The idea here is to isolate the remote and from the bars by a Silicone cushion. The cavity between the outer shell and the mounting plate will be filled with RTV, and then the plate carefully pressed in and the whole thing allowed to cure for a few days. I added some texture to the inside surfaces to help with adhesion, although my experience is that RTV will stick like nothing else.

I'll do another post on the my experience with mold making.