<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Olex's stuff</title><link>https://olex.biz/</link><description>Recent content on Olex's stuff</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 13 Apr 2026 12:00:00 +0000</lastBuildDate><atom:link href="https://olex.biz/index.xml" rel="self" type="application/rss+xml"/><item><title>Balcony solar on the garden shed</title><link>https://olex.biz/2026/04/balcony-solar/</link><pubDate>Mon, 13 Apr 2026 12:00:00 +0000</pubDate><guid>https://olex.biz/2026/04/balcony-solar/</guid><description>&lt;p&gt;I&amp;rsquo;ve been thinking about getting some solar for a while. In Germany, &amp;ldquo;balcony solar&amp;rdquo; has gotten very popular in recent years - for a good reason: you can offset a ton of your power use with reasonably priced hardware, and grid power is expensive here, so a setup re-pays the investment after only a year or two in many cases. And within certain limitations it&amp;rsquo;s all DIY doable, with no permits or electrician work necessary, the inverters are plug-in via a normal Schuko wall outlet.&lt;/p&gt;</description></item><item><title>GitLab CI: Prevent cache reuploads without changes</title><link>https://olex.biz/2025/04/gitlab-ci-prevent-cache-reupload-without-changes/</link><pubDate>Thu, 03 Apr 2025 00:00:00 +0000</pubDate><guid>https://olex.biz/2025/04/gitlab-ci-prevent-cache-reupload-without-changes/</guid><description>&lt;p&gt;In several projects now, I had an issue with the way Gitlab CI cache policies are implemented. &lt;a href="https://docs.gitlab.com/ci/yaml/#cachepolicy" class="external-link" target="_blank" rel="noopener"&gt;The spec&lt;/a&gt; allows you to configure a given job to only &lt;code&gt;pull&lt;/code&gt;, only &lt;code&gt;push&lt;/code&gt;, or &lt;code&gt;pull-push&lt;/code&gt; a given cache. This makes it possible to configure some jobs in your pipeline to push downloaded or built data into a cache without pulling a previous cached state first (useful when the job always re-creates the cache contents from scratch), or to pull a cache without pushing it back (if the job only consumes the cache contents, but never modifies them). However, &lt;code&gt;pull-push&lt;/code&gt; jobs will &lt;strong&gt;always upload&lt;/strong&gt; the cache after execution, even if the cache contents have not changed.&lt;/p&gt;</description></item><item><title>2023 Tesla Model 3 - frunk light install</title><link>https://olex.biz/2023/02/model-3-frunk-light/</link><pubDate>Wed, 01 Feb 2023 21:00:00 +0000</pubDate><guid>https://olex.biz/2023/02/model-3-frunk-light/</guid><description>&lt;p&gt;Let there be light!&lt;/p&gt;
&lt;p&gt;&lt;img src="https://olex.biz/2023/02/model-3-frunk-light/IMG_2608.jpeg" alt="IMG_2526.jpeg"&gt;&lt;/p&gt;
&lt;p&gt;Had an issue some days ago, getting out the charger cable out of the frunk in the dark. No light source apart from the headlights, no chance to see inside the frunk whatsoever. So I decided to do something about it. One 22€ kit from AliExpress and 15 minutes of work later, see above.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Originally &lt;a href="https://forums.finalgear.com/threads/this-car-i-like-it-another-leviathans-tesla-model-3.3556533/#post-3634211" class="external-link" target="_blank" rel="noopener"&gt;posted on FinalGear Forums&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>This car, I like it. Another! - 2023 Tesla Model 3</title><link>https://olex.biz/2022/12/this-car-i-like-it-another/</link><pubDate>Tue, 27 Dec 2022 21:05:00 +0000</pubDate><guid>https://olex.biz/2022/12/this-car-i-like-it-another/</guid><description>&lt;p&gt;Not quite a deja vu, but close.&lt;/p&gt;
&lt;p&gt;The lease on my &lt;a href="https://olex.biz/tags/2019-model-3/" &gt;previous Model 3&lt;/a&gt; is slowly coming to a close, and knowing this, this summer I sat down and took a long look at the current EV market in search of a new daily. Annoyingly, I found nothing more interesting than another Model 3 - despite all its shortcomings, for me it&amp;rsquo;s still the best daily driver out there. Others are slowly getting there, stuff like the Polestar 2 or the EV6 are very close - but ultimately, nothing beats the 3 when looking at factors important to me. So another one it is, for the next 3-4 years until something more interesting finally comes along (looking at you, Polestar - make the 6 at the Model 3 Performance cost/performance level, and we&amp;rsquo;re in business).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://olex.biz/2022/12/this-car-i-like-it-another/front_view.jpeg" alt="Front view"&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Originally &lt;a href="https://forums.finalgear.com/threads/this-car-i-like-it-another-leviathans-tesla-model-3.3556533/#post-3632655" class="external-link" target="_blank" rel="noopener"&gt;posted on FinalGear Forums&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>Various 3D-printed home improvement items</title><link>https://olex.biz/2022/11/3d-printed-apartment-stuff/</link><pubDate>Mon, 14 Nov 2022 12:00:00 +0000</pubDate><guid>https://olex.biz/2022/11/3d-printed-apartment-stuff/</guid><description>&lt;p&gt;I&amp;rsquo;ve been doing mostly home improvement / decoration stuff in the new apartment with the printer recently.&lt;/p&gt;
&lt;p&gt;Some of the projects, probably missing a few smaller ones:&lt;/p&gt;
&lt;p&gt;



	




































 	
	

	
		&lt;script src="https://olex.biz/shortcode-gallery/jquery-3.6.1.min.js"&gt;&lt;/script&gt;
	
	
	

	&lt;script src="https://olex.biz/shortcode-gallery/swipebox/js/jquery.swipebox.min.js"&gt;&lt;/script&gt;
	&lt;link rel="stylesheet" href="https://olex.biz/shortcode-gallery/swipebox/css/swipebox.min.css"&gt;

	&lt;script src="https://olex.biz/shortcode-gallery/justified_gallery/jquery.justifiedGallery.min.js"&gt;&lt;/script&gt;
	&lt;link rel="stylesheet" href="https://olex.biz/shortcode-gallery/justified_gallery/justifiedGallery.min.css"/&gt;


&lt;style&gt;
	
		.jg-entry img {
			transition: transform .25s ease-in-out !important;
		}

		.jg-entry img:hover {
			transform: scale(1.1);
		}
	

	
&lt;/style&gt;





&lt;div id="gallery-c1c43258c2439afb00242db799068e8c-0-wrapper" class="gallery-wrapper"&gt;
&lt;div id="gallery-c1c43258c2439afb00242db799068e8c-0" class="justified-gallery"&gt;
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			
				
				
				
				
				
				
				
				
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery1/IMG_1864.jpeg" 
					class="galleryImg"
					
						

						

						
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery1/IMG_1864_hu_55c36e652b922ded.jpeg"
						

						
							
						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			
				
				
				
				
				
				
				
				
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery1/IMG_2280.jpeg" 
					class="galleryImg"
					
						

						

						
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery1/IMG_2280_hu_371187a71f92da5e.jpeg"
						

						
							
						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			
				
				
				
				
				
				
				
				
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery1/IMG_2282.jpeg" 
					class="galleryImg"
					
						

						

						
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery1/IMG_2282_hu_b0adddfa912d381.jpeg"
						

						
							
						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
&lt;/div&gt;
&lt;/div&gt;

&lt;script&gt;
	if (!jQuery) {
		alert("jquery is not loaded");
	}

	$( document ).ready(() =&gt; {
		const gallery = $("#gallery-c1c43258c2439afb00242db799068e8c-0");
		

		
		let swipeboxInstance = null;

		
		
		gallery.on('jg.complete', () =&gt; {
			

			swipeboxInstance = $('.galleryImg').swipebox(
				jQuery.extend({},
					{ }
				)
			);
		});

		
		gallery.justifiedGallery({
			rowHeight : 150 ,
			margins : 5 ,
			border : 0,
			randomize : false ,
			waitThumbnailsLoad : false,
			lastRow : "justify",
			captions : false,
			
			
		});

		
		
	});
&lt;/script&gt;

Housings for Ikea &lt;a href="https://www.thingiverse.com/thing:4730188" class="external-link" target="_blank" rel="noopener"&gt;Tradfri&lt;/a&gt; and &lt;a href="https://www.printables.com/model/267813-flush-wall-mount-plate-for-ikea-styrbar-e2001e2002" class="external-link" target="_blank" rel="noopener"&gt;Styrbar (designed by myself)&lt;/a&gt; Zigbee light switches.&lt;/p&gt;
&lt;p&gt;



	





































&lt;style&gt;
	
		.jg-entry img {
			transition: transform .25s ease-in-out !important;
		}

		.jg-entry img:hover {
			transform: scale(1.1);
		}
	

	
&lt;/style&gt;





&lt;div id="gallery-c1c43258c2439afb00242db799068e8c-1-wrapper" class="gallery-wrapper"&gt;
&lt;div id="gallery-c1c43258c2439afb00242db799068e8c-1" class="justified-gallery"&gt;
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			
				
				
				
				
				
				
				
				
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery2/IMG_2273.jpeg" 
					class="galleryImg"
					
						

						

						
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery2/IMG_2273_hu_df8bc46c497cf41f.jpeg"
						

						
							
						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			
				
				
				
				
				
				
				
				
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery2/IMG_2267.jpeg" 
					class="galleryImg"
					
						

						

						
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery2/IMG_2267_hu_9e261ea332cf6354.jpeg"
						

						
							
						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			
				
				
				
				
				
				
				
				
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery2/IMG_2263.jpeg" 
					class="galleryImg"
					
						

						

						
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery2/IMG_2263_hu_bebfcd7dce06af10.jpeg"
						

						
							
						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			
				
				
				
				
				
				
				
				
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery2/IMG_1892.jpeg" 
					class="galleryImg"
					
						

						

						
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2022/11/3d-printed-apartment-stuff/gallery2/IMG_1892_hu_ad241c02f31ea8cf.jpeg"
						

						
							
						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
&lt;/div&gt;
&lt;/div&gt;

&lt;script&gt;
	if (!jQuery) {
		alert("jquery is not loaded");
	}

	$( document ).ready(() =&gt; {
		const gallery = $("#gallery-c1c43258c2439afb00242db799068e8c-1");
		

		
		let swipeboxInstance = null;

		
		
		gallery.on('jg.complete', () =&gt; {
			

			swipeboxInstance = $('.galleryImg').swipebox(
				jQuery.extend({},
					{ }
				)
			);
		});

		
		gallery.justifiedGallery({
			rowHeight : 200 ,
			margins : 5 ,
			border : 0,
			randomize : false ,
			waitThumbnailsLoad : false,
			lastRow : "justify",
			captions : false,
			
			
		});

		
		
	});
&lt;/script&gt;

Ikea Skadis &lt;a href="https://www.printables.com/model/113641-skadis-tool-mount-print-and-snap-collection" class="external-link" target="_blank" rel="noopener"&gt;tool holders&lt;/a&gt; (+ &lt;a href="https://www.printables.com/model/277330-long-short-hook-for-skadis" class="external-link" target="_blank" rel="noopener"&gt;hooks&lt;/a&gt;, &lt;a href="https://www.printables.com/model/109009-ikea-skadis-hook-hacek-10mm-100mm" class="external-link" target="_blank" rel="noopener"&gt;more hooks&lt;/a&gt;, &lt;a href="https://www.printables.com/model/132481-kitchen-paper-roll-holder-ikea-skadis-compatible" class="external-link" target="_blank" rel="noopener"&gt;kitchen paper roll holder&lt;/a&gt;, &lt;a href="https://www.printables.com/model/41393-ikea-skadis-screwdriver-holder-drzak-na-sroubovaky" class="external-link" target="_blank" rel="noopener"&gt;screwdriver holder&lt;/a&gt;) for the workshop, and &lt;a href="https://www.printables.com/model/68029-oculus-quest-go-headset-mount-for-ikea-skadis-pegb" class="external-link" target="_blank" rel="noopener"&gt;Oculus&lt;/a&gt; / &lt;a href="https://www.printables.com/model/212510-ikea-skadis-xbox-one-controller-holder-with-lip" class="external-link" target="_blank" rel="noopener"&gt;gamepad&lt;/a&gt; holders for the computer desk.&lt;/p&gt;</description></item><item><title>When you don't want a Model Y - 2021 Ford Mustang Mach-E</title><link>https://olex.biz/2021/09/2021-ford-mustang-mach-e/</link><pubDate>Thu, 16 Sep 2021 00:00:00 +0000</pubDate><guid>https://olex.biz/2021/09/2021-ford-mustang-mach-e/</guid><description>&lt;p&gt;&lt;img src="https://olex.biz/2021/09/2021-ford-mustang-mach-e/IMG_1265.jpeg" alt="Mach-E at the dealership"&gt;&lt;/p&gt;
&lt;p&gt;Picked up mom&amp;rsquo;s new car yesterday. It&amp;rsquo;s an Extended Range RWD with the Tech Package 2 (all the things + pano glass roof) in an interesting color - I think it&amp;rsquo;s called Space White in the English-language markets; not really a white, but a very very light blue, that barely comes across on pictures, but looks quite good IRL in my opinion. I haven&amp;rsquo;t had the opportunity to drive it at all yet, but mom&amp;rsquo;s initial impressions seem to be very positive.&lt;/p&gt;
&lt;p&gt;For now, I&amp;rsquo;m quite busy with work and other stuff until the weekend, so here&amp;rsquo;s hoping the 100% charge it was delivered with will be enough for her until then :D And then on Saturday I&amp;rsquo;ll teach her how to actually charge the thing. Home charging is happening at their place, but will take another couple months, so it&amp;rsquo;s public charging only for now - shouldn&amp;rsquo;t be an issue though, with the fairly massive range and how little she actually drives.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Originally &lt;a href="https://forums.finalgear.com/threads/fords-mustang-mach-e.3555773/page-7#post-3609065" class="external-link" target="_blank" rel="noopener"&gt;posted on FinalGear Forums&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>Pipeline stoplight: making a GitLab CI pipeline status visible</title><link>https://olex.biz/2020/02/pipeline-stoplight-arduino/</link><pubDate>Tue, 04 Feb 2020 00:00:00 +0000</pubDate><guid>https://olex.biz/2020/02/pipeline-stoplight-arduino/</guid><description>&lt;p&gt;A question I often run into in our &lt;em&gt;trunk-based&lt;/em&gt; project at work is:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Can I push onto the current master, or is it broken again?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Yes, one should primarily concern oneself with the root cause of this question even existing
and attempt to fix it, but I&amp;rsquo;m afraid in this project it&amp;rsquo;s a lost cause. So instead, I&amp;rsquo;ve taken
to the next best thing I could think of: preventing myself and fellow team members from pushing
more changes on a red pipeline and making things &lt;em&gt;even worse™&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Introducing the &lt;strong&gt;Pipeline Stoplight&lt;/strong&gt;, or: &amp;ldquo;Don&amp;rsquo;t push unless this thing is green&amp;rdquo;:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://olex.biz/2020/02/pipeline-stoplight-arduino/IMG_0242-001.jpg" alt="Pipeline stoplight in its natural environment"&gt;&lt;/p&gt;
&lt;p&gt;Making it was a nice, fairly simple DIY exercise combining the following aspects:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;3D printing (the casing)&lt;/li&gt;
&lt;li&gt;Electronics (simple circuit design and soldering)&lt;/li&gt;
&lt;li&gt;Arduino programming (reading the pipeline status from the GitLab API via WiFi)&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Deploying applications to the Docker/NGINX server using GitLab CI</title><link>https://olex.biz/2020/01/deploying-to-docker-nginx-via-gitlab-ci/</link><pubDate>Sun, 12 Jan 2020 00:00:00 +0000</pubDate><guid>https://olex.biz/2020/01/deploying-to-docker-nginx-via-gitlab-ci/</guid><description>&lt;p&gt;In a &lt;a href="https://olex.biz/2019/09/hosting-with-docker-nginx-reverse-proxy-letsencrypt/" &gt;previous post&lt;/a&gt;, I talked about
setting up a Docker and NGINX-based server for running Docker-based web sites and applications. Now, I want to show
my process for continuously deploying my apps with a single &lt;code&gt;git push&lt;/code&gt;, leveraging the power of GitLab CI.&lt;/p&gt;</description></item><item><title>Hosting multiple sites or applications using Docker and NGINX reverse proxy with Letsencrypt SSL</title><link>https://olex.biz/2019/09/hosting-with-docker-nginx-reverse-proxy-letsencrypt/</link><pubDate>Mon, 09 Sep 2019 00:00:00 +0000</pubDate><guid>https://olex.biz/2019/09/hosting-with-docker-nginx-reverse-proxy-letsencrypt/</guid><description>&lt;p&gt;&lt;img src="https://olex.biz/2019/09/hosting-with-docker-nginx-reverse-proxy-letsencrypt/proxy-diagram-small.png" alt="small diagram"&gt;&lt;/p&gt;
&lt;p&gt;So I decided to rehost my homepage and a couple other web pages and apps on a new server. And since we&amp;rsquo;ve been using
Docker and Compose for some projects at work, I thought, hey, this could be a neat clean setup for multiple apps
hosted on a single machine without installing a ton of local dependencies and managing everything by hand. Here&amp;rsquo;s the
story of how this went down, what I learned along the way, and how you can build the same setup without doing the same
mistakes that I initially did.&lt;/p&gt;</description></item><item><title>3000km across Swiss and Italian Alps with the Model 3</title><link>https://olex.biz/2019/08/model-3-swisstaly-roadtrip/</link><pubDate>Wed, 14 Aug 2019 12:00:00 +0000</pubDate><guid>https://olex.biz/2019/08/model-3-swisstaly-roadtrip/</guid><description>&lt;p&gt;7* days, 3000 km, a great ton of fun and memories that will last: this was my Alpine roadtrip across Italy and Switzerland.&lt;/p&gt;
&lt;p&gt;



	




































 	
	

	
		&lt;script src="https://olex.biz/shortcode-gallery/jquery-3.6.1.min.js"&gt;&lt;/script&gt;
	
	
	

	&lt;script src="https://olex.biz/shortcode-gallery/swipebox/js/jquery.swipebox.min.js"&gt;&lt;/script&gt;
	&lt;link rel="stylesheet" href="https://olex.biz/shortcode-gallery/swipebox/css/swipebox.min.css"&gt;

	&lt;script src="https://olex.biz/shortcode-gallery/justified_gallery/jquery.justifiedGallery.min.js"&gt;&lt;/script&gt;
	&lt;link rel="stylesheet" href="https://olex.biz/shortcode-gallery/justified_gallery/justifiedGallery.min.css"/&gt;


&lt;style&gt;
	
		.jg-entry img {
			transition: transform .25s ease-in-out !important;
		}

		.jg-entry img:hover {
			transform: scale(1.1);
		}
	

	
&lt;/style&gt;





&lt;div id="gallery-d07eb1595137fa9ce912818811901ef6-0-wrapper" class="gallery-wrapper"&gt;
&lt;div id="gallery-d07eb1595137fa9ce912818811901ef6-0" class="justified-gallery"&gt;
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2019/08/model-3-swisstaly-roadtrip/pics/1/1%20-%20yOwMViS.jpg" 
					class="galleryImg"
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2019/08/model-3-swisstaly-roadtrip/pics/1/1%20-%20yOwMViS_hu_caab817d3c21c8f4.jpg"
						

						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
		
		
				
			
			
			
				
			

			
			


			
			
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2019/08/model-3-swisstaly-roadtrip/pics/1/2%20-%20gwBfw8V.png" 
					class="galleryImg"
					
					&gt;
					&lt;img			
						width="600" height="489"

						
							src="https://olex.biz/2019/08/model-3-swisstaly-roadtrip/pics/1/2%20-%20gwBfw8V_hu_209c458b1b627108.png"
						

						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
&lt;/div&gt;
&lt;/div&gt;

&lt;script&gt;
	if (!jQuery) {
		alert("jquery is not loaded");
	}

	$( document ).ready(() =&gt; {
		const gallery = $("#gallery-d07eb1595137fa9ce912818811901ef6-0");
		

		
		let swipeboxInstance = null;

		
		
		gallery.on('jg.complete', () =&gt; {
			

			swipeboxInstance = $('.galleryImg').swipebox(
				jQuery.extend({},
					{ }
				)
			);
		});

		
		gallery.justifiedGallery({
			rowHeight : 150 ,
			margins : 5 ,
			border : 0,
			randomize : false ,
			waitThumbnailsLoad : false,
			lastRow : "justify",
			captions : false,
			
			
		});

		
		
	});
&lt;/script&gt;

