From: Svjatoslav Agejenko Date: Wed, 17 Jun 2026 16:21:57 +0000 (+0300) Subject: refactor(build): generate HTML on-demand and unversion existing files X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=commitdiff_plain;h=34837205194e96d737f29b9b6fda9445e6afbc1f;p=physical.git refactor(build): generate HTML on-demand and unversion existing files Switch website publishing to the same model as sixth-3d: - HTML files are now generated from .org sources during publish - Remove all 30 tracked HTML files from version control - Add .gitignore rule for *.html - Update Tools/Update web site to export .org files via Emacs batch mode - Replace old repository handling tools/ with new Tools/ scripts - Include IntelliJ IDEA project config (.idea/) - Include FreeCAD backup files (.FCStd1) --- diff --git a/.gitignore b/.gitignore index 6520170..9e5cee8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ -.idea -*.FCStd1 +# HTML files are generated on-demand from .org files via Emacs export +# Do not commit them to version control +*.html diff --git a/.idea/$CACHE_FILE$ b/.idea/$CACHE_FILE$ new file mode 100644 index 0000000..daedf7b --- /dev/null +++ b/.idea/$CACHE_FILE$ @@ -0,0 +1,136 @@ + + + + + + + + + + + Abstraction issuesJava + + + Assignment issuesJava + + + Class structureJava + + + Cloning issuesJava + + + Code maturity issuesJava + + + Code style issuesJava + + + Data flow issuesJava + + + Dependency issuesJava + + + Error handlingGroovy + + + Error handlingJava + + + Google Web Toolkit issues + + + Gradle + + + Groovy + + + Initialization issuesJava + + + Internationalization issuesJava + + + JUnit issuesJava + + + Java + + + Java language level migration aidsJava + + + JavaScript + + + JavaScript function metricsJavaScript + + + Javadoc issuesJava + + + Kotlin + + + Performance issuesJava + + + Portability issuesJava + + + Probable bugsGradle + + + Probable bugsJava + + + Python + + + Serialization issuesJava + + + Spring + + + Spring AOPSpring + + + Spring CoreSpring + + + TestNGJava + + + Threading issuesGroovy + + + Threading issuesJava + + + Verbose or redundant code constructsJava + + + Visibility issuesJava + + + WebSocket issues + + + XMLSpring CoreSpring + + + XPath + + + + + AngularJS + + + + + + \ No newline at end of file diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..5c98b42 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,2 @@ +# Default ignored files +/workspace.xml \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..a1757ae --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..51963a1 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..a98c7e5 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/physical.iml b/.idea/physical.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/physical.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Furniture/Book stand/index.html b/Furniture/Book stand/index.html deleted file mode 100644 index 8ea68aa..0000000 --- a/Furniture/Book stand/index.html +++ /dev/null @@ -1,281 +0,0 @@ - - - -Book stand - - - - - - - - - - - - - -
-

Book stand

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Small book stand. -

- - -
-

book%20stand.png -

-
- -

-Download: -

- -
-
-
- - - diff --git a/Furniture/DVD organizer/index.html b/Furniture/DVD organizer/index.html deleted file mode 100644 index 4b90c90..0000000 --- a/Furniture/DVD organizer/index.html +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - -DVD organizer - - - - - - - -
-

DVD organizer

-
-

Table of Contents

- -
-
-

1. General

-
- -
-
-
-

2. Project description

-
-

-This 3D printable organizer allows to neatly store DVDs. Multiple -organizers can be printed and stacked horizontally, vertically or in a -grid. -

- - -

-Photo: -

- - -
-

make.png -

-
- -

-Render: -

- - -
-

render.png -

-
- - -

-Download: -

- -
-
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2025-08-31 Sun 12:35

-

Validate

-
- - diff --git a/Furniture/Spray gun holder/index.html b/Furniture/Spray gun holder/index.html deleted file mode 100644 index 9e3760a..0000000 --- a/Furniture/Spray gun holder/index.html +++ /dev/null @@ -1,314 +0,0 @@ - - - - - - - -Air spray gun wall mount - - - - - - -
-

Air spray gun wall mount

- - -
-

1. General

-
- -
-
- -
-

2. Project description

-
-

-There is good Kkmoon HVLP Air Spray Gun on sale at Amazon. Here are -designs for 3D printable mounts for it. -

-
- -
-

2.1. Wall mount design

-
-

-Photo: -

- - -
-

make.png -

-
- -

-Render: -

- - -
-

schematic.png -

-
- - -

-Download: -

- -
-
-
-

2.2. Under desk mount design

-
-

-Render: -

- - -
-

holder under table.png -

-
- -

-Download: -

- -
-
-
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2022-06-04 Sat 17:48

-

Validate

-
- - diff --git a/Furniture/Wall mounted shelf/index.html b/Furniture/Wall mounted shelf/index.html deleted file mode 100644 index ec452c2..0000000 --- a/Furniture/Wall mounted shelf/index.html +++ /dev/null @@ -1,284 +0,0 @@ - - - -Tiny wall shelf - - - - - - - - - - - - - -
-

Tiny wall shelf

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-My current printer does at most 120x120x120 (mm) prints. And I needed -a small wall shelf for my lab. Here comes design for 119x119x119 (just -in case). I used double sided tape for wall attachment. -

- - -
-

shelf.png -

-
- - -
-
-
- - - diff --git a/Miscellaneous/12V Lead-Acid battery changer and terminal/index.html b/Miscellaneous/12V Lead-Acid battery changer and terminal/index.html deleted file mode 100644 index 755b5eb..0000000 --- a/Miscellaneous/12V Lead-Acid battery changer and terminal/index.html +++ /dev/null @@ -1,684 +0,0 @@ - - - -Battery charger and dual power supply unit - - - - - - - - - - - - - -
-

Battery charger and dual power supply unit

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
-

-I needed dual voltage power supply for my lab that runs on mains -electricity (wall power) and slowly charges (use-changing) attached -12V Lead-Acid battery. Lead-acid battery in turn provides high current -when needed as well as power in portable situations or when mains -electricity is not available. -

- - -
-

make.png -

-
- -

-Power supply provides about 13 Volts and 5 Volts simultaneously. -

- -

-!!!WARNING!!! Alternative and incompatible USB wiring/layout is -being used here. -

- -

-Normal USB devices and cables should not be plugged in! It would -damage device/cable and likely power supply. -

- -

-I found USB-A connectors to be easily available, cheap, reliable and -functional, so I re-purposed connector for my own needs but I'm using -totally incompatible electrical wiring. -

- - -
-

schematic.png -

-
- -

-As seen, it has dual voltage output. Additionally one wire is -dedicated to data transmission and can be used with 1-Wire protocol -

- -

-1-Wire data router/hub is really simple. Power supply simply passively -links all data wires together. -

- -

-Power supply uses 3D printed body with lots of holes, for fanless -cooling. -

- - -
-

body,%201.png -

-
- -

-Various modules are realized on top of prototype PCBs that slide into -dedicated rails within the body. -

- - -
-

body,%202.png -

-
- -

-Like this: -

- - -
-

make,%202.png -

-
- -

-When cover is closed, it blocks PCB movement: -

- - -
-

cover.png -

-
- -

-There is still some empty space inside, so why not add dummy cover on -top that can be replaced later with add-on functionality/expansion -board/terminal :) -

- - -
-

cover%20cover.png -

-
- -

-Download: -

- -
-
- -
-

3 Transformer and AC to DC converter

-
-

-This is where high voltage from mains electricity enters the system. -

- -

-Schematic: -schematic.png -

- -

-For safety I kept high voltage section as minimal as possible. That -is, wall plug runs straight into transformer. Also I used UV hardening -glue for extra safety and isolation on PCB. -

- -

-Power on/off switch operates on already reduced voltage of about 30 -volts. Power switch is located on indicator panel. -

- - -
-

make,%201.png -

-
- -

-DC current of about 30 volts is then routed to Main board. -

- - -
-

make,%202.png -

-
- -

-Single sided prototype PCB is used. -

-
-
- -
-

4 Main board

-
-

-This is logically main board because it appears to be central hub that -connects all components. It also houses 2 adjustable DC-DC Step Down -voltage converters. -

- - -
-

main%20board,%201.png -

-
- -

-High-level schematic of entire device: -schematic.png -

- -

-As seen from schematic, ~30 volts DC from transformer board is routed -into first step-down converter that reduces it to about 15V. Reduced -voltage is then directed to Current limiter circuit. Current limiter -loses about 2 volts. Now we have current and voltage limited power at -about 13 volts. This power is used to charge connected 12V Lead-Acid -battery. Also the same power is routed to connector terminal to be -consumed by connected devices. -

- -

-As seen from this schematic, device is not meant to provide high -current for long periods of time. Instead it gets comparatively -limited current to charge the battery and feed devices with low -current requirements. Occasional current spikes are backed up by -battery that stays in use-changing mode. -

- -

-Also about 13V output voltage is approximate and depends on connected -battery charge level. -

- -

-Second Step-Down converter reduces voltage even further to quite -precisely 5V DC. This resulting voltage is also routed to connector -terminal. -

- -

-Both 13V and 5V lines are also routed to indicator panel for -monitoring. -

- -

-There is single on/off switch. In off position, it disconnects battery -and transformer from the system effectively powering everything down. -

- -

-On schematic above, some wires are annotated with numbers from 1 -to 13. This corresponds to output pins on the board. -

- - -
-

main%20board,%202.png -

-
-
-
-
-

5 Current limiter

-
-

-Schematic: -schematic.png -

- -

-Simple LM317 based current limiter is used. I used 4.7 ohm -resistor. It provides about 265 milliamps of current. See calculator. -

- - -
-

current%20limiter,%201.png -

-
- -

-Thermal paste below and UV hardening glue on top is used to attach -LM317 to the heatsink. There is also jumper-like solution on top -right. This is handy to attach multimeter tap to verify/monitor -current during initial device calibration. -

- -

-If attached battery is really empty, significant voltage drop can -occur in LM317. Heatsink is needed to dissipate that power. -

- - -
-

current%20limiter,%202.png -

-
- -

-Note: resistor gets hot too. -

-
-
- -
-

6 Indicator panel

-
- -
-

indicator%20panel,%201.png -

-
- -

-Basically 2 digital DC voltmeters and main on/off switch. -

- - -
-

indicator%20panel,%202.png -

-
- -

-Download: -

- - -
-

indicator%20panel.png -

-
- - -
-
- -
-

7 Connector terminal

-
-

-Schematic: -schematic.png -

- -

-As seen above, most of the USB connectors are used to deliver dual -power output and 1-wire data connectivity, except one on the bottom -right. This is used to attach 12V battery. Some capacitors are thrown -in as well to stabilize against smaller current spikes. -

- -

-Electrically schematic is realized using smaller prototype PCBs. -

- - -
-

make,%201.png -

-
- - -

-Those PCBs are wired to central small PCB that acts as a hub: -

- - -
-

make,%202.png -

-
- -

-PCBs are held together by being sandwiched between front panel: -

- - -
-

front%20panel.png -

-
- -

-and smaller back-end plate: -

- - -
-

back%20panel.png -

-
- -

-Result: -

- - -
-

make,%203.png -

-
- - -

-Download: -

- -
-
- -
-

8 Calibration

-
-

-Since device uses adjustable step-down modules, these need to be -calibrated to provide correct output voltage. It is important that -battery receives proper charging voltage otherwise either no charging -occurs or battery starts gassing out and gets destroyed. -

- -

-See here for more details: https://www.powerstream.com/SLA.htm -

- -
- -

-Happy building! :) -

-
-
-
- - - diff --git a/Miscellaneous/Lab heater and cooler/index.html b/Miscellaneous/Lab heater and cooler/index.html deleted file mode 100644 index 08dabae..0000000 --- a/Miscellaneous/Lab heater and cooler/index.html +++ /dev/null @@ -1,405 +0,0 @@ - - - - - - - -Versatile Heating/Cooling Plate with Triple Peltier Elements - - - - - - - -
-

Versatile Heating/Cooling Plate with Triple Peltier Elements

- - - -
-

1. Introduction

-
- -
-

make.png -

-
- -

-This is a home-built device that uses three Peltier elements. It can -electrically switch between heating and cooling mode of operation. -

- -

-Possible Applications -

-
    -
  • Small beverage chiller/warmer to keep a drink cold (or a mug of -coffee warm) on your desk.
  • -
  • Science experiments.
  • -
  • Hobby prototyping: Great for testing sensors or components under -controlled temperature environments.
  • -
- -

-A Peltier element (also called a thermoelectric cooler or TEC) moves -heat from one side of the device to the other when powered. If you -feed the module current in one direction, one side cools while the -other side heats. Reverse the polarity, and the hot/cold sides flip. -

- -

-In short, they offer a neat, compact way to generate small-scale -heating or cooling without traditional refrigerants or compressors and -it has no moving parts. -

- -

-!WARNING! I'm reusing USB-A connector here in completely -incompatible ways to power current device with 12 volts also from DIY -power supply. You should never connect this device to normal USB -power supplies because it likely will destroy it and will be fire -hazard! -

- - -

-My DIY device consists of the following major parts: -schematic.png -

- -
    -
  • Three Peltier modules, arranged on top of one-another for a higher -overall cooling/heating capacity.
  • -
  • A top plate, where items are placed for heating or cooling.
  • -
  • A fan assembly on the opposite side of the Peltiers to pull air across a heatsink.
  • -
  • A mode switch (Heating/Cooling), which toggles the polarity of the Peltier elements.
  • -
  • An On/Off switch that powers the entire system.
  • -
  • Two indicator LEDs: one lights up for “Heating” mode, the other for -“Cooling” mode.
  • -
- -

-In simple terms, you have a box with a top-most Peltier element for -contacting the item to be warmed or cooled. Inside, there’s a set of -Peltier modules sandwiched between and an internal heatsink, with a -fan that moves air over the heatsink. The two switches handle power -and polarity, and the LEDs offer instant visual feedback. -

- -

-By wiring three Peltier elements, the cooling/heating capacity is -effectively multiplied. -

- -

-A crucial factor in making Peltiers work well is how effectively you -dump the waste heat/cold on the opposite end of the Peltier stack into -the environment. If the hot side is not kept sufficiently cool, the -effectiveness of the entire module drops. -

- - -
-

make, bottom.png -

-
-
-
- -
-

2. Files

-
- - -

-3D printable STL files: -

-
- -
-

2.1. Main body of the construction

-
-

-body.stl -

- -
    -
  • body, 1.png
  • -
  • body, 2.png
  • -
-
-
- -
-

2.2. Top cover

-
-

-top cover.stl -

- -
    -
  • top cover.png
  • -
-
-
- -
-

2.3. Bottom cover

-
-

-bottom cover.stl -

- -
    -
  • bottom cover.png
  • -
-
-
-
- - -
-

3. License and Disclaimer

-
- -
-
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2025-04-07 Mon 02:02

-

Validate

-
- - diff --git a/Miscellaneous/USB desk fan mod/index.html b/Miscellaneous/USB desk fan mod/index.html deleted file mode 100644 index 5a3b111..0000000 --- a/Miscellaneous/USB desk fan mod/index.html +++ /dev/null @@ -1,423 +0,0 @@ - - - -USB desk fan modification - - - - - - - - - - - - - -
-

USB desk fan modification

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
-

-End-result looks like this: -

- - -
-

make.png -

-
- -

-It all started with couple of cheap USB desk fans that were a bit too -noisy: -

- - -
-

mini%20fan.png -

-
- -

-Idea is to add DC-DC step-down converter to reduce motor voltage to -make it quieter (Purchased form here). And since I already have this -USB powered thing on my desk, why not to share this power to allow -charging of various other USB powered devices. -

- -

-I ended up with this schematic: -schematic.png -

- -

-USB power of 5 volts that enters the system via DC jack is distributed -to two USB-A connectors on the front panel. Note: USB data is not -connected. Therefore this hub is for power sharing only. -

- -

-DC-DC fly-back converter could introduce voltage ripple in the -system. To smooth it out, there is capacitor (C1) and inductor (L1). -

- -

-Step-down voltage converter has adjustable output voltage. So after -assembling, it can be tuned with screw-driver to reach desired -noise/airflow tradeoff. -

- -

-From original fan I kept: -

-
    -
  • engine -
  • -
  • blades -
  • -
  • DC jack -
  • -
  • on/off swith -
  • -
- -

-Engine is attached with screws to following back-plate: -

- - -
-

fan%20housing%20-%20fan%20mount.png -

-
- -

-And result is encased into pipelike case: -

- - -
-

fan%20housing%20-%20cover%20assembly.png -

-
- - -

-Download: -

- - -

-Fan enclosure attaches to the rectangular body below using following -connector (glued to the fan housing): -

- - -
-

fan%20housing%20connector.png -

-
- -

-Download: -

- - -

-Bottom part to house 2 PCBs, on/off button and DC connector: -bottom%20stand%20body.png -

- -

-Component attachment: -make,%202.png -

- -

-And is closed by cover: -bottom%20stand%20cover%20assembly.png -

- -

-Download: -

- - -

-After assembly, it looks like this from the back: -make,%203.png -

- -

-Note, part of the body is deformed during printing. I have heated bed -and I even printed raft support in Cura and it did not help. In my -experience black PLA filament is awful in comparison to transparent -one. Has inferior flow (results in slower print speed) and tends to -deform easily. Will never buy it again. -

- -

-Fan top and bottom halves are attached using camera tripod quick -release screw. -

-
-
-
- - - diff --git a/Miscellaneous/adjustable resistor/index.html b/Miscellaneous/adjustable resistor/index.html deleted file mode 100644 index 2ab6a34..0000000 --- a/Miscellaneous/adjustable resistor/index.html +++ /dev/null @@ -1,371 +0,0 @@ - - - -Adjustable resistor / indicator - - - - - - - - - - - - - -
-

Adjustable resistor / indicator

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
-

-I needed a way to experimentally find resistance that works best in -certain circuits. Usual potentiometers could not handle required power -dissipation and were not precise enough. -

- -

-Solution is to build adjustable resistor: -

- - -
-

make.png -

-
- -

-Logically there is series of resistors that increase in resistance in -the power of 2: 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512. Each -resistor can be enabled or disabled by a switch. This makes entire -range of 0 – 1023.5 ohms available with the 0.5 ohms precision. -

- -

-Schematic: -schematic.png -

- -

-Here is front panel for switches: -front%20panel.png -

- -

-Download: -

- - -

-Sometimes I would like to use lightbulbs with various parameters as -test load/indicator. Current device has 4 of them included. -

- -

-Here is front panel for light bulbs: -indicator%20panel.png -

- -

-Download: -

- - - -

-After assembly using prototype PCB: -make,%202.png -

- - -

-Following body is used as a case and PCB support: -body.png -

- -

-Download: -

- - -

-Result: -make,%203.png -

- -

-Cover on the back: -back%20cover.png -

- -

-Download: STL file -

- -

-Button covers: -button.png -

- -

-Download: -

- -
-
-
- - - diff --git a/Miscellaneous/alternative USB layout/index.html b/Miscellaneous/alternative USB layout/index.html deleted file mode 100644 index 9bbc08e..0000000 --- a/Miscellaneous/alternative USB layout/index.html +++ /dev/null @@ -1,349 +0,0 @@ - - - -Alternative (and incompatible) layout for USB connectors - - - - - - - - - - - - - -
-

Alternative (and incompatible) layout for USB connectors

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
-

-Warning! Here I describe a hack that I personally found useful for -my own needs. But it is dangerous. Not to be replicated unless you -know that you are doing. -

- - - -
-

make.png -

-
- -

-I needed a way to power various devices I build. -

- -

-Requirements: -

- -
    -
  • Reliable. -
  • -
  • Cheap. -
  • -
  • Easy to use. -
  • -
  • Popular and highly available. -
  • -
  • Ability to draw significant current directly from 12V cheap, popular -and powerful lead-acid battery (optionally off-grid). Useful for -powerful electric motors, heaters, soldering irons, radio -transmitters, etc. -
  • -
  • Ability to draw limited but stabilized 5V power. Good for digital -circuits. -
  • -
  • Ability to have limited and simple 1-wire digital communication. -
  • -
- -

-USB Type A connectors are best match that I found. -

- -

-The main problem is, I like USB connectors but I want to use different -and incompatible electrical layout with them. -

- -

-Connecting proper USB power supplies, devices and even cables to the -ones that use alternative electrical layout would do damage!!! -

- -

-To avoid accidental mismatches, I mark all connectors/cables and devices that -use alternative wiring with printed, laminated warning stickers. -

- -

-Alternative wiring schematic: -schematic.png -

- -
    -
  • Outer shell is ground. -
  • -
  • 2 central pins are re-purposed to deliver +12V and high power. -
  • -
  • 1 pin is for limited power +5V. -
  • -
  • 1 pin for 1-Wire data. -
  • -
- - -

-Example warning marking on device to indicate that alternative USB -layout is used here: -

- - -
-

make,%202.png -

-
-
-
-
- - - diff --git a/Miscellaneous/battery tester/index.html b/Miscellaneous/battery tester/index.html deleted file mode 100644 index 3f14985..0000000 --- a/Miscellaneous/battery tester/index.html +++ /dev/null @@ -1,323 +0,0 @@ - - - -AA and AAA battery tester - - - - - - - - - - - - - -
-

AA and AAA battery tester

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- - -
-

make,%202.png -

-
- -

-Simple rechargeable Ni-MH battery tester. The problem with those -batteries is: right after you take them out of charger, voltage level -at their terminals is good. But some old batteries will get -empty/discharged way too quickly under normal load. This device is -intended to discover old batteries with reduced capacity. -

- -

-Freshly charged batteries are tested under high load for short time by -shorting battery + and - terminals using 5 ohm power resistor -(R1). Simultaneously battery voltage is being measured while under -load. -

- - -
-

electrical%20schematic.png -

-
- -

-I use vintage analog voltmeter. Instead of power resistor I use -Nichrome resistance wire. Test/measurement button should not be -pressed for long because power resistor gets hot quickly and battery -is being quickly depleted during measurement. -

- - -
-

assembly.png -

-
- -
    -
  • Body: body.png -
  • -
  • Cover: cover.png -
  • - -
  • Download: - -
  • - -
  • PS: While this device is interesting to build, still you can just -use ordinary ammeter that can handle battery generated current. -
  • -
-
-
-
- - - diff --git a/Miscellaneous/cable organizer/index.html b/Miscellaneous/cable organizer/index.html deleted file mode 100644 index 5ea843f..0000000 --- a/Miscellaneous/cable organizer/index.html +++ /dev/null @@ -1,289 +0,0 @@ - - - -Cable organizer - - - - - - - - - - - - - -
-

Cable organizer

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-I have lots of wires in my lab, and I need quick access to them. This -organizer allows to conveniently hang them on the wall. I use double -sided tape to make it stick. -

- - -
-

body.png -

-
-
-
- -
-

3 Files

-
-

-You can download FreeCAD project file to tweak design or generated STL -file ready for 3D printing: -

- - -
-
-
- - - diff --git a/Miscellaneous/headphone hub/index.html b/Miscellaneous/headphone hub/index.html deleted file mode 100644 index ccc85bf..0000000 --- a/Miscellaneous/headphone hub/index.html +++ /dev/null @@ -1,325 +0,0 @@ - - - -Headphone hub - - - - - - - - - - - - - -
-

Headphone hub

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
-

-Simple hub that allows connecting up to 4 devices via headphone -jack. For example single laptop or mp3 player can power up to 3 -headphones. -

- - -
-

make.png -

-
- -

-Schematic diagram: -schematic.png -

- -

-Warning: All devices are connected in parallel. Make sure that audio -producing device can handle combined load. See: -https://en.wikipedia.org/wiki/Series_and_parallel_circuits#Resistance_units_2 -

- - -
-

make,%202.png -

-
- -

-Device consists of body and cover that are held together by single -screw at the center: -

- - -
-

cover,%202.png -

-
-
-
- -
-

3 Download

-
- - - -

-Body STL file -body.png -

- - - -
-

-Cover STL file -

- - -
-

cover.png -

-
-
-
-
- - - diff --git a/Miscellaneous/hook/index.html b/Miscellaneous/hook/index.html deleted file mode 100644 index 21d4908..0000000 --- a/Miscellaneous/hook/index.html +++ /dev/null @@ -1,309 +0,0 @@ - - - - - - - -General purpose hook - - - - - - - - - - - -
-

General purpose hook

-
-

Table of Contents

- -
- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-General purpose hook suitable for holding light things. Hook does not -have screw holes. It is intended to be glued to the surface. -

- - -
-

hook.png -

-
-
-
- -
-

3 Files

-
-

-You can download FreeCAD project file to tweak design or generated STL -file ready for 3D printing: -

- - -
-
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2021-07-25 Sun 21:01

-

Validate

-
- - diff --git a/Miscellaneous/portable stereo active speaker/index.html b/Miscellaneous/portable stereo active speaker/index.html deleted file mode 100644 index 510d483..0000000 --- a/Miscellaneous/portable stereo active speaker/index.html +++ /dev/null @@ -1,805 +0,0 @@ - - - -Portable stereo speaker - - - - - - - - - - - - - -
-

Portable stereo speaker

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
-

-I had pair of good compact stereo speakers lying uselessly around as -well as secondhand TDA2030 Chinese knockoff audio amplifier chips. -Also I wanted to test modular construction approach: motherboard with -shared bus and functionality realized via pluggable modules. So I -built stereo speaker: -

- - -
-

make.png -

-
- -

-Indicator on the front panel shows available power within the -system. Ideally it should be at the maximum. It drops when batteries -run empty or when consumed power (too loud music) is greater than -onboard power supply or batteries can handle. It has on/off switch and -stereo audio input. Audio input impedance is about 100 ohms. -

- - -
-

make,%20side.png -

-
- -

-Idea for the holes on the top and smaller ones on the bottom back is -to enable air flow for passive cooling. -

- - -
-

make,%20back.png -

-
- -

-Entire construction is made of parts, no larger than -120x120x120mm. Maximum for my printer. -

-
-
- -
-

3 Battery holder

-
-

-Device is powered by 4 times AA NiMH batteries (1.2V each). -

- - -
-

schematic.png -

-
- -

-I happened to have AA battery adapters lying around with different -bottom hole configurations. Therefore this weird hole design: -

- - -
-

battery%20holder.png -

-
- -

-Download: -

- - -

-Result: -make.png -

- -

-Attaches to the back of the body: -mounted%20on%20the%20back.png -

-
-
- -
-

4 20V up-step module

-
-

-Battery pack voltage is routed through main on/off switch on the front -panel, and then it goes to the 20V up-step module. -

- - -
-

schematic.png -

-
- -

-It uses ready made upstep module, but adds extra voltage filtering via -inductor and capacitors. -

- - -
-

make.png -

-
-
-
- -
-

5 Main board

-
-

-Voltage upstep above sits on top of main board (motherboard). It has -uniform central bus that spans all connectors. -

- - -
-

internal%20bus.png -

-
- - -
-

bus%20on%20the%20bottom,%202.png -

-
- -

-First row of the main board is special IO terminal (for connecting -speakers, front panel, etc..) -

- - -
-

IO%20terminal.png -

-
- -

-Remaining rows are for connecting boards: -

- - -
-

1.png -

-
- -

-To provide structural support, main board is attached to frame: -

- - -
-

board%20fixator%20body.png -

-
- -

-Download: -

- - -

-And boards plugged into main board are fixed at the top, using clip: -

- - -
-

board%20fixator%20top%20clip.png -

-
- -

-Download: -

- - -

-Result: -

- - -
-

bus%20on%20the%20bottom,%201.png -

-
- - -
-

board%20fixator.png -

-
-
-
- -
-

6 Mono audio amplifier module

-
-

-Design uses scavenged secondhand Chinese TDA2030 audio amp -clones. Each chip is mono audio amplifier. Therefore 2 almost -identical audio amp modules had to be built, one for left speaker, one -for right. -

- - -
-

schematic.png -

-
- -

-I like to build on top of prototype PCBs. Gives results much faster -for one-off projects. Before soldering, I solve component layout on -paper: -

- - -
-

PCB%20layout.png -

-
- -

-Result - front: -

- - -
-

assembled%20front.png -

-
- -

-Result - back: -

- - -
-

assembled%20back.png -

-
- -

-Here copper tape is used as improvised heatsink. -

-
-
- -
-

7 Speakers

-
-

-High frequency small speaker and medium frequency bigger speaker are -combined. -

- - -
-

schematic.png -

-
- -

-Capacitor acts as high-pass filter on top of tiny PCB: -

- - -
-

PCB%20layout.png -

-
- -

-Speaker enclosure: -

- - -
-

speaker%20enclosure.png -

-
- -

-Download: -

- - -

-Speaker enclosure cover: -

- - -
-

speaker%20enclosure%20cover.png -

-
- -

-Download: -

- - -

-Result: -

- - -
-

make.png -

-
-
-
- -
-

8 Front panel

-
-

-Initial idea was really simple panel: -

-
    -
  • on/off switch -
  • -
  • system power indicator -
  • -
  • stereo audio input -
  • -
- -

-But, since I'm using "agile" approach, during load-testing, it become -clear that active fan based cooling would be nice (when playing loud -music). I found tiny cooler fan that needs 5 volts to operate. Also I -need to power backlight for power indicator. For both of these cases, -I decided to add another voltage up-step module (target voltage output -set to 6V). This time directly on the front panel. -

- - -
-

schematic.png -

-
- -

-Front panel case: -

- - -
-

front%20panel,%20front.png -

-
- - -
-

front%20panel,%20back.png -

-
- -

-Electronics fits inside: -

- - -
-

front%20panel,%20back,%20make.png -

-
- -

-Front view: -

