<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: danielszlaski</title><link>https://news.ycombinator.com/user?id=danielszlaski</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 23 Sep 2026 03:58:07 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=danielszlaski" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by danielszlaski in "Show HN: iOS widgets that read your solar inverter over local Modbus TCP"]]></title><description><![CDATA[
<p>Hi,
I built this to scratch my own itch: I have a Solis hybrid inverter with a 14.2 kWh battery at home, and the official monitoring app was too slow and clunky for the one thing I actually wanted: glancing at my phone to see "how full is the battery?" 
That felt like a widget problem, not an app problem.<p>The first version used the vendor's cloud API, which worked but bothered me: my inverter is 10 meters away, why is my data doing a round trip through a server in China? So I added local Modbus TCP support. The app now talks directly to the inverter's datalogger over the LAN, no cloud account needed, works when the internet is down, and updates are near-instant instead of the 5-minute cloud polling interval. (Still I'm limited by around 15 min iOS Widget polling)<p>Some things that turned out to be harder than expected:<p>Writing a Modbus TCP client in Swift with Network.framework. 
There isn't much prior art for Modbus on iOS, and dataloggers are picky — some drop connections if you poll too aggressively, some only accept one concurrent client.<p>Register maps. Every vendor (and sometimes every firmware revision) lays out registers differently power values as 32-bit across two registers, inconsistent signedness for import/export, scaling factors that differ between models. 
A lot of the work is a growing library of per-model register definitions. I've already received some good feedback from other than Solis users that tried that app. Once I'll get more valuable feedback I could extend list of supported Inverters. Although it's all depend if Modbus is available.<p>WidgetKit's refresh budget. iOS gives widgets a limited number of refreshes per day, which is fundamentally at odds with "live" energy data. I ended up with around 15 min invervals.<p>I've also added recently GameCenter support, so now everyone can compare their installations and how it works with other (fair algorithms are included so small good positioned installation beats bigger)<p>It's a paid app - but basic usage (no live widget support) are free.</p>
]]></description><pubDate>Fri, 10 Jul 2026 15:05:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=48860977</link><dc:creator>danielszlaski</dc:creator><comments>https://news.ycombinator.com/item?id=48860977</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48860977</guid></item><item><title><![CDATA[Show HN: iOS widgets that read your solar inverter over local Modbus TCP]]></title><description><![CDATA[
<p>Article URL: <a href="https://danielszlaski.com/glance-for-solis.html">https://danielszlaski.com/glance-for-solis.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48860904">https://news.ycombinator.com/item?id=48860904</a></p>
<p>Points: 3</p>
<p># Comments: 1</p>
]]></description><pubDate>Fri, 10 Jul 2026 14:59:20 +0000</pubDate><link>https://danielszlaski.com/glance-for-solis.html</link><dc:creator>danielszlaski</dc:creator><comments>https://news.ycombinator.com/item?id=48860904</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48860904</guid></item><item><title><![CDATA[New comment by danielszlaski in "Show HN: Made a little Artemis II tracker"]]></title><description><![CDATA[
<p>Very cool! Nice to put it as a side window for live status (which do not take too much attention compared to YT)</p>
]]></description><pubDate>Fri, 03 Apr 2026 14:42:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=47627222</link><dc:creator>danielszlaski</dc:creator><comments>https://news.ycombinator.com/item?id=47627222</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47627222</guid></item><item><title><![CDATA[New comment by danielszlaski in "Show HN: I built a frontpage for personal blogs"]]></title><description><![CDATA[
<p>Nice and clean.</p>
]]></description><pubDate>Fri, 03 Apr 2026 14:10:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=47626841</link><dc:creator>danielszlaski</dc:creator><comments>https://news.ycombinator.com/item?id=47626841</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47626841</guid></item><item><title><![CDATA[New comment by danielszlaski in "Show HN: CLI to order groceries via reverse-engineered REWE API (Haskell)"]]></title><description><![CDATA[
<p>I love the idea of a CLI for groceries. Do you have plans to support 're-order' scripts or meal-plan integration? I can imagine a workflow where a recipes.yaml file gets piped into your CLI to automatically fill the cart with everything needed for the week. Much faster than clicking through a mobile UI.</p>
]]></description><pubDate>Wed, 01 Apr 2026 09:03:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=47598526</link><dc:creator>danielszlaski</dc:creator><comments>https://news.ycombinator.com/item?id=47598526</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47598526</guid></item><item><title><![CDATA[New comment by danielszlaski in "Chess in SQL"]]></title><description><![CDATA[
<p>Nice. The trojan horse framing works well, once you see that any 2D state is just coordinates + a value, it’s hard to unsee it. Did you consider using this to enforce move legality via CHECK constraints or triggers, or did that get too hairy?</p>
]]></description><pubDate>Wed, 01 Apr 2026 08:12:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=47598220</link><dc:creator>danielszlaski</dc:creator><comments>https://news.ycombinator.com/item?id=47598220</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47598220</guid></item><item><title><![CDATA[New comment by danielszlaski in "Show HN: Termcraft – Terminal-first 2D sandbox survival in Rust"]]></title><description><![CDATA[
<p>Terminal Minecraft with brewing and dragon progression in Rust. Didn't expect to want this, but here we are. Bookmarked.</p>
]]></description><pubDate>Mon, 23 Mar 2026 13:12:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47489041</link><dc:creator>danielszlaski</dc:creator><comments>https://news.ycombinator.com/item?id=47489041</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47489041</guid></item><item><title><![CDATA[New comment by danielszlaski in "Don't post generated/AI-edited comments. HN is for conversation between humans"]]></title><description><![CDATA[
<p>Broken English from someone who actually shipped the thing beats polished prose from someone who just asked an LLM about it.</p>
]]></description><pubDate>Mon, 23 Mar 2026 13:08:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47488993</link><dc:creator>danielszlaski</dc:creator><comments>https://news.ycombinator.com/item?id=47488993</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47488993</guid></item></channel></rss>