Our overall track was a little chaotic :) We did not touch any highways, the whole trip was on B-roads only, with dozens of mountain passes and other twisty roads. It all started in Reutte, Austria, just south of the German border where I arrived from&amp;hellip;&lt;/p&gt;</description></item><item><title>The wait was long enough: 2019 Tesla Model 3 Performance</title><link>https://olex.biz/2019/04/the-wait-was-long-enough-2019-tesla-model-3-performance/</link><pubDate>Fri, 05 Apr 2019 12:00:00 +0000</pubDate><guid>https://olex.biz/2019/04/the-wait-was-long-enough-2019-tesla-model-3-performance/</guid><description>&lt;p&gt;Three years ago, I stood in line outside a small store in downtown Frankfurt to place a reservation on a car, with a bunch more excited people:&lt;/p&gt;




	




































 	
	

	
		&lt;script src="https://olex.biz/shortcode-gallery/jquery-3.6.1.min.js"&gt;&lt;/script&gt;
	
	
	

	&lt;script src="https://olex.biz/shortcode-gallery/swipebox/js/jquery.swipebox.min.js"&gt;&lt;/script&gt;
	&lt;link rel="stylesheet" href="https://olex.biz/shortcode-gallery/swipebox/css/swipebox.min.css"&gt;

	&lt;script src="https://olex.biz/shortcode-gallery/justified_gallery/jquery.justifiedGallery.min.js"&gt;&lt;/script&gt;
	&lt;link rel="stylesheet" href="https://olex.biz/shortcode-gallery/justified_gallery/justifiedGallery.min.css"/&gt;


&lt;style&gt;
	
		.jg-entry img {
			transition: transform .25s ease-in-out !important;
		}

		.jg-entry img:hover {
			transform: scale(1.1);
		}
	

	
&lt;/style&gt;





&lt;div id="gallery-8be96646db5ae94da1fc2e6463f8450f-0-wrapper" class="gallery-wrapper"&gt;
&lt;div id="gallery-8be96646db5ae94da1fc2e6463f8450f-0" class="justified-gallery"&gt;
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2019/04/the-wait-was-long-enough-2019-tesla-model-3-performance/Ce3QFe6WwAAyxIS.jpg" 
					class="galleryImg"
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2019/04/the-wait-was-long-enough-2019-tesla-model-3-performance/Ce3QFe6WwAAyxIS_hu_d693dc2e2bb02578.jpg"
						

						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
&lt;/div&gt;
&lt;/div&gt;

&lt;script&gt;
	if (!jQuery) {
		alert("jquery is not loaded");
	}

	$( document ).ready(() =&gt; {
		const gallery = $("#gallery-8be96646db5ae94da1fc2e6463f8450f-0");
		

		
		let swipeboxInstance = null;

		
		
		gallery.on('jg.complete', () =&gt; {
			

			swipeboxInstance = $('.galleryImg').swipebox(
				jQuery.extend({},
					{ }
				)
			);
		});

		
		gallery.justifiedGallery({
			rowHeight : 150 ,
			margins : 5 ,
			border : 0,
			randomize : false ,
			waitThumbnailsLoad : false,
			lastRow : "left",
			captions : false,
			
			
		});

		
		
	});
&lt;/script&gt;

&lt;p&gt;We didn&amp;rsquo;t know what it would look like. Only a few key facts were given: the base version would cost 35k$, it would be a sedan slightly smaller than a Model S, and it would have a base range of 210 miles. We each put down a small-ish payment, and got a number in an online account.&lt;/p&gt;
&lt;p&gt;A long time later, the car could actually be configured and ordered in Germany. And as soon as I could, I put in an order through a leasing provider, to get one as a company car. One could not order the base version (and still cannot, except in the US) - but I didn&amp;rsquo;t intend to.&lt;/p&gt;
&lt;p&gt;Some three months later still, after a lot of radio silence, I got a text: &amp;ldquo;Your Model 3 is ready for delivery&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;And finally, a week after that text, this happened:&lt;/p&gt;




	





































&lt;style&gt;
	
		.jg-entry img {
			transition: transform .25s ease-in-out !important;
		}

		.jg-entry img:hover {
			transform: scale(1.1);
		}
	

	
&lt;/style&gt;





&lt;div id="gallery-8be96646db5ae94da1fc2e6463f8450f-1-wrapper" class="gallery-wrapper"&gt;
&lt;div id="gallery-8be96646db5ae94da1fc2e6463f8450f-1" class="justified-gallery"&gt;
	
		
		
				
			
			
			
				
			

			
			
				
					
				
			


			
			
			

			
			


			&lt;div&gt;
				
				
					
				
				&lt;a href="https://olex.biz/2019/04/the-wait-was-long-enough-2019-tesla-model-3-performance/2019-04-03_18.55.55.JPG" 
					class="galleryImg"
					
						

						

						
					
					&gt;
					&lt;img			
						width="600" height="450"

						
							src="https://olex.biz/2019/04/the-wait-was-long-enough-2019-tesla-model-3-performance/2019-04-03_18.55.55_hu_b7fdfb2bf4e3adbe.JPG"
						

						
							
						
					&gt;
				&lt;/a&gt;
			&lt;/div&gt;
		
	
&lt;/div&gt;
&lt;/div&gt;

&lt;script&gt;
	if (!jQuery) {
		alert("jquery is not loaded");
	}

	$( document ).ready(() =&gt; {
		const gallery = $("#gallery-8be96646db5ae94da1fc2e6463f8450f-1");
		

		
		let swipeboxInstance = null;

		
		
		gallery.on('jg.complete', () =&gt; {
			

			swipeboxInstance = $('.galleryImg').swipebox(
				jQuery.extend({},
					{ }
				)
			);
		});

		
		gallery.justifiedGallery({
			rowHeight : 150 ,
			margins : 5 ,
			border : 0,
			randomize : false ,
			waitThumbnailsLoad : false,
			lastRow : "justify",
			captions : false,
			
			
		});

		
		
	});
&lt;/script&gt;

&lt;blockquote&gt;
&lt;p&gt;Originally &lt;a href="https://forums.finalgear.com/threads/the-wait-was-long-enough-leviathans-tesla-model-3-performance.3555565/" class="external-link" target="_blank" rel="noopener"&gt;posted on FinalGear Forums&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>Lipo voltage monitoring with FrSky D-Receivers without sensors</title><link>https://olex.biz/2014/03/lipo-voltage-monitoring-with-frsky-d-receivers-without-sensors/</link><pubDate>Sun, 23 Mar 2014 23:13:00 +0000</pubDate><guid>https://olex.biz/2014/03/lipo-voltage-monitoring-with-frsky-d-receivers-without-sensors/</guid><description>&lt;p&gt;Here I&amp;rsquo;d like to share a simple Lipo voltage monitoring setup, that I&amp;rsquo;m using in my Bixler with an FrSky D8R-XP receiver. No sensors or other electronics are required - only a single servo cable and two resistors, total value of about 50c + some soldering.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://olex.biz/2014/03/lipo-voltage-monitoring-with-frsky-d-receivers-without-sensors/bixler.jpg" alt="Bixler 2 with a FrSky Taranis running the described voltage monitoring setup"&gt;&lt;/p&gt;
&lt;p&gt;The FrSky D-series receivers have a great feature: the analogue telemetry inputs, called A1 and A2. On some receivers both are freely accessible (D8R-XP, D8R-Plus), on others the A1 port is hardwired to the internal receiver voltage, but the A2 port is always accessible for external connections (D4R-II). On those ports, a voltage of up to 3.3V can be connected. It is measured internally (0-3.3V = 0-100%) and transmitted via the telemetry uplink to your transmitter. Using a simple voltage divider soldered from two resistors, one can monitor the main battery voltage of a model (or any other voltage).&lt;/p&gt;</description></item><item><title>About</title><link>https://olex.biz/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://olex.biz/about/</guid><description>&lt;div class="avatar"&gt;&lt;img src="https://olex.biz/avatar.jpg" alt="avatar"&gt;&lt;/div&gt;
&lt;p&gt;Hi! I&amp;rsquo;m Olex, a software engineer, drone builder and car enthusiast from Darmstadt, Germany.&lt;/p&gt;
&lt;p&gt;I share my projects, thoughts and experiences on this site. I hope you find something interesting here!&lt;/p&gt;
&lt;h2 id="other-places-i-share-my-stuff"&gt;
 Other places I share my stuff
 &lt;a class="heading-link" href="#other-places-i-share-my-stuff"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Social:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://x.com/olex" class="external-link" target="_blank" rel="noopener"&gt;https://x.com/olex&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://bsky.app/profile/olex.me" class="external-link" target="_blank" rel="noopener"&gt;https://bsky.app/profile/olex.me&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://instagram.com/olexs/" class="external-link" target="_blank" rel="noopener"&gt;https://instagram.com/olexs/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://youtube.com/@OlexandrS" class="external-link" target="_blank" rel="noopener"&gt;https://youtube.com/@OlexandrS&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Professional:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://linkedin.com/in/olexs" class="external-link" target="_blank" rel="noopener"&gt;https://linkedin.com/in/olexs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Coding:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/olexs" class="external-link" target="_blank" rel="noopener"&gt;https://github.com/olexs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;3D printing:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makerworld.com/en/@OlexS" class="external-link" target="_blank" rel="noopener"&gt;https://makerworld.com/en/@OlexS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.printables.com/social/121502-olex/models" class="external-link" target="_blank" rel="noopener"&gt;https://www.printables.com/social/121502-olex/models&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.thingiverse.com/olex/designs" class="external-link" target="_blank" rel="noopener"&gt;https://www.thingiverse.com/olex/designs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Cars and roadtrips:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://forums.finalgear.com/members/leviathan.20938/" class="external-link" target="_blank" rel="noopener"&gt;https://forums.finalgear.com/members/leviathan.20938/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Datenschutzerklärung</title><link>https://olex.biz/datenschutz/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://olex.biz/datenschutz/</guid><description>&lt;h2 id="1-datenschutz-auf-einen-blick"&gt;
 1. Datenschutz auf einen Blick
 &lt;a class="heading-link" href="#1-datenschutz-auf-einen-blick"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;h3 id="allgemeine-hinweise"&gt;
 Allgemeine Hinweise
 &lt;a class="heading-link" href="#allgemeine-hinweise"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Die folgenden Hinweise geben einen einfachen Überblick darüber, was mit Ihren personenbezogenen Daten passiert, wenn Sie diese Website besuchen. Personenbezogene Daten sind alle Daten, mit denen Sie persönlich identifiziert werden können. Ausführliche Informationen zum Thema Datenschutz entnehmen Sie unserer unter diesem Text aufgeführten Datenschutzerklärung.&lt;/p&gt;
&lt;h3 id="datenerfassung-auf-dieser-website"&gt;
 Datenerfassung auf dieser Website
 &lt;a class="heading-link" href="#datenerfassung-auf-dieser-website"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;h4 id="wer-ist-verantwortlich-für-die-datenerfassung-auf-dieser-website"&gt;
 Wer ist verantwortlich für die Datenerfassung auf dieser Website?
 &lt;a class="heading-link" href="#wer-ist-verantwortlich-f%c3%bcr-die-datenerfassung-auf-dieser-website"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h4&gt;
&lt;p&gt;Die Datenverarbeitung auf dieser Website erfolgt durch den Websitebetreiber. Dessen Kontaktdaten können Sie dem Abschnitt „Hinweis zur Verantwortlichen Stelle“ in dieser Datenschutzerklärung entnehmen.&lt;/p&gt;</description></item><item><title>Legal notice</title><link>https://olex.biz/impressum/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://olex.biz/impressum/</guid><description>&lt;h2 id="angaben-gemäß--5-tmg"&gt;
 Angaben gemäß § 5 TMG:
 &lt;a class="heading-link" href="#angaben-gem%c3%a4%c3%9f--5-tmg"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Olexandr Savchuk, Im Erlich 12, 64291 Darmstadt&lt;/p&gt;
&lt;p&gt;E-Mail: 	mail[at]olex.biz&lt;/p&gt;
&lt;h2 id="haftungsausschluss-disclaimer"&gt;
 Haftungsausschluss (Disclaimer)
 &lt;a class="heading-link" href="#haftungsausschluss-disclaimer"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;h3 id="haftung-für-inhalte"&gt;
 Haftung für Inhalte
 &lt;a class="heading-link" href="#haftung-f%c3%bcr-inhalte"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Als Diensteanbieter sind wir gemäß § 7 Abs.1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich. Nach §§ 8 bis 10 TMG sind wir als Diensteanbieter jedoch nicht verpflichtet, übermittelte oder gespeicherte fremde Informationen zu überwachen oder nach Umständen zu forschen, die auf eine rechtswidrige Tätigkeit hinweisen. Verpflichtungen zur Entfernung oder Sperrung der Nutzung von Informationen nach den allgemeinen Gesetzen bleiben hiervon unberührt. Eine diesbezügliche Haftung ist jedoch erst ab dem Zeitpunkt der Kenntnis einer konkreten Rechtsverletzung möglich. Bei Bekanntwerden von entsprechenden Rechtsverletzungen werden wir diese Inhalte umgehend entfernen.&lt;/p&gt;</description></item></channel></rss>