summaryrefslogtreecommitdiffstats
path: root/micro.pinapelz.moe/posts/index.xml
diff options
context:
space:
mode:
Diffstat (limited to 'micro.pinapelz.moe/posts/index.xml')
-rw-r--r--micro.pinapelz.moe/posts/index.xml51
1 files changed, 29 insertions, 22 deletions
diff --git a/micro.pinapelz.moe/posts/index.xml b/micro.pinapelz.moe/posts/index.xml
index d122e52..5ef4720 100644
--- a/micro.pinapelz.moe/posts/index.xml
+++ b/micro.pinapelz.moe/posts/index.xml
@@ -2,68 +2,75 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Posts on micro.pinapelz.moe</title>
- <link>http://localhost:1313/posts/</link>
+ <link>https://micro.pinapelz.moe/posts/</link>
<description>Recent content in Posts on micro.pinapelz.moe</description>
<generator>Hugo</generator>
<language>en-us</language>
<managingEditor>yukais@pinapelz.com (Pinapelz)</managingEditor>
<webMaster>yukais@pinapelz.com (Pinapelz)</webMaster>
- <lastBuildDate>Fri, 19 Dec 2025 22:15:50 -0800</lastBuildDate>
- <atom:link href="http://localhost:1313/posts/index.xml" rel="self" type="application/rss+xml" />
+ <lastBuildDate>Wed, 31 Dec 2025 22:03:51 -0800</lastBuildDate>
+ <atom:link href="https://micro.pinapelz.moe/posts/index.xml" rel="self" type="application/rss+xml" />
+ <item>
+ <title>DBOX Movie Seats</title>
+ <link>https://micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/</link>
+ <pubDate>Wed, 31 Dec 2025 22:03:51 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/</guid>
+ <description>&lt;p&gt;There&amp;rsquo;s a thing here in Canada where certain theaters have these special seats that rumble and move in motion with whats happening on screen.&lt;/p&gt;&#xA;&lt;p&gt;I recently saw the new Avatar (Fire and Ash) in one of these seats. It wasn&amp;rsquo;t a bad experience but given the markup, I don&amp;rsquo;t think its worth it:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;First it is fun (sometimes). For example when they were flying through the air, the seat would tilt in the motion of them flying. Or when there was an explosion/gunfire, the seat would rumble&lt;/li&gt;&#xA;&lt;li&gt;However, for me I think they overdid it at times, literately the seat would move and rumble for the smallest things. So it was kind of like a constant thing throughout the whole film. For me its a bit annoying&lt;/li&gt;&#xA;&lt;li&gt;For the $10-15 extra (I think I paid a bit more cause the movie was also in 3D), I&amp;rsquo;d much rather just go to a theater that has the big comfy recliner seats&lt;/li&gt;&#xA;&lt;li&gt;I think for the right movie (maybe something heavy on action or horror) this could be a solid purchase if its a movie you&amp;rsquo;re really looking forward to&lt;/li&gt;&#xA;&lt;li&gt;Or I also know that some people see movies multiple times, so maybe this can be a good option for a 2nd viewing?&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Generally, though&amp;hellip; I think I&amp;rsquo;ll live without them.&lt;/p&gt;</description>
+ </item>
<item>
<title>Playlog: FFXIV Dawntrail Patch 7.4 Thoughts (spoilers)</title>
- <link>http://localhost:1313/posts/2025-12-19-08-ffxiv-patch-7-4/</link>
+ <link>https://micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/</link>
<pubDate>Fri, 19 Dec 2025 22:15:50 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
- <guid>http://localhost:1313/posts/2025-12-19-08-ffxiv-patch-7-4/</guid>
- <description>&lt;p&gt;&lt;em&gt;This is primarily focused on the content of the patch, not so much the features they&amp;rsquo;ve added.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;story&#34;&gt;Story&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Mistwake Dungeon was a good difficulty. Although I&amp;rsquo;m not a fan of the electricity star AOEs, very hard to read for no apparent reason. Please just stick with the old one.&lt;/li&gt;&#xA;&lt;li&gt;Cutscene quality def. got better. As in animations and uniqueness.&lt;/li&gt;&#xA;&lt;li&gt;Love the look and feel (Treno). There&amp;rsquo;s a ton of good spots for &amp;ldquo;gpose-ing&amp;rdquo;. Music is nice too.&lt;/li&gt;&#xA;&lt;li&gt;Seriously Krile? You parents were the ones who dropped you into the Source. I don&amp;rsquo;t think they&amp;rsquo;d care if you wanted to stay in the Source (just make up your mind) -&amp;gt; well glad that got sorted out&lt;/li&gt;&#xA;&lt;li&gt;&amp;ldquo;Hell on Rails&amp;rdquo; Trial (Doomtrain) is very nicely designed. Its got some nice unique mechanics, the &amp;ldquo;sucking&amp;rdquo; mechanic definetly trips you up the first time because the distance to move back + timing has been tuned so that you need to pre-position for it.&lt;/li&gt;&#xA;&lt;li&gt;The transition from inside the engine to outside was really cool!!! This is probably one of my top normal trials now.&lt;/li&gt;&#xA;&lt;li&gt;The instance battle was well done too. The roleplaying part was on point, and when it was finally time to fight a real boss you get to play as yourelf (I think this is the best flow). Love the idea using the spriggan to avoid Behemoth&amp;rsquo;s meteor.&lt;/li&gt;&#xA;&lt;li&gt;Cool so we just get to keep the key. If this were any bit realistic, we&amp;rsquo;ve surely learned that no one this powerful should be allowed to keep the key on themsleves 24/7. Because surely the WoL being the most powerful being will never run rogue with a interdimensional travel capable tool. Then again, seeing how stuff gets stolen all the time in the story&amp;hellip; Well I guess it can go either way.&lt;/li&gt;&#xA;&lt;li&gt;I&amp;rsquo;m guessing this key is gonna be how the writers justify being able to travel to new worlds for post-Zodiark/Hydaelyn story. Its fine I guess, but a little disappointing it isn&amp;rsquo;t something more unique.&lt;/li&gt;&#xA;&lt;li&gt;And what do you know. Ascians. I hope we get something unqiue for 8.0&amp;hellip; I guess thats fine but please lets not have it just be SHB all over again.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h1 id=&#34;raid&#34;&gt;Raid&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&amp;ldquo;Feral Fandom&amp;rdquo; -&amp;gt; Yep thats FF14 NA playerbase for you.&lt;/li&gt;&#xA;&lt;li&gt;Heavyweight 1 (Vamp Fatale) Raid was cool and unique, but a bit too flashy imo. That Half Moon is needlessly large, wish we&amp;rsquo;d stop with mechanics that are designed to trick people even when read correctly.&lt;/li&gt;&#xA;&lt;li&gt;Heavyweight 2 (Xtremes) I take it back, this is the one with the blinding effects MY EYES. Fire and water one after another. This is a pretty hard normal fight actually (the first time you run it blind). Really punishing for bad AOE placement positions since you can effectively be cut off from the team.&lt;/li&gt;&#xA;&lt;li&gt;Holy wow these cutscenes are in serious need of voice acting. Its a good story but so dry and awkward without it.&lt;/li&gt;&#xA;&lt;li&gt;Heavyweight 3 (Tyrant). Really? Behemoth again, double dipping from the instance battle. There&amp;rsquo;s so many other cool FF monsters. I like the arena, it fits the guy well, all about history of the Arcadion/tradition. Fight is underwhelming and too easy imo, apart from 1 single trick mechanic that can cause a wipe&amp;hellip;&lt;/li&gt;&#xA;&lt;li&gt;Heavyweight 4 (Lindwurm). EVERYTHING BURNS. This fight was honestly too easy, zero deaths everything can be read. 2nd phase was underhelming.&lt;/li&gt;&#xA;&lt;li&gt;Overall the story here while not as in depth and relevant to the story as Endwalker raids, still had a nice little twist at the end I def did not expect. Enjoyed it!&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h1 id=&#34;misc&#34;&gt;Misc&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The new Frontline map is &amp;ldquo;dangerous&amp;rdquo;. Overall the new capturing point system is far better than a non-interruptable interact like in Onsal Hakir. The snowman and aurora events are also good, and I think they come in right when they&amp;rsquo;re needed too (to spice things up/allow for a turning point).&lt;/li&gt;&#xA;&lt;li&gt;The map design however is far too complex, all these bridges and everywhere and invisible walls. It does add a lot of chokepoints but also makes it difficult to navigate from point A -&amp;gt; B (but partially I guess this is done cause the map does feel smaller than Onsal).&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&#xA;&#xA;&lt;a href=&#34;http://localhost:1313//tags/ffxiv&#34; class=&#34;p-category&#34;&gt;#ffxiv&lt;/a&gt;</description>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/</guid>
+ <description>&lt;p&gt;&lt;em&gt;This is primarily focused on the content of the patch, not so much the features they&amp;rsquo;ve added.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;story&#34;&gt;Story&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Mistwake Dungeon was a good difficulty. Although I&amp;rsquo;m not a fan of the electricity star AOEs, very hard to read for no apparent reason. Please just stick with the old one.&lt;/li&gt;&#xA;&lt;li&gt;Cutscene quality def. got better. As in animations and uniqueness.&lt;/li&gt;&#xA;&lt;li&gt;Love the look and feel (Treno). There&amp;rsquo;s a ton of good spots for &amp;ldquo;gpose-ing&amp;rdquo;. Music is nice too.&lt;/li&gt;&#xA;&lt;li&gt;Seriously Krile? You parents were the ones who dropped you into the Source. I don&amp;rsquo;t think they&amp;rsquo;d care if you wanted to stay in the Source (just make up your mind) -&amp;gt; well glad that got sorted out&lt;/li&gt;&#xA;&lt;li&gt;&amp;ldquo;Hell on Rails&amp;rdquo; Trial (Doomtrain) is very nicely designed. Its got some nice unique mechanics, the &amp;ldquo;sucking&amp;rdquo; mechanic definetly trips you up the first time because the distance to move back + timing has been tuned so that you need to pre-position for it.&lt;/li&gt;&#xA;&lt;li&gt;The transition from inside the engine to outside was really cool!!! This is probably one of my top normal trials now.&lt;/li&gt;&#xA;&lt;li&gt;The instance battle was well done too. The roleplaying part was on point, and when it was finally time to fight a real boss you get to play as yourelf (I think this is the best flow). Love the idea using the spriggan to avoid Behemoth&amp;rsquo;s meteor.&lt;/li&gt;&#xA;&lt;li&gt;Cool so we just get to keep the key. If this were any bit realistic, we&amp;rsquo;ve surely learned that no one this powerful should be allowed to keep the key on themsleves 24/7. Because surely the WoL being the most powerful being will never run rogue with a interdimensional travel capable tool. Then again, seeing how stuff gets stolen all the time in the story&amp;hellip; Well I guess it can go either way.&lt;/li&gt;&#xA;&lt;li&gt;I&amp;rsquo;m guessing this key is gonna be how the writers justify being able to travel to new worlds for post-Zodiark/Hydaelyn story. Its fine I guess, but a little disappointing it isn&amp;rsquo;t something more unique.&lt;/li&gt;&#xA;&lt;li&gt;And what do you know. Ascians. I hope we get something unqiue for 8.0&amp;hellip; I guess thats fine but please lets not have it just be SHB all over again.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h1 id=&#34;raid&#34;&gt;Raid&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&amp;ldquo;Feral Fandom&amp;rdquo; -&amp;gt; Yep thats FF14 NA playerbase for you.&lt;/li&gt;&#xA;&lt;li&gt;Heavyweight 1 (Vamp Fatale) Raid was cool and unique, but a bit too flashy imo. That Half Moon is needlessly large, wish we&amp;rsquo;d stop with mechanics that are designed to trick people even when read correctly.&lt;/li&gt;&#xA;&lt;li&gt;Heavyweight 2 (Xtremes) I take it back, this is the one with the blinding effects MY EYES. Fire and water one after another. This is a pretty hard normal fight actually (the first time you run it blind). Really punishing for bad AOE placement positions since you can effectively be cut off from the team.&lt;/li&gt;&#xA;&lt;li&gt;Holy wow these cutscenes are in serious need of voice acting. Its a good story but so dry and awkward without it.&lt;/li&gt;&#xA;&lt;li&gt;Heavyweight 3 (Tyrant). Really? Behemoth again, double dipping from the instance battle. There&amp;rsquo;s so many other cool FF monsters. I like the arena, it fits the guy well, all about history of the Arcadion/tradition. Fight is underwhelming and too easy imo, apart from 1 single trick mechanic that can cause a wipe&amp;hellip;&lt;/li&gt;&#xA;&lt;li&gt;Heavyweight 4 (Lindwurm). EVERYTHING BURNS. This fight was honestly too easy, zero deaths everything can be read. 2nd phase was underhelming.&lt;/li&gt;&#xA;&lt;li&gt;Overall the story here while not as in depth and relevant to the story as Endwalker raids, still had a nice little twist at the end I def did not expect. Enjoyed it!&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h1 id=&#34;misc&#34;&gt;Misc&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The new Frontline map is &amp;ldquo;dangerous&amp;rdquo;. Overall the new capturing point system is far better than a non-interruptable interact like in Onsal Hakir. The snowman and aurora events are also good, and I think they come in right when they&amp;rsquo;re needed too (to spice things up/allow for a turning point).&lt;/li&gt;&#xA;&lt;li&gt;The map design however is far too complex, all these bridges and everywhere and invisible walls. It does add a lot of chokepoints but also makes it difficult to navigate from point A -&amp;gt; B (but partially I guess this is done cause the map does feel smaller than Onsal).&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&#xA;&#xA;&lt;a href=&#34;https://micro.pinapelz.moe//tags/ffxiv&#34; class=&#34;p-category&#34;&gt;#ffxiv&lt;/a&gt;</description>
</item>
<item>
<title>Arcade Monsters</title>
- <link>http://localhost:1313/posts/2025-12-18-07-arcade-monsters-sd/</link>
+ <link>https://micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/</link>
<pubDate>Thu, 18 Dec 2025 21:38:23 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
- <guid>http://localhost:1313/posts/2025-12-18-07-arcade-monsters-sd/</guid>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/</guid>
<description>&lt;p&gt;If you live in Socal and are also into arcade gaming (both retro and modern), one of the great weekend day-trips I&amp;rsquo;ve found is taking the Pacific Surfliner train down to San Diego.&lt;/p&gt;&#xA;&lt;h1 id=&#34;getting-there&#34;&gt;Getting There&lt;/h1&gt;&#xA;&lt;p&gt;There are a number of departures in the morning, and while not as fast as a car when there&amp;rsquo;s no traffic, you can save your energy and do other stuff on the train. The timetable also works nicely since you can pretty much get there around opening if you want to beat the crowds.&lt;/p&gt;</description>
</item>
<item>
<title>First MXM 18 Cleared!</title>
- <link>http://localhost:1313/posts/2025-12-06-first-sdvx-18/</link>
+ <link>https://micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/</link>
<pubDate>Sat, 06 Dec 2025 22:33:23 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
- <guid>http://localhost:1313/posts/2025-12-06-first-sdvx-18/</guid>
- <description>&lt;p&gt;Cleared my first 18 difficulty chart in &#xA;&#xA;&lt;a href=&#34;http://localhost:1313//tags/sdvx&#34; class=&#34;p-category&#34;&gt;#sdvx&lt;/a&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;Albeit its not a very difficult one, but I think I&amp;rsquo;m finally starting to chip away at the 17-18 difficulty wall.&#xA;&lt;figure&gt;&lt;img src=&#34;http://localhost:1313/posts/2025-12-06-first-sdvx-18/18.webp&#34;&#xA; alt=&#34;Sound Voltex Enchant 6 Clear&#34; width=&#34;500&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;</description>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/</guid>
+ <description>&lt;p&gt;Cleared my first 18 difficulty chart in &#xA;&#xA;&lt;a href=&#34;https://micro.pinapelz.moe//tags/sdvx&#34; class=&#34;p-category&#34;&gt;#sdvx&lt;/a&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;Albeit its not a very difficult one, but I think I&amp;rsquo;m finally starting to chip away at the 17-18 difficulty wall.&#xA;&lt;figure&gt;&lt;img src=&#34;https://micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/18.webp&#34;&#xA; alt=&#34;Sound Voltex Enchant 6 Clear&#34; width=&#34;500&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;</description>
</item>
<item>
<title>Enable HID Mode on Nintendo Pro Controller 2</title>
- <link>http://localhost:1313/posts/2025-12-04-procon2-hid-tool/</link>
+ <link>https://micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/</link>
<pubDate>Thu, 04 Dec 2025 23:19:29 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
- <guid>http://localhost:1313/posts/2025-12-04-procon2-hid-tool/</guid>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/</guid>
<description>&lt;p&gt;Switch 2 Pro Controller is very comfy in my hands, but unfortunately it didn&amp;rsquo;t work out of box on PC (Linux) for me like it&amp;rsquo;s predacessor. Until there&amp;rsquo;s actual better driver support for this thing in the kernel (or Valve does something), here&amp;rsquo;s a hacky Python script to initialize HID-mode on the controller&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# I only tested this script on Linux w/ Steam but in theory it shoud work on Windows?&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;import&lt;/span&gt; usb.core &lt;span style=&#34;color:#75715e&#34;&gt;# install pyusb first: pip install pyusb&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;import&lt;/span&gt; usb.util&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;import&lt;/span&gt; time&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;import&lt;/span&gt; sys&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;VENDOR_ID &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0x057E&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;PRODUCT_IDS &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0x2066&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Joy-Con (L)&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0x2067&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Joy-Con (R)&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0x2069&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Pro Controller&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0x2073&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;GCN Controller&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;USB_INTERFACE_NUMBER &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;INIT_COMMAND_0x03 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x03&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x0d&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x08&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;UNKNOWN_COMMAND_0x07 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x07&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;UNKNOWN_COMMAND_0x16 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x16&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;REQUEST_CONTROLLER_MAC &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x15&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x0e&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x02&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;LTK_REQUEST &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x15&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x02&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x11&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xFF&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;UNKNOWN_COMMAND_0x15_ARG_0x03 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x15&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x03&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;UNKNOWN_COMMAND_0x09 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x09&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x07&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x08&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;IMU_COMMAND_0x02 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x0c&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x02&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x04&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x27&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;OUT_UNKNOWN_COMMAND_0x11 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x11&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x03&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;UNKNOWN_COMMAND_0x0A &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x0a&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x08&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x14&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xff&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xff&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xff&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xff&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xff&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xff&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xff&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0xff&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x35&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x46&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;IMU_COMMAND_0x04 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x0c&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x04&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x04&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x27&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ENABLE_HAPTICS &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x03&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x0a&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x04&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x09&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;OUT_UNKNOWN_COMMAND_0x10 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x10&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;OUT_UNKNOWN_COMMAND_0x01 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x0c&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;OUT_UNKNOWN_COMMAND_0x03 &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x03&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x01&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;OUT_UNKNOWN_COMMAND_0x0A_ALT &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bytes([&lt;span style=&#34;color:#ae81ff&#34;&gt;0x0a&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x02&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x04&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x03&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;def&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;send_usb_data&lt;/span&gt;(ep_out, ep_in, data, description&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;):&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;try&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; ep_out&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;write(data)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; time&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;sleep(&lt;span style=&#34;color:#ae81ff&#34;&gt;0.01&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;try&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; response &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; ep_in&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;read(&lt;span style=&#34;color:#ae81ff&#34;&gt;32&lt;/span&gt;, timeout&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;100&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; hex_resp &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34; &amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;join([&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;x&lt;span style=&#34;color:#e6db74&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;02x&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;for&lt;/span&gt; x &lt;span style=&#34;color:#f92672&#34;&gt;in&lt;/span&gt; response])&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;[&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;description&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;] Response: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;hex_resp&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;except&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;core&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;USBError &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; e:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; e&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;errno &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;110&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;[&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;description&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;] No response (Timeout)&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;[&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;description&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;] Read Error: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;e&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;except&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;core&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;USBError &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; e:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;[&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;description&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;] Write Error: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;e&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;raise&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;def&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;set_player_leds&lt;/span&gt;(ep_out, ep_in, led_mask):&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; command &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0x09&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x91&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x07&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x08&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; led_mask,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x00&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; ]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, bytes(command), &lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Set LED Mask: 0x&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;led_mask&lt;span style=&#34;color:#e6db74&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;02x&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;def&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;connect_usb&lt;/span&gt;():&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Searching for Nintendo Switch Controllers...&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;def&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;match_device&lt;/span&gt;(dev):&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;return&lt;/span&gt; dev&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;idVendor &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; VENDOR_ID &lt;span style=&#34;color:#f92672&#34;&gt;and&lt;/span&gt; dev&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;idProduct &lt;span style=&#34;color:#f92672&#34;&gt;in&lt;/span&gt; PRODUCT_IDS&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; dev &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;core&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;find(custom_match&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;match_device)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; dev &lt;span style=&#34;color:#f92672&#34;&gt;is&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;None&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;raise&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;ValueError&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Device not found&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; product_name &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; PRODUCT_IDS&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;get(dev&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;idProduct, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Unknown Device&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Found &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;product_name&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt; (ID: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;dev&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;idProduct&lt;span style=&#34;color:#e6db74&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;04x&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;)&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; dev&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;is_kernel_driver_active(USB_INTERFACE_NUMBER):&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;try&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Detaching kernel driver...&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; dev&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;detach_kernel_driver(USB_INTERFACE_NUMBER)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;except&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;core&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;USBError &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; e:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; sys&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;exit(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Could not detach kernel driver: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;e&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;try&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; dev&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;set_configuration()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Configuration set.&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;except&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;core&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;USBError &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; e:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Error setting configuration: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;e&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;try&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;util&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;claim_interface(dev, USB_INTERFACE_NUMBER)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Interface &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;USB_INTERFACE_NUMBER&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt; claimed.&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;except&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;core&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;USBError &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; e:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; sys&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;exit(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Could not claim interface: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;e&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; cfg &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; dev&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;get_active_configuration()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; intf &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; cfg[(USB_INTERFACE_NUMBER,&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;)]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; ep_out &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;util&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;find_descriptor(&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; intf,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; custom_match &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;lambda&lt;/span&gt; e: usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;util&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;endpoint_direction(e&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;bEndpointAddress) &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;util&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;ENDPOINT_OUT)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; ep_in &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;util&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;find_descriptor(&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; intf,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; custom_match &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;lambda&lt;/span&gt; e: usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;util&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;endpoint_direction(e&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;bEndpointAddress) &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; usb&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;util&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;ENDPOINT_IN&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; )&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;not&lt;/span&gt; ep_out:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; sys&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;exit(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Could not find OUT endpoint&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Found Endpoint OUT: 0x&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;ep_out&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;bEndpointAddress&lt;span style=&#34;color:#e6db74&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;02x&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Starting Initialization Sequence...&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;try&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, INIT_COMMAND_0x03, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Init 0x03&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x07, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Unknown 0x07&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x16, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Unknown 0x16&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, REQUEST_CONTROLLER_MAC, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Req MAC&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, LTK_REQUEST, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Req LTK&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x15_ARG_0x03, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Unknown 0x15&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x09, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Unknown 0x09&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, IMU_COMMAND_0x02, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;IMU 0x02&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x11, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;OUT Unknown 0x11&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x0A, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Unknown 0x0A&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, IMU_COMMAND_0x04, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;IMU 0x04&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, ENABLE_HAPTICS, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Enable Haptics&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x10, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;OUT Unknown 0x10&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x01, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;OUT Unknown 0x01&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x03, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;OUT Unknown 0x03&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x0A_ALT, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;OUT Unknown 0x0A Alt&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; set_player_leds(ep_out, ep_in, &lt;span style=&#34;color:#ae81ff&#34;&gt;0x0F&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Controller initialization sequence complete! All LEDs should be on.&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;except&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;Exception&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; e:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Error during sequence: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;e&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; __name__ &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;__main__&amp;#34;&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;try&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; connect_usb()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;except&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;ValueError&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; e:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(e)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;except&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;Exception&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; e:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; print(&lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Unexpected error: &lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;e&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Steps&lt;/strong&gt;&lt;/p&gt;</description>
</item>
<item>
<title>YouTube Music Recap 2025</title>
- <link>http://localhost:1313/posts/2025-12-03-04-yt-music-rewind/</link>
+ <link>https://micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/</link>
<pubDate>Wed, 03 Dec 2025 19:38:52 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
- <guid>http://localhost:1313/posts/2025-12-03-04-yt-music-rewind/</guid>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/</guid>
<description>&lt;p&gt;Its all Bandori. At least 75% of that MyGO!!!!! listening time was probably Haruhikage since I came back to Bandori and had to catch up before watching Ave Mujica anime.&lt;/p&gt;&#xA;&lt;figure&gt;&lt;img src=&#34;https://files.catbox.moe/tsquqc.jpg&#34;&#xA; alt=&#34;YouTube Music Recap Top 5 Artists In Order: MyGO!!!!!, Yumenokessho, Ave Mujica, KMNZ, Roselia&#34; width=&#34;300&#34;&gt;&#xA;&lt;/figure&gt;</description>
</item>
<item>
<title>INIU Power Bank Gets Recall</title>
- <link>http://localhost:1313/posts/2025-12-02-power-bank-recall/</link>
+ <link>https://micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/</link>
<pubDate>Tue, 02 Dec 2025 19:45:01 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
- <guid>http://localhost:1313/posts/2025-12-02-power-bank-recall/</guid>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/</guid>
<description>&lt;p&gt;It would seem that I, along with what seems like the entirety of &lt;a href=&#34;https://www.reddit.com/r/amazonprime/comments/1pcq5ug/how_to_get_customer_support_for_recall_iniu/&#34;&gt;Reddit&lt;/a&gt; bought the same cheap 10000mAh power bank and now its getting recalled.&lt;/p&gt;&#xA;&lt;p&gt;I wonder if it has anything to do with the poor quality they found in that viral &lt;a href=&#34;https://www.lumafield.com/first-article/posts/whats-hiding-inside-haribos-power-bank-and-headphones&#34;&gt;Haribo Powerbank&lt;/a&gt;. Not sure since I&amp;rsquo;ve had this one for a long time. I guess I really got what I paid for, shame cause it really is super slim and works well.&lt;/p&gt;</description>
</item>
<item>
<title>China Town Fair</title>
- <link>http://localhost:1313/posts/2025-12-02-china-town-fair/</link>
+ <link>https://micro.pinapelz.moe/posts/2025-12-02-china-town-fair/</link>
<pubDate>Tue, 02 Dec 2025 00:22:32 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
- <guid>http://localhost:1313/posts/2025-12-02-china-town-fair/</guid>
- <description>&lt;p&gt;Visited New York during the Thanksgiving break and had a chance to stopped by one of the most legendary landmarks North American arcade gaming history.&lt;/p&gt;&#xA;&lt;figure&gt;&lt;img src=&#34;http://localhost:1313/posts/2025-12-02-china-town-fair/outside-ctf.webp&#34;&#xA; alt=&#34;China Town Fair Outside&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;Also yep you&amp;rsquo;re reading that right, it indeed once home to a &lt;a href=&#34;https://davidpotorti.substack.com/p/the-dancing-chicken&#34;&gt;dancing chicken as well as one that played tic tac toe&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;But apart from just being an old arcade, it was also home to one of the largest competitive arcade game fighting scene (Marvel vs Capcom, Street Fighter, etc.). Many of NAs top players frequented this arcade. However, as we all already know video arcades began to die down during the early 2000s and China Town Fair was no exception having closed in 2011.&lt;/p&gt;</description>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-02-china-town-fair/</guid>
+ <description>&lt;p&gt;Visited New York during the Thanksgiving break and had a chance to stopped by one of the most legendary landmarks North American arcade gaming history.&lt;/p&gt;&#xA;&lt;figure&gt;&lt;img src=&#34;https://micro.pinapelz.moe/posts/2025-12-02-china-town-fair/outside-ctf.webp&#34;&#xA; alt=&#34;China Town Fair Outside&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;Also yep you&amp;rsquo;re reading that right, it indeed once home to a &lt;a href=&#34;https://davidpotorti.substack.com/p/the-dancing-chicken&#34;&gt;dancing chicken as well as one that played tic tac toe&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;But apart from just being an old arcade, it was also home to one of the largest competitive arcade game fighting scene (Marvel vs Capcom, Street Fighter, etc.). Many of NAs top players frequented this arcade. However, as we all already know video arcades began to die down during the early 2000s and China Town Fair was no exception having closed in 2011.&lt;/p&gt;</description>
</item>
<item>
<title>Hello World - Why This</title>
- <link>http://localhost:1313/posts/2025-12-01-hello-world/</link>
+ <link>https://micro.pinapelz.moe/posts/2025-12-01-hello-world/</link>
<pubDate>Mon, 01 Dec 2025 20:11:57 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author>
- <guid>http://localhost:1313/posts/2025-12-01-hello-world/</guid>
+ <guid>https://micro.pinapelz.moe/posts/2025-12-01-hello-world/</guid>
<description>&lt;p&gt;I think having control of your own data is great. The same is true for decentralized social media. I&amp;rsquo;ve always been a primary user of microblog platforms (like Twitter/X). Having experienced both the traditional and &amp;ldquo;decentralized&amp;rdquo; approaches to microblogs, they both have some particular shortcoming in terms of what I want to get out of &amp;ldquo;social media&amp;rdquo;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;twitterx&#34;&gt;Twitter/X&lt;/h2&gt;&#xA;&lt;p&gt;This is fairly self explanatory. The rebranding of Twitter to X and Musk&amp;rsquo;s new ownership of the platform shifted the direction of the platform to be ever more political. X Premium boosting visibility is also something I wasn&amp;rsquo;t a particular fan of. You can&amp;rsquo;t view anything without signing in either, so goodbye viewing stuff anonymously. There&amp;rsquo;s just a lot of &amp;ldquo;features&amp;rdquo; here I&amp;rsquo;m not a fan of. Needless to say, there&amp;rsquo;s a lot of reasons to not post stuff there.&lt;/p&gt;</description>
</item>
</channel>
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage