<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Grey Panthers Savannah</title>
	<atom:link href="https://grey-panther.net/feed" rel="self" type="application/rss+xml" />
	<link>https://grey-panther.net</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Sun, 31 May 2026 06:50:55 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>
<site xmlns="com-wordpress:feed-additions:1">206299117</site>	<item>
		<title>Couple of thoughts about web crawling</title>
		<link>https://grey-panther.net/2026/05/couple-of-thoughts-about-web-crawling.html</link>
					<comments>https://grey-panther.net/2026/05/couple-of-thoughts-about-web-crawling.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Sun, 31 May 2026 06:45:16 +0000</pubDate>
				<category><![CDATA[crawler]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[web]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1490</guid>

					<description><![CDATA[These days crawling the web is becoming more and more difficult with websites trying to ensure that &#8220;only humans&#8221; access them. While there are some good arguments in favour of these efforts, I also have some good arguments: Anyway, here are some tips to help out in creating a crawler:]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image alignright size-large is-resized"><img fetchpriority="high" decoding="async" width="1024" height="710" src="https://grey-panther.net/content/uploads/2026/05/internet-1181587_1280-1024x710.png" alt="" class="wp-image-1491" style="aspect-ratio:1.4422649689165719;width:215px;height:auto" srcset="https://grey-panther.net/content/uploads/2026/05/internet-1181587_1280-1024x710.png 1024w, https://grey-panther.net/content/uploads/2026/05/internet-1181587_1280-300x208.png 300w, https://grey-panther.net/content/uploads/2026/05/internet-1181587_1280-768x533.png 768w, https://grey-panther.net/content/uploads/2026/05/internet-1181587_1280.png 1280w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">These days crawling the web<sup data-fn="35f83b3e-adfe-4814-9d3b-02d3b71ebbff" class="fn"><a href="#35f83b3e-adfe-4814-9d3b-02d3b71ebbff" id="35f83b3e-adfe-4814-9d3b-02d3b71ebbff-link">1</a></sup> is becoming more and more difficult with websites trying to ensure that &#8220;only humans&#8221; access them. While there are some good arguments in favour of these efforts, I also have some good arguments:</p>



<ul class="wp-block-list">
<li>Trying to crawl an auction website to feed the images / descriptions into an LLM to enhance it, because sellers don&#8217;t always provide the details I&#8217;m interested in</li>



<li>Trying to crawl the premium website of a recently deceased comic author because I&#8217;m not sure how much longer it will be around&#8230;</li>
</ul>



<p class="wp-block-paragraph">Anyway, here are some tips to help out in creating a crawler:</p>



<ul class="wp-block-list">
<li>Firs and most important: <strong>run this code under a separate user</strong>! These days with all the supply chain attacks, using some kind of separation is highly recommended. Whether it&#8217;s a separate user (<strong>without admin rights</strong>!) or even a dedicated virtual machine, run it isolated.</li>



<li>The idea is to run a full browser and programmatically navigate to the pages we want to crawl. This (a) helps avoid bot detection systems (b) if a CAPTCHA or similar obstacle is displayed, you can intervene and unblock the process and (c) you can help out with steps like logging in to the website.</li>



<li>What I used (<a href="https://github.com/gpanther/literate-umbrella">repo with example scripts</a>):
<ul class="wp-block-list">
<li>The latest Chrome controlled through the CDP (<a href="https://chromedevtools.github.io/devtools-protocol/">Chrome DevTools Protocol</a>). This seems the best way currently to &#8220;blend in&#8221;. Browser automation libraries like Playwright or Selenium come with their own pre-packaged browsers, but those are usually older versions and they get quickly flagged as &#8220;bots&#8221; by the automated systems.<br><br>To start Chrome with CDP, just run it on the command line with <code>--remote-debugging-port=9222 --user-data-dir=Chrome_Profile</code> The &#8220;user-data-dir&#8221; part is technically not needed, since we&#8217;re already running under a separate user (you did create a separate user, right!?), but it provides an extra level of isolation. It does mean that if you want to use the cookies for downloading videos for example, you would have to use an extension like &#8220;<a href="https://chromewebstore.google.com/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc">Get cookies.txt LOCALLY</a>&#8221; (Chrome extensions are <a href="https://the-privacy-commons-institute.github.io/chrome-mal-ids/">a notorious source for malware</a>, but you are running under a separate user and only providing minimal information to Chrome, right!?)</li>



<li>I used <a href="https://playwright.dev/">Playwright</a> in current project. It supports a couple of different programming languages, has support for connecting to Chrome through CDP and LLMs do a decent job of generating code that mostly does what you need it to do (I found knowledge of web technologies like Javascript and CSS &#8211; selectors for example &#8211; useful in guiding it in the right direction). I stuck to the synchronous API for this project, since my aim was a one-off archival, rather than a long running performant system. Also, &#8220;high performance&#8221; systems can easily overwhelm the site we are trying to archive!</li>



<li>I saved the website in three ways (see <a href="https://github.com/gpanther/literate-umbrella/blob/main/crawl_local_pages.py#L94">the code</a>):
<ul class="wp-block-list">
<li>As a dump of all the HTML content (obviously this doesn&#8217;t cover additional assets like style sheets, javascript or images). Also, it wouldn&#8217;t cover embedded iframes (which this website didn&#8217;t use)</li>



<li>As a &#8220;PDF print&#8221; which preserves the visual feel better (and also keeps text as searchable text)</li>



<li>All the requests proxied through <a href="https://www.mitmproxy.org/">mitmproxy</a></li>
</ul>
</li>



<li>Speaking of mitmproxy, here are a couple of things I&#8217;ve learned:
<ul class="wp-block-list">
<li>MacOS ships with Python3, but to get the latest version you need to update / install it from <a href="https://www.python.org/downloads/">Python.org</a> (makes sense in hindsight, but I was used to the GNU/Linux way of &#8220;just update all the packages which will get you the latest version of the software&#8221;)</li>



<li>Run mitmdump: <code>mitmdump --listen-host 127.0.0.1 -w dump.mitm -s strip_hsts.py</code> (the <a href="https://github.com/gpanther/literate-umbrella/blob/main/strip_hsts.py">source for strip_hsts.py</a> is in <a href="https://github.com/gpanther/literate-umbrella">the example repo</a>). This will save all traffic in the &#8220;dump.mitm&#8221; file.</li>



<li>To have Chrome use mitmproxy, use <a href="https://chromewebstore.google.com/detail/proxy-switchyomega-v3/hihblcmlaaademjlakdpicchbjnnnkbo">Proxy SwitchyOmega (V3)</a> extension (again, this extension seems alright for limited use in a sandbox environment). Other ways of setting up the proxy suggests setting it system wide &#8211; which could capture other, unintended traffic and would cut internet access when I stop the proxy.</li>



<li>To set up TLS (aka. SSL/HTTPS) capture &#8211; which we almost certainly need in todays world &#8211; start with the <a href="https://docs.mitmproxy.org/stable/concepts/certificates/">mitmproxy documentation</a>, but again, I would strongly recommend to only <a href="https://stackoverflow.com/questions/7580508/getting-chrome-to-accept-a-self-signed-localhost-certificate/15076602#15076602">install the certificates for this instance</a> instead of system-wide, as the documentation suggests (again, I want to only capture traffic from this instance, not system wide!)</li>



<li>You can convert the dump (which now contains all the data used to display the website &#8211; all the images, style sheets, javascript, etc<sup data-fn="0158daba-a788-4670-8cc1-e1e9d77c2c5a" class="fn"><a href="#0158daba-a788-4670-8cc1-e1e9d77c2c5a" id="0158daba-a788-4670-8cc1-e1e9d77c2c5a-link">2</a></sup>) from the mitmproxy specific format to the more generic <a href="https://en.wikipedia.org/wiki/HAR_%28file_format%29">HAR format</a> using the command <code>mitmdump -r dump.mitm --set hardump=dump-9.har</code> Note that this is somewhat inefficient in that it first needs to load the entire dump file to memory, so try splitting up the dumps into chunks not larger than 3/4 of your RAM in advance<sup data-fn="77ee763d-c963-4eb6-8e20-697128db02e8" class="fn"><a href="#77ee763d-c963-4eb6-8e20-697128db02e8" id="77ee763d-c963-4eb6-8e20-697128db02e8-link">3</a></sup>. Theoretically you can also use the <code>-q</code> command line parameter to avoid dumping all the URLs on the screen again, but I found that with that option the conversion process sometimes hangs ¯\(ツ)/¯. And finally, these are text based formats, so they benefit from compression with bzip2 / xz / 7zip.</li>
</ul>
</li>
</ul>
</li>
</ul>



<p class="wp-block-paragraph"></p>


<ol class="wp-block-footnotes"><li id="35f83b3e-adfe-4814-9d3b-02d3b71ebbff">Image from <a href="https://pixabay.com/de/illustrations/internet-global-erde-kommunikation-1181587/">pixabay</a> <a href="#35f83b3e-adfe-4814-9d3b-02d3b71ebbff-link" aria-label="Jump to footnote reference 1"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png" alt="↩" class="wp-smiley" style="height: 1em; max-height: 1em;" />︎</a></li><li id="0158daba-a788-4670-8cc1-e1e9d77c2c5a">This still might not be enough to later completely recreate the website, because the Javascript might do some client-side processing that involves the current time, random values (used for cache-busting for example) or other sources of randomness. That&#8217;s why I also archive the pages as PDFs. And, in my particular case, I am confident that I only need a subset of data from the captured pages which is not affected by these potential problems <a href="#0158daba-a788-4670-8cc1-e1e9d77c2c5a-link" aria-label="Jump to footnote reference 2"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png" alt="↩" class="wp-smiley" style="height: 1em; max-height: 1em;" />︎</a></li><li id="77ee763d-c963-4eb6-8e20-697128db02e8">I tried looking for solutions that would convert each request one by one (&#8220;streaming&#8221;) instead of loading the entire file in memory, but couldn&#8217;t find any <a href="#77ee763d-c963-4eb6-8e20-697128db02e8-link" aria-label="Jump to footnote reference 3"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png" alt="↩" class="wp-smiley" style="height: 1em; max-height: 1em;" />︎</a></li></ol>]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2026/05/couple-of-thoughts-about-web-crawling.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1490</post-id>	</item>
		<item>
		<title>Further USB-C (cable) trouble</title>
		<link>https://grey-panther.net/2026/04/further-usb-c-cable-trouble.html</link>
					<comments>https://grey-panther.net/2026/04/further-usb-c-cable-trouble.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Mon, 20 Apr 2026 17:22:48 +0000</pubDate>
				<category><![CDATA[usb]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1478</guid>

					<description><![CDATA[(kind-of a sequel to my post about USB-C fast &#8211; and not so fast &#8211; charging) I thought to myself: wouldn&#8217;t it be nice if I could glance at the device being charged and quickly understand if it&#8217;s fully charged or not? For example the MagSafe connectors have an LED which turns green once the [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">(kind-of a sequel to <a href="https://grey-panther.net/2025/12/usb-c-fast-charging-shenanigans.html" data-type="post" data-id="1467">my post about USB-C fast &#8211; and not so fast &#8211; charging</a>)</p>



<p class="wp-block-paragraph">I thought to myself: wouldn&#8217;t it be nice if I could glance at the device being charged and quickly understand if it&#8217;s fully charged or not? For example the MagSafe connectors have an LED which turns green once the charging is done.</p>



<p class="wp-block-paragraph">I came up with a couple (yes, literally two) of possible solutions for this:</p>



<ul class="wp-block-list">
<li>There are chargers which display the voltage / current / power being delivered (the <a href="https://pine64.com/product/pinepower-v2-165w-desktop-power-supply-eu-version/">Pinepower</a> for example, which I like because it takes a grounded input &#8211; hopefully it actually does something useful with it internally!)</li>



<li>Cables which show the power being delivered through them. It just so happens that the wast majority of the devices we want to charge use USB-C (thank you EU!) and for the remainder I&#8217;m fine with sticking an adapter on top the cable or using a separate cable which doesn&#8217;t have a charging indicator.</li>
</ul>



<p class="wp-block-paragraph">But even after deciding to go with the second solution, I wasn&#8217;t done, because manufacturers can surprise you in many ways. For example, here is one cable claiming to be passing through ~120W of power, when &#8211; in fact &#8211; it&#8217;s passing through about half of it:</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="768" src="https://grey-panther.net/content/uploads/2026/04/1774196664676-1024x768.jpg" alt="" class="wp-image-1479" srcset="https://grey-panther.net/content/uploads/2026/04/1774196664676-1024x768.jpg 1024w, https://grey-panther.net/content/uploads/2026/04/1774196664676-300x225.jpg 300w, https://grey-panther.net/content/uploads/2026/04/1774196664676-768x576.jpg 768w, https://grey-panther.net/content/uploads/2026/04/1774196664676-1536x1152.jpg 1536w, https://grey-panther.net/content/uploads/2026/04/1774196664676.jpg 2000w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">This is annoying, because it means that it can&#8217;t be used to answer the question: &#8220;can this charger deliver more power to my laptop or not?&#8221;.</p>



<p class="wp-block-paragraph">Even worse, here is the same cable still claiming to be delivering about 120W, while &#8211; in fact &#8211; the laptop is fully charged and drawing less than 1W of power:</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="614" src="https://grey-panther.net/content/uploads/2026/04/Screenshot-2026-04-19-at-14.18.40-1024x614.jpg" alt="" class="wp-image-1480" srcset="https://grey-panther.net/content/uploads/2026/04/Screenshot-2026-04-19-at-14.18.40-1024x614.jpg 1024w, https://grey-panther.net/content/uploads/2026/04/Screenshot-2026-04-19-at-14.18.40-300x180.jpg 300w, https://grey-panther.net/content/uploads/2026/04/Screenshot-2026-04-19-at-14.18.40-768x461.jpg 768w, https://grey-panther.net/content/uploads/2026/04/Screenshot-2026-04-19-at-14.18.40-1536x921.jpg 1536w, https://grey-panther.net/content/uploads/2026/04/Screenshot-2026-04-19-at-14.18.40.jpg 1714w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">Which makes it totally useless for the intended purpose (to ascertain if the device is still charging or not). Also, tip: the displays of these cables are frequently very flickery. Which isn&#8217;t an issue normally, since I don&#8217;t intend to look at it for more than a second. But they have such a low refresh rate that my phone camera captures &#8220;in between&#8221; images. However, I found that shooting a short video and then exporting a frame of it works for capturing a reasonable image.</p>



<p class="wp-block-paragraph">To end on a more positive note: I found two cables which, based on my testing, do provide more reliable measurement of the current flowing through them. Here are the links to them on AliExpress (although, given how frequently things change there, the links might be already obsolete&#8230;):</p>



<ul class="wp-block-list">
<li><a href="https://de.aliexpress.com/item/1005009813816216.html?gatewayAdapt=glo2deu">240W Type C Fast Charging Cable</a></li>



<li><a href="https://de.aliexpress.com/item/1005006883909886.html">PZOZ retractable usb c to type c</a></li>
</ul>



<p class="wp-block-paragraph">I even tested the cables by connecting my phone to my laptop and they do support some data transfer (didn&#8217;t test the speeds though). Here are the leads that are connected for the first one:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="768" src="https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140851501.NIGHT-edited-1024x768.jpeg" alt="" class="wp-image-1481" srcset="https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140851501.NIGHT-edited-1024x768.jpeg 1024w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140851501.NIGHT-edited-300x225.jpeg 300w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140851501.NIGHT-edited-768x576.jpeg 768w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140851501.NIGHT-edited-1536x1152.jpeg 1536w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140851501.NIGHT-edited-2048x1536.jpeg 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">And here are the ones for the PZOZ retractable one:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="768" src="https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140725828.NIGHT-edited-1024x768.jpeg" alt="" class="wp-image-1482" srcset="https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140725828.NIGHT-edited-1024x768.jpeg 1024w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140725828.NIGHT-edited-300x225.jpeg 300w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140725828.NIGHT-edited-768x576.jpeg 768w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140725828.NIGHT-edited-1536x1152.jpeg 1536w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140725828.NIGHT-edited-2048x1536.jpeg 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">For reference, here is snapshot from an &#8220;official&#8221; high speed/high power cable that came with a Dell (?) monitor:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="768" src="https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140645392.NIGHT-edited-1024x768.jpeg" alt="" class="wp-image-1483" srcset="https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140645392.NIGHT-edited-1024x768.jpeg 1024w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140645392.NIGHT-edited-300x225.jpeg 300w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140645392.NIGHT-edited-768x576.jpeg 768w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140645392.NIGHT-edited-1536x1152.jpeg 1536w, https://grey-panther.net/content/uploads/2026/04/PXL_20260419_140645392.NIGHT-edited-2048x1536.jpeg 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">Interestingly, although it has almost all pins connected, it&#8217;s missing two of them &#8211; which <em>are</em> connected in the first cable.</p>



<p class="wp-block-paragraph">But anyway, I&#8217;ve went on for long enough. May this be useful to you in picking the right cable for your needs!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2026/04/further-usb-c-cable-trouble.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1478</post-id>	</item>
		<item>
		<title>MacOS Privacy</title>
		<link>https://grey-panther.net/2026/01/macos-privacy.html</link>
					<comments>https://grey-panther.net/2026/01/macos-privacy.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Thu, 01 Jan 2026 16:11:52 +0000</pubDate>
				<category><![CDATA[firewalls]]></category>
		<category><![CDATA[macos]]></category>
		<category><![CDATA[security]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1470</guid>

					<description><![CDATA[On the one hand it has some pretty nice security features, decent hardware (although the effort for disassembling / fixing is higher than other laptops &#8211; and the insistence of soldering memory / storage to the mainboard is also annoying). On the other hand, when using LuLu (a very nice free and open source application [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image alignright size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="912" src="https://grey-panther.net/content/uploads/2026/01/Screenshot-2026-01-01-at-13.04.20-1024x912.png" alt="" class="wp-image-1471" style="width:254px;height:auto" srcset="https://grey-panther.net/content/uploads/2026/01/Screenshot-2026-01-01-at-13.04.20-1024x912.png 1024w, https://grey-panther.net/content/uploads/2026/01/Screenshot-2026-01-01-at-13.04.20-300x267.png 300w, https://grey-panther.net/content/uploads/2026/01/Screenshot-2026-01-01-at-13.04.20-768x684.png 768w, https://grey-panther.net/content/uploads/2026/01/Screenshot-2026-01-01-at-13.04.20-1536x1368.png 1536w, https://grey-panther.net/content/uploads/2026/01/Screenshot-2026-01-01-at-13.04.20-2048x1824.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">On the one hand it has some pretty nice security features, decent hardware (although the effort for disassembling / fixing is higher than other laptops &#8211; and the insistence of soldering memory / storage to the mainboard is also annoying).</p>



<p class="wp-block-paragraph">On the other hand, when using <a href="https://objective-see.org/products/lulu.html">LuLu</a> (a very nice <em>free and open source</em> application firewall for MacOS), one can see that there are <em>dozens</em> of Apple processes which want to talk to the network and it&#8217;s hard to understand the purpose of each :(. It&#8217;s safe to assume that Apple has <em>very</em> detailed telemetry about each of their devices which is out there.</p>



<p class="wp-block-paragraph">Well, at least there are the APIs to implement a firewall like LuLu.</p>



<p class="wp-block-paragraph">PS. Since this is an older machine, I had to install <a href="https://stclairsoft.com/AppTamer/index.html">AppTamer</a> and <a href="https://tbswitcher.rugarciap.com/">TB Switcher</a> to avoid overheating (yes, I also repasted the CPU/GPU), and, surprise surprise, one of the processes using the most CPU is &#8220;siriactionsd&#8221; <em>even though I disabled every option related to Siri I could find</em>. So, MacOS also has it&#8217;s own type of bloat, like Windows&#8230;</p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2026/01/macos-privacy.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1470</post-id>	</item>
		<item>
		<title>USB-C (fast charging) shenanigans</title>
		<link>https://grey-panther.net/2025/12/usb-c-fast-charging-shenanigans.html</link>
					<comments>https://grey-panther.net/2025/12/usb-c-fast-charging-shenanigans.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Wed, 31 Dec 2025 15:51:12 +0000</pubDate>
				<category><![CDATA[usb]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1467</guid>

					<description><![CDATA[It&#8217;s nice that more and more devices have USB-C interfaces. Yet, they are not without their particularities: Happy charging! Photo taken from Andreas G with permission.]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image alignright size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="803" src="https://grey-panther.net/content/uploads/2025/12/20230711_175859-1024x803.webp" alt="" class="wp-image-1468" style="aspect-ratio:1.275218238149784;width:242px;height:auto" srcset="https://grey-panther.net/content/uploads/2025/12/20230711_175859-1024x803.webp 1024w, https://grey-panther.net/content/uploads/2025/12/20230711_175859-300x235.webp 300w, https://grey-panther.net/content/uploads/2025/12/20230711_175859-768x602.webp 768w, https://grey-panther.net/content/uploads/2025/12/20230711_175859.webp 1531w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">It&#8217;s nice that more and more devices have USB-C interfaces. Yet, they are not without their particularities:</p>



<ul class="wp-block-list">
<li>Not all chargers / cables are the same. They support different volts and amps, so, to support the fastest charging possible for your device (phone / laptop / tablet), make sure to select the right one.
<ul class="wp-block-list">
<li>In particular I was surprised that my phone wasn&#8217;t &#8220;fast charging&#8221; with several different laptop chargers I tried. Turns out (with the help of an USB voltage analyzer) that they were delivering 2 Amps at 9V and my phone was expecting 3 Amps for fast charging. Those (Dell / HP) laptop chargers were plenty powerful to deliver the total watts at higher voltages, but I guess 9V just wasn&#8217;t their priority.</li>



<li>Quick tip if you don&#8217;t want to poke around with USB analyzers for finding a good charger: look for something that has &#8220;fast charger&#8221; in the name and then test it with your equipment (hopefully you can still send it back if it doesn&#8217;t work for you). I had good experiences with the <a href="https://shop.fairphone.com/shop/category/accessories-5?category=5&amp;filters=26-36-27-28-149-41_144_39_40_42">Fairphone chargers</a> and with the <a href="https://de.ugreen.com/collections/ladegerat">UGreen chargers</a> / <a href="https://de.ugreen.com/collections/usb-c-ladekabel">cables</a>.</li>
</ul>
</li>



<li>USB-C is seemingly symmetric (ie. you can plug it in both ways and &#8220;it works&#8221;). That said, some cheap products / cables only implement half of the connections, so if something is not working, try rotating the cable 180° (↺) and see if that works.
<ul class="wp-block-list">
<li>That said, dust/lint buildup can also be a problem, here is a page on the iFixit forums discussing <a href="https://www.ifixit.com/Answers/View/382427/Whats+the+best+way+to+clean+and+maintain+the+USB-C+port">how to clean the ports</a>.</li>
</ul>
</li>



<li>You can have &#8220;USB-C&#8221; products which don&#8217;t work / don&#8217;t charge unless a USB-A to C cable is used (so they don&#8217;t work with a USB-C laptop charger for example for a USB-C to C cable). What&#8217;s that about?
<ul class="wp-block-list">
<li>USB-A always delivers a small amount of current at 5V when something gets plugged in (and then the device / source can negotiate higher voltages / amps if supported). USB-C in turn doesn&#8217;t output anything though, unless <a href="https://hackaday.com/2023/01/04/all-about-usb-c-resistors-and-emarkers/">the consumer has some specific resistors</a>. The &#8220;USB-C&#8221; (and I put USB-C in quotes here, since they can&#8217;t really claim to be an USB-C equipment, since they don&#8217;t conform to the spec) gadgets which only work with the A-to-C cables are missing these resistors, most probably because the manufacturer wanted to save a couple of cents (I&#8217;ve only seen this on cheap devices). Not much that can be done here, other than using the A-to-C cables <sup data-fn="a705d18b-0872-43f0-ba52-f7a14dba197b" class="fn"><a href="#a705d18b-0872-43f0-ba52-f7a14dba197b" id="a705d18b-0872-43f0-ba52-f7a14dba197b-link">1</a></sup></li>
</ul>
</li>
</ul>



<p class="wp-block-paragraph">Happy charging!</p>



<p class="has-small-font-size wp-block-paragraph">Photo taken from <a href="https://www.printables.com/model/525135-thinkpad-usb-c-support?lang=es">Andreas G</a> with permission.</p>



<p class="wp-block-paragraph"></p>


<ol class="wp-block-footnotes"><li id="a705d18b-0872-43f0-ba52-f7a14dba197b">Yes, theoretically we could add the resistors if we have the time / equipment. Also, theoretically it would be easy to make some adapters / cables that have the resistors in them &#8211; I&#8217;m surprised that I haven&#8217;t seen anything like that. Although, I guess, they have a high risk of being used incorrectly, so maybe it&#8217;s better this way. <a href="#a705d18b-0872-43f0-ba52-f7a14dba197b-link" aria-label="Jump to footnote reference 1"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png" alt="↩" class="wp-smiley" style="height: 1em; max-height: 1em;" />︎</a></li></ol>]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2025/12/usb-c-fast-charging-shenanigans.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1467</post-id>	</item>
		<item>
		<title>Adding your Google Calendar entries to the iOS calendar</title>
		<link>https://grey-panther.net/2025/12/adding-your-google-calendar-entries-to-the-ios-calendar.html</link>
					<comments>https://grey-panther.net/2025/12/adding-your-google-calendar-entries-to-the-ios-calendar.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Sat, 13 Dec 2025 07:37:24 +0000</pubDate>
				<category><![CDATA[calendar]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google calendar]]></category>
		<category><![CDATA[ios]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1462</guid>

					<description><![CDATA[Noting this here in the hopes that it will be useful for somebody (or even me :)) in the future, since it took me longer than I expected to figure this out. Scenario: you have a Google account with entries in Google Calendar that you would like to see on your iOS device (iPad / [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image alignright size-large is-resized"><img loading="lazy" decoding="async" width="765" height="1024" src="https://grey-panther.net/content/uploads/2025/12/6507047605_c98af46867_o-765x1024.jpg" alt="" class="wp-image-1463" style="aspect-ratio:0.7470816836742429;width:332px;height:auto" srcset="https://grey-panther.net/content/uploads/2025/12/6507047605_c98af46867_o-765x1024.jpg 765w, https://grey-panther.net/content/uploads/2025/12/6507047605_c98af46867_o-224x300.jpg 224w, https://grey-panther.net/content/uploads/2025/12/6507047605_c98af46867_o-768x1028.jpg 768w, https://grey-panther.net/content/uploads/2025/12/6507047605_c98af46867_o-rotated.jpg 1065w" sizes="auto, (max-width: 765px) 100vw, 765px" /></figure>



<p class="wp-block-paragraph">Noting this here in the hopes that it will be useful for somebody (or even me :)) in the future, since it took me longer than I expected to figure this out.</p>



<p class="wp-block-paragraph">Scenario: you have a Google account with entries in Google Calendar that you would like to see on your iOS device (iPad / iPhone). Some (well, many) sites suggests that you need to install Google Calendar on the device. <em>This is in fact not necessary</em>!</p>



<p class="wp-block-paragraph">All you need to do is to link your Google account with the native iOS Calendar App by going to Settings > Apps > Calendar  and under &#8220;Accounts&#8221; add your Google Account. È voilà! That&#8217;s all folks! Hat tip to <a href="https://www.guidingtech.com/use-and-share-google-calendar-on-iphone/">this article</a> for reminding me about the procedure. </p>



<p class="wp-block-paragraph">PS. You <em>might</em> need to do an additional step for the shared calendars, as described by Scott Hanselmann <a href="https://www.hanselman.com/blog/how-to-make-shared-google-calendars-show-up-on-your-iphone-and-ipad-calendar">here</a>: go to <a href="https://www.google.com/calendar/syncselect">https://www.google.com/calendar/syncselect</a> and select the calendars you want to be sync-ed to the iOS devices. I&#8217;m not sure if this is needed, since I&#8217;ve done it several years ago and it was already enabled when I recently set up a new iOS device.</p>



<p class="wp-block-paragraph">PS. PS. There is now a new option for ad blocking for iOS devices that is well worth considering: <a href="https://grey-panther.net/2025/12/new-option-for-adblocking-on-ios.html">uBlock Origin Lite for iOS</a>.</p>



<p class="has-small-font-size wp-block-paragraph"><em>Image taken from <a href="https://www.flickr.com/photos/27927484@N00/6507047605/">John Davey&#8217;s Flickr album</a> with permission.</em></p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2025/12/adding-your-google-calendar-entries-to-the-ios-calendar.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1462</post-id>	</item>
		<item>
		<title>New option for adblocking on iOS</title>
		<link>https://grey-panther.net/2025/12/new-option-for-adblocking-on-ios.html</link>
					<comments>https://grey-panther.net/2025/12/new-option-for-adblocking-on-ios.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Fri, 12 Dec 2025 17:37:24 +0000</pubDate>
				<category><![CDATA[adblock]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[ublock]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1458</guid>

					<description><![CDATA[To start with: good ad blocking is the best one can do for their security / privacy online these days! For a long time adblocking on iOS devices (iPad / iPhone) was limited. One could use DNS based blocking (Pi-Hole or NextDNS are good options), but many advertisement circumvent these blocks. There was AdBlockPlus which [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image alignright size-full is-resized is-style-default"><img loading="lazy" decoding="async" width="1000" height="346" src="https://grey-panther.net/content/uploads/2025/12/dark_banner-93170110.png" alt="" class="wp-image-1459" style="aspect-ratio:2.890216464261231;width:452px;height:auto" srcset="https://grey-panther.net/content/uploads/2025/12/dark_banner-93170110.png 1000w, https://grey-panther.net/content/uploads/2025/12/dark_banner-93170110-300x104.png 300w, https://grey-panther.net/content/uploads/2025/12/dark_banner-93170110-768x266.png 768w" sizes="auto, (max-width: 1000px) 100vw, 1000px" /></figure>



<p class="wp-block-paragraph">To start with: good ad blocking is the best one can do for their security / privacy online these days!</p>



<p class="wp-block-paragraph">For a long time adblocking on iOS devices (iPad / iPhone) was limited. One could use DNS based blocking (<a href="https://pi-hole.net/">Pi-Hole</a> or <a href="https://nextdns.io/">NextDNS</a> are good options), but many advertisement circumvent these blocks. There was AdBlockPlus which worked well, however:</p>



<ul class="wp-block-list">
<li>I feel uneasy about the company behind it given <a href="https://en.wikipedia.org/wiki/Adblock_Plus#Ad_filtering,_ad_whitelisting,_and_%22acceptable_ads%22">past behaviour</a></li>



<li>Even today, when installing on iOS, ABP forces the user to activate their subscription for a 7 days free trial and then one has to dig through the settings to deactivate it &#8211; less one gets charged after the 7 days
<ul class="wp-block-list">
<li>For reference, the setting is under <em>Settings</em> &gt; <em>Apple Account</em> &gt; <em>Subscriptions</em></li>
</ul>
</li>



<li>Ad blocking extensions have <em>full access</em> to the content of the websites you&#8217;re visiting (by necessity &#8211; since they have to remove part of it). I&#8217;m not comfortable with giving this company access to everything I visit / type in to a browser.</li>
</ul>



<p class="wp-block-paragraph">There is the current gold standard in adblocking &#8211; <a href="https://ublockorigin.com/">UBlockOrigin</a> &#8211; however it&#8217;s not available for Firefox under iOS due to some dubious practices of Apple (Apple makes it so that you can&#8217;t really install alternative browsers on iOS &#8211; all the &#8220;alternatives&#8221; are actually reskins of Safari &#8211; so Firefox for iOS can&#8217;t support the Firefox extensions, less it gets banned from the AppStore &#8211; hopefully the EU will look into this anti-competitive practice and make it end soon).</p>



<p class="wp-block-paragraph">So, I was excited when I&#8217;ve learned that uBlock Origin Lite is available for iOS: <a href="https://apps.apple.com/us/app/ublock-origin-lite/id6745342698">https://apps.apple.com/us/app/ublock-origin-lite/id6745342698</a></p>



<p class="wp-block-paragraph">Some thoughts:</p>



<ul class="wp-block-list">
<li>first and foremost: it works well!</li>



<li>second: it&#8217;s free &#8211; although I would like to provide some support for the author, they don&#8217;t seem to be interested in it currently. So here I am at least spreading the news about it.</li>



<li>third: I trust this extension more since it has a long reputation of being trustworthy and <a href="https://github.com/uBlockOrigin/uBOL-home/tree/main/dist/safari/xcode">it&#8217;s F/LOSS</a>.
<ul class="wp-block-list">
<li>Sidenote: Apple doesn&#8217;t provide a way to verify that the source code published is the same as was used to build the binary in the AppStore like <a href="https://f-droid.org/docs/Reproducible_Builds/">f-droid</a> does for example &#8211; but maybe one day.</li>
</ul>
</li>



<li>what I also liked: theoretically it also has a minimal mode which doesn&#8217;t require access to the current website (see my concerns above about this kind of software). Unfortunately that doesn&#8217;t seem to work on the websites I frequent, but maybe it could be used in some situations where higher situations are needed.</li>
</ul>



<p class="wp-block-paragraph">And the setup:</p>



<ul class="wp-block-list">
<li>Install it from the AppStore</li>



<li>Open Settings. Navigate to Safari -&gt; Extensions</li>



<li>Turn it on (optionally for private windows also)</li>



<li>To avoid constant prompting, set the websites to &#8220;allow all&#8221; (the last option on the page)</li>
</ul>



<p class="wp-block-paragraph">Enjoy a safer, more private and faster browsing!</p>



<p class="wp-block-paragraph"><em>Update: also, don&#8217;t forget to disable the Advertising ID on your devices. <a href="https://www.eff.org/deeplinks/2022/05/how-disable-ad-id-tracking-ios-and-android-and-why-you-should-do-it-now">Here</a> is an EFF tutorial about how to.</em></p>
]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2025/12/new-option-for-adblocking-on-ios.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1458</post-id>	</item>
		<item>
		<title>Ripping BlueRays with Handbrake</title>
		<link>https://grey-panther.net/2025/11/ripping-bluerays-with-handbrake.html</link>
					<comments>https://grey-panther.net/2025/11/ripping-bluerays-with-handbrake.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Sun, 30 Nov 2025 14:27:19 +0000</pubDate>
				<category><![CDATA[blueray]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ripping]]></category>
		<category><![CDATA[video]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1452</guid>

					<description><![CDATA[(under GNU/Linux) Noting this here because all the information I could find on the Interned told me &#8220;use MakeMKV for it&#8221;. And while MakeMKV seems like a fine product, it&#8217;s a bit harder to install, since it doesn&#8217;t seem to be packaged for Debian at least. I still gave Handbrake a try (since it is [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">(under GNU/Linux)</p>



<p class="wp-block-paragraph">Noting this here because all the information I could find on the Interned told me &#8220;use <a href="https://www.makemkv.com/">MakeMKV</a> for it&#8221;. And while <a href="https://www.makemkv.com/">MakeMKV</a> seems like a fine product, it&#8217;s a bit harder to install, since it doesn&#8217;t seem to be packaged for Debian at least. I still gave <a href="https://handbrake.fr/">Handbrake</a> a try (since it <em>is</em> packaged for Debian) and lucky me, it turns out it <em>does</em> work with BlueRay disks.</p>



<p class="wp-block-paragraph">Now, the following instructions are a bit fuzzy, since I used a bit of a round-about way to achieve this, but here is what I did:</p>



<ul class="wp-block-list">
<li>Installed <a href="https://www.videolan.org/vlc/">VLC</a> (just from the repositories, nothing fancy)</li>



<li>Made sure that <em>it</em> could play BDs
<ul class="wp-block-list">
<li>It was giving the error &#8220;Missing AACS configuration file&#8221;. Luckily <a href="https://askubuntu.com/questions/1325752/missing-aacs-configuration-file-error-when-playing-blueray-movies/1382449#1382449">this askUbuntu answer</a> pointed me in the right direction (and worked for Debian 13)</li>
</ul>
</li>



<li>Once VLC could play back the BDs, turns out Handbrake could also read them!</li>
</ul>



<p class="wp-block-paragraph">Since this is short and sweet, here is an extra tip, courtesy of <a href="https://www.reddit.com/r/linuxquestions/comments/5z8gzb/is_there_an_mp4_chapter_editor_with_gui/">/r/linuxquestions</a>: how to update the chapter names after encoding? Turns out ffmpeg can do it (què surprise :)):</p>



<pre class="wp-block-code"><code>$ ffmpeg -i movie.mp4 -f ffmetadata movie.metadata.txt
# edit movie.metadata.txt
$ ffmpeg -i movie.mp4 -i movie.metadata.txt -c copy -map_chapters 1 movie_out.mp4</code></pre>



<p class="has-small-font-size wp-block-paragraph">(image taken from <a href="https://www.bluecinetech.co.uk/external-4k-blu-ray-drive/">bluecinetech.co.uk</a> with permission under a CC license)</p>
]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2025/11/ripping-bluerays-with-handbrake.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1452</post-id>	</item>
		<item>
		<title>Mainboard photos of HP t630</title>
		<link>https://grey-panther.net/2025/06/mainboard-photos-of-hp-t630.html</link>
					<comments>https://grey-panther.net/2025/06/mainboard-photos-of-hp-t630.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Sun, 22 Jun 2025 13:29:01 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1444</guid>

					<description><![CDATA[The wonderful parkytowers.me.uk website doesn&#8217;t detailed photos of both sides of the HP t630 thin client, so &#8211; in case this would be useful for anyone &#8211; here are some photos I&#8217;ve made: It&#8217;s a very useful little fanless (!) machine. The DisplayPort outputs even support HDMI-CEC when connected to a TV, out of the [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">The wonderful <a href="https://www.parkytowers.me.uk/thin/hp/t630/">parkytowers.me.uk website</a> doesn&#8217;t detailed photos of both sides of the HP t630 thin client, so &#8211; in case this would be useful for anyone &#8211; here are some photos I&#8217;ve made:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="839" src="https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-1-1024x839.jpeg" alt="" class="wp-image-1445" srcset="https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-1-1024x839.jpeg 1024w, https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-1-300x246.jpeg 300w, https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-1-768x629.jpeg 768w, https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-1-1536x1258.jpeg 1536w, https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-1-2048x1677.jpeg 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="795" src="https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-2-1024x795.jpeg" alt="" class="wp-image-1446" srcset="https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-2-1024x795.jpeg 1024w, https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-2-300x233.jpeg 300w, https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-2-768x596.jpeg 768w, https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-2-1536x1192.jpeg 1536w, https://grey-panther.net/content/uploads/2025/06/hpt630-mainboard-2-2048x1589.jpeg 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">It&#8217;s a very useful little fanless (!) machine. The DisplayPort outputs even support <a href="https://en.wikipedia.org/wiki/Consumer_Electronics_Control">HDMI-CEC</a> when connected to a TV, out of the box. Don&#8217;t forget to u<a href="https://notes.volution.ro/v1/2024/07/remarks/95c2d5a6/">pdate the TPM chips</a> if you get one of these nice machines.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2025/06/mainboard-photos-of-hp-t630.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1444</post-id>	</item>
		<item>
		<title>Debian booting on a Swiss train</title>
		<link>https://grey-panther.net/2025/06/debian-booting-on-a-swiss-train.html</link>
					<comments>https://grey-panther.net/2025/06/debian-booting-on-a-swiss-train.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Sat, 14 Jun 2025 17:57:38 +0000</pubDate>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[photo]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1440</guid>

					<description><![CDATA[It was fun to see 🙂]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="768" src="https://grey-panther.net/content/uploads/2025/06/PXL_20250614_081732963-1024x768.jpg" alt="" class="wp-image-1441" srcset="https://grey-panther.net/content/uploads/2025/06/PXL_20250614_081732963-1024x768.jpg 1024w, https://grey-panther.net/content/uploads/2025/06/PXL_20250614_081732963-300x225.jpg 300w, https://grey-panther.net/content/uploads/2025/06/PXL_20250614_081732963-768x576.jpg 768w, https://grey-panther.net/content/uploads/2025/06/PXL_20250614_081732963-1536x1152.jpg 1536w, https://grey-panther.net/content/uploads/2025/06/PXL_20250614_081732963-2048x1536.jpg 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">It was fun to see <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2025/06/debian-booting-on-a-swiss-train.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1440</post-id>	</item>
		<item>
		<title>Maximum memory for Lenovo Yoga 370</title>
		<link>https://grey-panther.net/2025/04/maximum-memory-for-lenovo-yoga-370.html</link>
					<comments>https://grey-panther.net/2025/04/maximum-memory-for-lenovo-yoga-370.html#respond</comments>
		
		<dc:creator><![CDATA[gpanther]]></dc:creator>
		<pubDate>Sun, 06 Apr 2025 12:13:20 +0000</pubDate>
				<category><![CDATA[hardware]]></category>
		<category><![CDATA[lenovo]]></category>
		<category><![CDATA[memory]]></category>
		<guid isPermaLink="false">https://grey-panther.net/?p=1433</guid>

					<description><![CDATA[(and the Asus Q170T) I&#8217;ve picked up a Lenovo Yoga 370 because (amongst other features) it has a removable / upgradable RAM slot (yes, two slots would have been even better :)). You can find various sources (including ChatGPT) claiming it to be 16GB, however, if we look up the processor for this particular model [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">(and the <a href="https://www.asus.com/motherboards-components/motherboards/business/q170t/techspec/">Asus Q170T</a>)</p>



<p class="wp-block-paragraph">I&#8217;ve picked up a Lenovo Yoga 370 because (amongst other features) it has a removable / upgradable RAM slot (yes, two slots would have been even better :)). You can find <a href="https://www.memorystock.com/memory/LenovoThinkPadYoga370.html" rel="nofollow">various</a> <a href="https://www.crucial.com/compatible-upgrade-for/lenovo/thinkpad-yoga-370-%28non-wwan-model%29" rel="nofollow">sources</a> (including ChatGPT) claiming it to be 16GB, however, if we look up the processor for this particular model on the <a href="https://www.intel.com/content/www/us/en/products/sku/95451/intel-core-i77500u-processor-4m-cache-up-to-3-50-ghz/specifications.html">Intel website</a>, we&#8217;ll see that it supports up to 32GB. And indeed, here is the laptop, happily passing <a href="https://memtest.org/">memtest86+</a> with a 32GB module (specifically <a href="https://www.digitec.ch/de/s1/product/crucial-laptop-memory-1-x-32gb-3200-mhz-ddr4-ram-so-dimm-ram-14174089">this one</a>):</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1024" height="689" src="https://grey-panther.net/content/uploads/2025/04/lenovo-yoga-370-memtest.png" alt="" class="wp-image-1434" srcset="https://grey-panther.net/content/uploads/2025/04/lenovo-yoga-370-memtest.png 1024w, https://grey-panther.net/content/uploads/2025/04/lenovo-yoga-370-memtest-300x202.png 300w, https://grey-panther.net/content/uploads/2025/04/lenovo-yoga-370-memtest-768x517.png 768w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">In the same vein, Asus <a href="https://www.asus.com/motherboards-components/motherboards/business/q170t/techspec/">claims</a> a maximum of 2x16GB for their Q170T, however the Intel website says 64GB should work with the i5 processor that&#8217;s in the machine, and indeed, here is a machine with 64GB happily passing <a href="https://memtest.org/">memtest86+</a>:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1024" height="487" src="https://grey-panther.net/content/uploads/2025/04/asus-q170t-memtest.png" alt="" class="wp-image-1435" srcset="https://grey-panther.net/content/uploads/2025/04/asus-q170t-memtest.png 1024w, https://grey-panther.net/content/uploads/2025/04/asus-q170t-memtest-300x143.png 300w, https://grey-panther.net/content/uploads/2025/04/asus-q170t-memtest-768x365.png 768w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">The lesson is: processor specs are more relevant than (in)official documentation when determining the maximum supported RAM size.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://grey-panther.net/2025/04/maximum-memory-for-lenovo-yoga-370.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1433</post-id>	</item>
	</channel>
</rss><!-- hyper cache 2026-05-31 17:07:08 -->