- - -
-

front%20panel,%20front,%20make.png -

-
- -

-And attaches to the remaining components: -

- - -
-

attachment.png -

-
-
-
- - -
-

9 Extra capacitors

-
-

-Another thing that become clear during load-testing: output -power/volume can be further enhanced by adding high power capacitors -to even out load on primary 20V up-step module. -

- - -
-

extra%20caps.png -

-
- -

-Download: -

- - -

-Extra caps are mounted on top of the speaker and electrically attached -to the main board. -

- - -
-

make.png -

-
-
-
- -
-

10 Center box

-
-

-Last physical part, to attach it all together: central body. -

- -

-Front: -front.png -

- -

-Back: -back.png -

- -

-Download: -

- -
-
- - -
-

11 Conclusions / TODO

-
-

-These things could be done better: -

- -
    -
  • Instead of using undersized heatsinks on the audio amplifiers and -need for active cooling as a consequence, it would be better to try -to mount audio amplifier chip on top of speaker metallic body. It -would provide plenty of cooling and reduces power losses within -cable, since amplifier would be as close to the speaker as possible. -
  • - -
  • I used agile design. That is, implemented functionality ad-hoc. If I -had done design in advance, then I could have had smarter connector -layout between main board and front panel. That is: Instead of -multiple smaller cables, one wide (multi connector) cable. -
  • - -
  • Screw holes are too close to the edges on the front panel. -
  • - -
  • It would be better if screw heads were slightly buried within -construction body. -
  • -
- - -

-Overall, it was good learning experience and I was able to test -various ideas on it. Will add cooler later :) -

- - -

-Photo of initial PSU + audio amp test: -

- - -
-

initial%20test.png -

-
-
-
-
- - - diff --git a/Miscellaneous/round pincers/index.html b/Miscellaneous/round pincers/index.html deleted file mode 100644 index 353526a..0000000 --- a/Miscellaneous/round pincers/index.html +++ /dev/null @@ -1,319 +0,0 @@ - - - - - - - -Round ended pincers - - - - - - - - - - - -
-

Round ended pincers

-
-

Table of Contents

- -
- -
-

1 General

-
- -
-
- -
-

2 Project description

-
-

-Pincers allow to push LEGO EV3 rounded pins in and also pull them out. -

- - -
-

make.png -

-
- -

-Make sure to have strong infill pattern and thick borders when -printing for maximum strength. -

- -

-Schematic: -schematic.png -

- -

-Design has half of the pincers. 2 identical pieces have to be printed -out and connected at the end with glue and screw. -

- - -
-

make, 2.png -

-
-
-
- -
-

3 Download

- -
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2021-04-11 Sun 21:17

-

Validate

-
- - diff --git a/Miscellaneous/window fixator/index.html b/Miscellaneous/window fixator/index.html deleted file mode 100644 index 55fbaa0..0000000 --- a/Miscellaneous/window fixator/index.html +++ /dev/null @@ -1,286 +0,0 @@ - - - -Window holder - - - - - - - - - - - - - -
-

Window holder

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Keeps window open so that strong wind will not slam it close. -

- - -
-

schematic.png -

-
- -

-Download: -

- -
-
-
- - - diff --git a/Tools/Open with IntelliJ IDEA b/Tools/Open with IntelliJ IDEA new file mode 100755 index 0000000..304bf94 --- /dev/null +++ b/Tools/Open with IntelliJ IDEA @@ -0,0 +1,54 @@ +#!/bin/bash + +# This script launches IntelliJ IDEA with the current project +# directory. The script is designed to be run by double-clicking it in +# the GNOME Nautilus file manager. + +# First, we change the current working directory to the directory of +# the script. + +# "${0%/*}" gives us the path of the script itself, without the +# script's filename. + +# This command basically tells the system "change the current +# directory to the directory containing this script". + +cd "${0%/*}" + +# Then, we move up one directory level. +# The ".." tells the system to go to the parent directory of the current directory. +# This is done because we assume that the project directory is one level up from the script. +cd .. + +# Now, we use the 'setsid' command to start a new session and run +# IntelliJ IDEA in the background. 'setsid' is a UNIX command that +# runs a program in a new session. + +# The command 'idea .' opens IntelliJ IDEA with the current directory +# as the project directory. The '&' at the end is a UNIX command that +# runs the process in the background. The '> /dev/null' part tells +# the system to redirect all output (both stdout and stderr, denoted +# by '&') that would normally go to the terminal to go to /dev/null +# instead, which is a special file that discards all data written to +# it. + +setsid idea . &>/dev/null & + +# The 'disown' command is a shell built-in that removes a shell job +# from the shell's active list. Therefore, the shell will not send a +# SIGHUP to this particular job when the shell session is terminated. + +# '-h' option specifies that if the shell receives a SIGHUP, it also +# doesn't send a SIGHUP to the job. + +# '$!' is a shell special parameter that expands to the process ID of +# the most recent background job. +disown -h $! + + +sleep 2 + +# Finally, we use the 'exit' command to terminate the shell script. +# This command tells the system to close the terminal window after +# IntelliJ IDEA has been opened. +exit diff --git a/Tools/Update web site b/Tools/Update web site new file mode 100755 index 0000000..e71950e --- /dev/null +++ b/Tools/Update web site @@ -0,0 +1,87 @@ +#!/bin/bash + +# I use this script to update project website. +# HTML files are NOT versioned. They are generated on-demand from .org files. + +cd "${0%/*}"; if [ "$1" != "T" ]; then gnome-terminal -- "$0" T; exit; fi; + +cd .. + +# Function to export org to html using emacs in batch mode +export_org_to_html() { + local org_file=$1 + local dir=$(dirname "$org_file") + local base=$(basename "$org_file" .org) + ( + cd "$dir" || return 1 + local html_file="${base}.html" + if [ -f "$html_file" ]; then + rm -f "$html_file" + fi + echo "Exporting: $org_file → $dir/$html_file" + emacs --batch -l ~/.emacs --visit="${base}.org" --funcall=org-html-export-to-html --kill + if [ $? -eq 0 ]; then + echo "✓ Successfully exported $org_file" + else + echo "✗ Failed to export $org_file" + return 1 + fi + ) +} + +export_org_files_to_html() { + echo "🔍 Searching for .org files ..." + echo "=======================================" + + mapfile -t ORG_FILES < <(find . -type f -name "*.org" | sort) + + if [ ${#ORG_FILES[@]} -eq 0 ]; then + echo "❌ No .org files found!" + return 1 + fi + + echo "Found ${#ORG_FILES[@]} .org file(s):" + printf '%s\n' "${ORG_FILES[@]}" + echo "=======================================" + + SUCCESS_COUNT=0 + FAILED_COUNT=0 + + for org_file in "${ORG_FILES[@]}"; do + export_org_to_html "$org_file" + if [ $? -eq 0 ]; then + ((SUCCESS_COUNT++)) + else + ((FAILED_COUNT++)) + fi + done + + echo "=======================================" + echo "📊 SUMMARY:" + echo " ✓ Successful: $SUCCESS_COUNT" + echo " ✗ Failed: $FAILED_COUNT" + echo " Total: $((SUCCESS_COUNT + FAILED_COUNT))" + echo "" +} + +# Publish Emacs org-mode files into HTML format +export_org_files_to_html + +## Upload assembled documentation to server +# Exclude tools/ and .git/, exclude all .org files (source), keep generated .html and assets +rsync -avz --delete -e 'ssh -p 10006' \ + --exclude="tools/" \ + --exclude=".git/" \ + --exclude="*.org" \ + ./ \ + n0@www3.svjatoslav.eu:/mnt/big/projects/physical/ + +if [ $? -eq 0 ]; then + echo "✓ Upload completed successfully!" +else + echo "✗ Upload failed!" +fi + +echo "" +echo "Press ENTER to close this window." +read diff --git a/cases/Fuji XC15-45mm lens case/index.html b/cases/Fuji XC15-45mm lens case/index.html deleted file mode 100644 index a427cd4..0000000 --- a/cases/Fuji XC15-45mm lens case/index.html +++ /dev/null @@ -1,306 +0,0 @@ - - - -Fujifilm XC15-45mm lens case - - - - - - - - - - - - - -
-

