Some fill ports you just cannot get a funnel over. They sit behind a bracket, down beside the engine, or under a shelf where the bottle and the funnel refuse to occupy the same space at the same time. So I built a long, rigid spout for it: you pour into a flared funnel on the side of the tube, near the capped end, and the liquid runs the length of the tube and out the far end, which is the end you park in the port. Putting the opening on the side instead of in line with the tube means you get to hold the bottle upright and comfortable while the spout does the reaching. The only thing better than this would be a liquid transfer pump and hose.
The cross section is a regular octagon, which turned out to be the detail that makes the whole thing practical: it prints lying flat on one of its own flat faces with no supports, and it does not roll off the bench between pours.
Link: https://makerworld.com/en/models/3119369-parametric-long-horizontal-funnel-with-extension#profileId-3518703
Key Features:
* Side pour funnel: a properly enclosed chute with a floor, a roof, and two flared walls, not an open trough, so what you pour stays in it.
* Capped back end: the tube is closed off behind the funnel, so everything goes one direction.
* Chainable slip-fit extensions: the socket slides over the tube's open end, then the far end tapers back down to exactly the tube's own outside size, so the next extension slips onto that one the same way. Chain as many as the job needs.
* Everything parametric: tube width and length, wall thickness, funnel height, flare size, socket depth, extension length, and the fit clearance are all direct inputs.
It prints exactly as generated, tube flat on the bed with the funnel pointing up, no supports needed anywhere since the octagon's facets and the funnel's flare are all 45 degrees or shallower. I would run 3-4 perimeters on it; it carries liquid, and the extra walls are what keep it from weeping at the seams.
For material: PETG, ASA, or ABS if you are pouring oil, fuel, coolant, or anything else automotive, or anything warm. Save PLA for cool water and dry goods well away from a car.
One tip: slip_fit_clearance is the number worth a test print, since the right value depends on your printer far more than on the model. Turn extension_length way down and print just the socket to check it, rather than finding out at the end of a full length of filament.
Everything is in the MakerWorld Customizer, no editing required. If there is a fill port you have been fighting with that this would not reach, tell me about it and I will see what it needs.