This is a hack that enables the use of any regular flashlight as a bike light. Made for CycleHack 2017 - Lisbon (https://cyclehacklisboa.tumblr.com/).
Barrier This Solves: Reuse regular flashlight's to improve bike safety.
Step 1: measure the flashlight's diameter and your bike handlebar
Step 2: edit the OpenScad file and generate the STL file
Step 3: call a friend with a 3d printer or go to the nearest Makerspace/Fablab
Step 4: with 4 zip ties firmly secure it to your bike!
Step 5: Ride you bike safely.
This is similar to https://www.thingiverse.com/thing:250899
I've clean the OpenScad code and now it supports various zip ties and dimensions. Use the OpenScad file for your hack.
Happy CycleHacking!
infill: 20%
res.: 0.2mm
OpenSCAD code
// Author: Tiago Charters de Azevedo // Maintainer: Tiago Charters de Azevedo // URL: http://diale.org/ // Version: * // Copyright (c) Tiago Charters de Azevedo // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3, or (at your option) // any later version. // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 51 Franklin Street, Fifth Floor, // Boston, MA 02110-1301, USA. // Commentary: $fn=64; phi=(1+sqrt(5))/2; dflasglight=24; dbar=22.34; zip=6; //Width of your zip tie. height=max(25,dbar,dflasglight); module holder(){ difference(){ cube([dbar+zip, dflasglight+zip, height],center=true); translate([0,0,height/phi]) rotate([0,90,0]){ cylinder(r=dflasglight/2, h=1.1*(dbar+zip), center=true);} translate([0,0,-height/phi]) rotate([90,90,0]){ cylinder(r=dbar/2, h=1.1*(dflasglight+zip), center=true);}}} module ziptietop(){ translate([0,0,height/phi]){ rotate([0,90,0]){ difference(){ cylinder(r=dflasglight/2+zip, h=zip, center=true); cylinder(r=dflasglight/2+zip/2, h=dbar+20, center=true);}}}} module ziptiebottom(){ translate([0,0,-height/phi]){ rotate([90,90,0]){ difference(){ cylinder(r=dbar/2+zip, h=zip, center=true); cylinder(r=dbar/2+zip/2, h=1.1*(dbar+zip), center=true);}}}} translate([0,0,(dbar+zip)/2]){ rotate([0,0,0]) difference(){ holder(); translate([(dbar+zip/2)/4,0,0]){ ziptietop();} translate([-(dbar+zip/2)/4,0,0]){ ziptietop();} translate([0,(dflasglight+zip/2)/4,0]){ ziptiebottom();} translate([0,-(dflasglight+zip/2)/4,0]){ ziptiebottom();}}}
Pics
Created: 26-06-2018 [12:47]
Last updated: 23-01-2025 [00:03]
For attribution, please cite this page as:
Charters, T., "3D printed bike flashlight mount": https://nexp.pt/bikehack.html (23-01-2025 [00:03])
(cc-by-sa) Tiago Charters - tiagocharters@nexp.pt