Fujifilm XC15-45mm lens case

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Case for Fujifilm XC15-45mm lens. -

- -

-Design utilizes 3mm x 2mm thick neodymium magnets. -

- -

-Schematic assembled: -assembled.png -

- - -
-
- -
-

3 Files

-
-

-You can download FreeCAD project file to tweak design or generated STL -files ready for 3D printing: -

- -

-Body: body.stl -body.png -

- -

-Cover: cover.stl -cover.png -

-
-
-
- - - diff --git a/cases/Fuji XC50-230mm lens case/index.html b/cases/Fuji XC50-230mm lens case/index.html deleted file mode 100644 index bbbb68f..0000000 --- a/cases/Fuji XC50-230mm lens case/index.html +++ /dev/null @@ -1,294 +0,0 @@ - - - -Fujifilm XC50-230mm lens case - - - - - - - - - - - - - -
-

Fujifilm XC50-230mm lens case

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Case for Fujifilm XC50-230mm lens. -

- -

-Design utilizes 3mm x 2mm thick neodymium magnets. -

- -

-Schematic assembled: -assembled.png -

-
-
-
-

3 Files

-
-

-You can download FreeCAD project file to tweak design or generated STL -files ready for 3D printing: -

- -

-Body: body.stl -body.png -

- -

-Cover: cover.stl -cover.png -

-
-
-
- - - diff --git a/cases/Fujifilm camera battery box/index.html b/cases/Fujifilm camera battery box/index.html deleted file mode 100644 index 16a5d5f..0000000 --- a/cases/Fujifilm camera battery box/index.html +++ /dev/null @@ -1,295 +0,0 @@ - - - -Fujifilm camera battery box - - - - - - - - - - - - - -
-

Fujifilm camera battery box

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Carrying case for spare Fujifilm camera Newell NP-W126 batteries. -

- -

-Design utilizes 3mm x 2mm thick neodymium magnets. -

-
-
-
-

3 Files

-
-

-You can download FreeCAD project file to tweak design or generated STL -files ready for 3D printing: -

- - -
-
-
- - - diff --git a/cases/Meiqqm portable dosimeter case/index.html b/cases/Meiqqm portable dosimeter case/index.html deleted file mode 100644 index 04fcb9c..0000000 --- a/cases/Meiqqm portable dosimeter case/index.html +++ /dev/null @@ -1,294 +0,0 @@ - - - -Meiqqm portable dosimeter case - - - - - - - - - - - - - -
-

Meiqqm portable dosimeter case

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-This Geiger–Müller counter based nuclear radiation detector can be -bought here. -

- -

-To better protect its display (for portable use), simple case have -been made: -

- - -
-

Meiqqm%20portable%20dosimeter%20case.png -

-
- -

-Case has internally small bumps on the sides. It is suggested to -insert device with the front panel towards the bump. Bumps are to -ensure that screen and buttons are not scratched by the case. -

- -

-Download: -

- - -
-
-
- - - diff --git a/cases/NanoVNA case/NanoVNA case.FCStd1 b/cases/NanoVNA case/NanoVNA case.FCStd1 new file mode 100644 index 0000000..7c6acd0 Binary files /dev/null and b/cases/NanoVNA case/NanoVNA case.FCStd1 differ diff --git a/cases/NanoVNA case/index.html b/cases/NanoVNA case/index.html deleted file mode 100644 index c6ba33c..0000000 --- a/cases/NanoVNA case/index.html +++ /dev/null @@ -1,454 +0,0 @@ - - - - - - - -NanoVNA case - - - - - - -
-

NanoVNA case

- - -
-

1. General

-
- -
-
- -
-

2. Project description

-
-

-I felt that original NanoVNA case is too fragile for carrying this -device around in the bag. -

- - - -
-

NanoVNA, 1.png -

-
- -

-Therefore extra protective case was designed: -

- - -
-

make, 2.png -

-
- -

-Extra surrounding body adds better protection while exposing RF -connectors and buttons. -

- - -
-

make, 3.png -

-
- - -

-Also originally there is no housing for calibration and adapter -connectors. -

- - -
-

make.png -

-
- - - -

-Now there is also stylus / pincers help using touch screen and picking -connectors from the box. -

- - -
-

make, 5.png -

-
- -

-Cover attaches to the body using 3mm x 2mm thick neodymium magnets. -

- - -
-

make, 4.png -

-
-
-
- -
-

3. CAD renderings of assembled covers

-
-

-CAD drawing for inner box/case: -

- - -
-

inner%20body%20assembled.png -

-
- - -

-CAD drawing for inner box/case within outer box: -

- - -
-

assembled.png -

-
-
-
- -
-

4. NanoVNA dimensions

-
-

-Note: There are multiple variants of NanoVNA. Current project is -designed for NanoVNA with following body dimensions (excluding buttons -and connectors): -

- - -
-

NanoVNA, 2.png -

-
- - - - - --- -- - - - - - - - - - - - - - - - - -
Width86.4 mm
Height54.5 mm
Thickness15.85 mm
- -

-Note: About 0.7 mm thick, soft double sided tape strips are added to -back and front of NanoVNA to ensure that it is tightly secured in the -case. -

-
-
- -
-

5. Ready to print STL files

-
-
- -

-download: inner box -

- -

-inner%20box,%201.png -inner%20box,%202.png -

- -
- -

-download: inner cover -inner%20cover.png -

- -
- -

-download: outer box -outer%20box.png -

- -
- -

-download: outer cover -outer%20cover.png -

- -
- -

-download: stylus -stylus.png -

-
-
- -
-

6. CAD files

-
-

-Files can be edited using FreeCAD. -

- - -
-
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2022-08-30 Tue 22:07

-

Validate

-
- - diff --git a/cases/Nikon COOLPIX W150 battery case/index.html b/cases/Nikon COOLPIX W150 battery case/index.html deleted file mode 100644 index 2dc9e97..0000000 --- a/cases/Nikon COOLPIX W150 battery case/index.html +++ /dev/null @@ -1,317 +0,0 @@ - - - - - - - -Nikon COOLPIX W150 battery case - - - - - - - - - - - -
-

Nikon COOLPIX W150 battery case

-
-

Table of Contents

- -
- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-When closed: -make, 2.png -

- - -

-Carrying case for spare Nikon COOLPIX W150 battery. -

- -

-Design utilizes 3mm x 2mm thick neodymium magnets. -

-
-
-
-

3 Files

-
-

-You can download FreeCAD project file to tweak design or generated STL -files ready for 3D printing: -

- - - -

-Schematic: -schematic.png -

-
-
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2022-04-09 Sat 15:58

-

Validate

-
- - diff --git a/cases/USB cable terminals/index.html b/cases/USB cable terminals/index.html deleted file mode 100644 index e5764fe..0000000 --- a/cases/USB cable terminals/index.html +++ /dev/null @@ -1,371 +0,0 @@ - - - -DIY USB extension cable - - - - - - - - - - - - - -
-

DIY USB extension cable

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
-

-Original cable endings could not handle all the twisting, so why not -to make new and better ones. -

- -

-There are 2 designs: -

- -
    -
  1. PLA + rubber/TPU design -
  2. - -
  3. TPU only design -
  4. -
-
-
- -
-

3 PLA + rubber/TPU design

-
- -
-

make.png -

-
- -

-Following parts are glued together: -make,%202.png -

-
- -
-

3.1 Male connector case

-
- -
-

male%20connector%20case.png -

-
- -

-Download: -

- -
-
- - -
-

3.2 Female connector case

-
- -
-

female%20connector%20case,%201.png -

-
- - -
-

female%20connector%20case,%202.png -

-
- - -

-Download: -

- -
-
-
- -
-

4 TPU only design for male connector case

-
- -
-

make.png -

-
- -

-3D rendering of the cover: -schematic.png -

- -

-Download: -

- -
-
-
- - - diff --git a/cases/macro filter storage compartment/index.html b/cases/macro filter storage compartment/index.html deleted file mode 100644 index 58c5520..0000000 --- a/cases/macro filter storage compartment/index.html +++ /dev/null @@ -1,325 +0,0 @@ - - - -Macro filter storage compartment - - - - - - - - - - - - - -
-

Macro filter storage compartment

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Case for 52mm macro filter. -

- -
    -
  • Body: -
      -
    • body.png -
    • -
    -
  • - -
  • Cover: -
      -
    • cover.png -
    • -
    -
  • -
- - -

-Download: -

- - - --- -- -- - - - - - - - - - - - - - - - - - - - - -
itemFreeCAD fileSTL file
bodydownloaddownload
coverdownloaddownload
- -

-See also: -

- -
-
-
- - - diff --git a/cases/microscope slide box/index.html b/cases/microscope slide box/index.html deleted file mode 100644 index c32434c..0000000 --- a/cases/microscope slide box/index.html +++ /dev/null @@ -1,340 +0,0 @@ - - - -Case for microscope slides and cover slips. - - - - - - - - - - - - - -
-

Case for microscope slides and cover slips.

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Case for microscope slides and cover slips. Design utilizes 3mm x 2mm -thick neodymium magnets. Holes for magnets are made intentionally bit -larger for magnets to easily fit in. You would need glue to fix -magnets in holes. -

- -
    -
  • Can fit: -
      -
    • 10x slides (25.5mm x 75.5mm x 1.5mm) -
    • -
    • 10x cover slips: (20.5 x 20.5 x 0.5mm) -
    • -
    -
  • - -
  • Parts: -
      -
    • Body: -
        -
      • body.png -
      • -
      -
    • - -
    • Cover: -
        -
      • cover.png -
      • -
      -
    • -
    -
  • -
- -

-Download: -

- - - --- -- -- - - - - - - - - - - - - - - - - - - - - -
itemFreeCAD fileSTL file
bodydownloaddownload
coverdownloaddownload
- -

-See also: -

- -
-
-
- - - diff --git a/cases/roll/index.html b/cases/roll/index.html deleted file mode 100644 index 7cf5a63..0000000 --- a/cases/roll/index.html +++ /dev/null @@ -1,375 +0,0 @@ - - - - - - - -27mm and 55mm rolls - - - - - - - - - - - -
-

27mm and 55mm rolls

- - -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-I am a big fan of stackable bins organizer. I find 2x2 bins with 21mm -height are particularly good for storing rolls of wire. Also electric -handheld screwdriver is good for twisting wire onto the -roll. Therefore I designed rolls that have standard hexagonal hole on -the bottom (for screwdriver compatibility): -

- - -
-

roll 27mm, body, 2.png -

-
- -

-and 20mm total roll height, to be used with stackable bins -organizer. Rolls are made from body and cover: -

- -

-After printing, both parts have to be glued together. This is to avoid -overhangs that are hard to print. -

-
-
- -
-

3 27mm diameter roll

-
- -
-

roll 27mm, assembled.png -

-
- - -
-

roll 27mm, assembled, 2.png -

-
- - - -
-
- -
-

4 55mm diameter roll

-
- -
-

roll 55mm, assembled.png -

-
- - - -
-
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2021-02-21 P 22:54

-

Validate

-
- - diff --git a/cases/roll/roll for welding wire/roll for welding wire.FCStd1 b/cases/roll/roll for welding wire/roll for welding wire.FCStd1 new file mode 100644 index 0000000..40da6ea Binary files /dev/null and b/cases/roll/roll for welding wire/roll for welding wire.FCStd1 differ diff --git a/index.html b/index.html deleted file mode 100644 index e328509..0000000 --- a/index.html +++ /dev/null @@ -1,1340 +0,0 @@ - - - - - - - -Physical projects - - - - - - - - - - - - - - - - - - -
-

Physical projects

- -
-

1. Overview

-
-

-Collection of physical projects. Electronics, 3D designs etc.. -

- -
    -
  • DISCLAIMER: I DO ELECTRONICS AND 3D DESIGN SOLELY AS A HOBBY. THERE -COULD BE ERRORS THAT CAN RESULT IN ALL KINDS OF DAMAGE. USE THESE -DESIGNS AT YOUR OWN RISK.
  • -
- - -

-Here you can find: -

-
    -
  1. Cases, covers, holders, organizers -
  2. -
  3. Furniture
  4. -
  5. Miscellaneous designs
  6. -
  7. Optics
  8. -
-
-
-
-

2. Cases, covers, holders, organizers

-
-
-
-

2.1. Measurement device cases

-
-
    -
  • Meiqqm portable dosimeter (Geiger–Müller counter) case -
  • - -
  • NanoVNA case -
  • -
-
-
-
-

2.2. Optics

-
-
    -
  • Case for 52mm macro filter -
  • - -
  • Fujifilm XC15-45mm lens case -
  • - -
  • Fujifilm XC50-230mm lens case -
  • - -
  • Case for microscope slides and cover slips -
  • - -
  • Fujifilm camera battery (Newell NP-W126) box -
  • -
- - -
    -
  • Nikon COOLPIX W150 battery case -
  • -
-
-
-
-

2.3. Cable / wire

-
-
    -
  • Cable organizer -
  • - -
  • Hook -
  • - -
  • USB cable terminals -
  • - -
  • Rolls -
  • -
-
-
-
-
-

3. Furniture

-
-
    -
  • DVD organizer -
  • -
- - -
    -
  • Book stand -
  • -
- - -
    -
  • Wall shelf -
  • - -
  • Spray gun holder -
  • -
-
-
-
-

4. Miscellaneous

-
-
    -
  • 12V Lead-Acid battery charger and terminal -
  • - -
  • Adjustable resistor / indicator. -
  • - -
  • Battery tester. -
  • - -
  • USB Fan modification. -
  • - -
  • Window fixator. -
  • - -
  • Rounded pincers. -
  • - -
  • Heating/Cooling Plate with Triple Peltier Elements. -
  • -
-
-
-

4.1. Audio

-
-
    -
  • Portable stereo speaker. -
  • - -
  • Headphone hub. -
  • -
-
-
-
-
-

5. Optics

-
-
    -
  • 35mm film copying device. -
  • - -
  • Fujifilm X-mount to microscope adapter. -
  • - -
  • Gyroscope stabilizer for binoculars. -
  • -
-
-
-
-

6. Repository

-
- -
-
-

6.1. Git repository

-
- -
-
-
-
-
-

Created: 2025-08-31 Sun 12:36

-

Validate

-
- - diff --git a/misc/adjustable resistor/button.FCStd1 b/misc/adjustable resistor/button.FCStd1 new file mode 100644 index 0000000..43c255c Binary files /dev/null and b/misc/adjustable resistor/button.FCStd1 differ diff --git a/misc/headphone hub/hub.FCStd1 b/misc/headphone hub/hub.FCStd1 new file mode 100644 index 0000000..d1c121c Binary files /dev/null and b/misc/headphone hub/hub.FCStd1 differ diff --git a/optics/35mm film copying device/index.html b/optics/35mm film copying device/index.html deleted file mode 100644 index 48e1967..0000000 --- a/optics/35mm film copying device/index.html +++ /dev/null @@ -1,331 +0,0 @@ - - - -35mm film copying device - - - - - - - - - - - - - -
-

35mm film copying device

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Device fixes 35mm film so that it can be digitized by photographing to -digital camera in macro mode. Needs diffuse light source for -background. I used white sheet of paper wrapped around book and -illuminated by desk lamp. -

- -

-Device consists of 3 parts: -

- - - - - - - - -

-Body and cover are pushed together using 2 rubber bands on the -sides. Bottom rectangular stand is attached to body via screw on the -bottom. -

- - -

-FreeCAD files: -

- - -

-Example photo photographed from film: -

- -

-
-

- -

-(click on image for full resolution version) -

-
-
-
- - - diff --git a/optics/Fujifilm X-mount microscope adapter/X-trans to microscope adapter.FCStd1 b/optics/Fujifilm X-mount microscope adapter/X-trans to microscope adapter.FCStd1 new file mode 100644 index 0000000..0176641 Binary files /dev/null and b/optics/Fujifilm X-mount microscope adapter/X-trans to microscope adapter.FCStd1 differ diff --git a/optics/Fujifilm X-mount microscope adapter/index.html b/optics/Fujifilm X-mount microscope adapter/index.html deleted file mode 100644 index 1235543..0000000 --- a/optics/Fujifilm X-mount microscope adapter/index.html +++ /dev/null @@ -1,332 +0,0 @@ - - - - - - - -Fujifilm X-mount camera microscope adapter - - - - - - - - - - - -
-

Fujifilm X-mount camera microscope adapter

-
-

Table of Contents

- -
-
-

1. General

-
- -
-
-
-

2. Project description

-
-

-make.pnghh -

- -

-This 3D printed tube allows to connect microscope to camera that -utilizes Fujifilm X-mount interchangeable lens mount to make photos -and videos of things you see under the microscope. -

- -

-Cool property is that there are no glass lenses within this adapter, -and yet it works. It is based on observation that when camera body is -held at approximately 40 millimeters from microscope ocular, image is -projected and focused directly to camera matrix. Microscope itself -acts as a tiny projector. Focus is adjusted as is usual for -microscopes, by changing distance between sample and primary lens of -the microscope. -

- -

-To eliminate unwanted light passing directly through the case of -adapter and also to eliminate light reflections within adapter -interior walls it is wise to print this adapter from dark and matte -material. Alternatively, it can be painted black and dark tape can be -applied to exterior of adapter. -

- -

-Here are sample photos done using this device. -

- -

-Camera side: -Camera side.png -

- -

-Microscope side: -Microscope side.png -

- - - -

-Note: Fujifilm camera by default might refuse to make photos because -electrically it does not sense any attached lens. This can be fixed by -choosing "SHOOT WITHOT LENS" option within camera settings menu. -

- - -
-

shoot without lens.png -

-
- - -

-See also: -

- -
-
-
-
-

Author: Svjatoslav Agejenko

-

Created: 2026-02-02 Mon 22:50

-

Validate

-
- - diff --git a/optics/gyro for binoculars/index.html b/optics/gyro for binoculars/index.html deleted file mode 100644 index 35042ec..0000000 --- a/optics/gyro for binoculars/index.html +++ /dev/null @@ -1,446 +0,0 @@ - - - -Gyroscope stabilizer for binoculars - - - - - - - - - - - - - -
-

Gyroscope stabilizer for binoculars

- -
-

1 General

-
- -
-
- -
-

2 Project description

-
- -
-

make.png -

-
- -

-Problem with powerful binoculars is that they are almost unusable -without tripod. High zoom factor also amplifies hand shakes. -

- -

-Tripod is not convenient to carry around. Here is an attempt to design -portable gyro stabilizer that has camera tripod interface. Therefore -cameras and binoculars can be mounted. -

- - - -
-

make,%202.png -

-
- - -

-Old computer hard disk platters are used as rotating discs. They are -attached to following disk mount: -

- - -
-

disk%20mount%20body.png -

-
- -

-Download: -

- - -

-Disk platters are fixed to disk mount using glued tightly fitting top -ring: -

- - -
-

disk%20mount%20top%20ring.png -

-
- -

-Download: -

- - -

-Discs are rotated by electric motor. Motor is cooled by electric fan. -Motor and fan are powered by 12V that is generated by 3 voltage upstep -converters running in parallel. -

- - -
-

schematic.png -

-
- -

-Body: -make,%201.png -

- -

-FreeCAD model of the main body: -

- - -
-

main%20body,%201.png -

-
- - -
-

main%20body,%202.png -

-
- -

-Download: -

- - -

-Rotating discs are covered and protected by top cover: -

- - -
-

top%20cover.png -

-
- -

-Bottom part of the main body has cover: -

- - -
-

bottom%20cover.png -

-
- -

-Download: -

- - -

-Camera/binoculars can be mounted on dedicated holder that is screwed -on top of the cover: -

- - -
-

binocular%20mount.png -

-
- -

-Download: -

- - - -

-Result: -

- - -
-

make,%203.png -

-
- - -
-

make,%204.png -

-
-
-
- -
-

3 Conclusion

-
-

-Around half of the stabilizing effect already comes from extra weight -that is added to binoculars by device itself. Rotating platters -contribute also about as much. I had only 2 platters. I'm -contemplating finding more weight to rotate, or even try with old -CD/DVD disks. -

- -

-Unfortunately symmetry is not perfect and small high frequency -vibration is added because of that. -

-
-
-
- - - diff --git a/repository handling tools/commit and push b/repository handling tools/commit and push deleted file mode 100755 index a2bafd7..0000000 --- a/repository handling tools/commit and push +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -cd "${0%/*}"; if [ "$1" != "T" ]; then gnome-terminal -- "$0" T; exit; fi; - -cd .. - -git add --all -cola -git pull -git push - -echo "" -echo "Press ENTER to close this window." -read diff --git a/repository handling tools/open with IntelliJ IDEA b/repository handling tools/open with IntelliJ IDEA deleted file mode 100755 index de9bae5..0000000 --- a/repository handling tools/open with IntelliJ IDEA +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -# -# This is a helper bash script that starts IntelliJ with the current project. -# Script is written is such a way that you can simply click on it in file -# navigator to run it. -# -# -# Script assumes: -# -# + GNU operating system -# + IntelliJ is installed and commandline launcher "idea" is enabled. -# - -cd "${0%/*}" -cd .. - -setsid idea . &>/dev/null diff --git a/repository handling tools/update web site b/repository handling tools/update web site deleted file mode 100755 index 9943900..0000000 --- a/repository handling tools/update web site +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash - -# I use this script to update project website. - -cd "${0%/*}"; if [ "$1" != "T" ]; then gnome-terminal -- "$0" T; exit; fi; - -cd .. - -rsync -avz --delete -e 'ssh -p 10006' ./ \ - --exclude="tools/" \ - --exclude=".git/" \ - n0@www3.svjatoslav.eu:/mnt/big/projects/physical/ - - -echo "" -echo "Press ENTER to close this window." -read