<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Juan Pablo Díaz Correa</title>
    <description>The latest articles on Forem by Juan Pablo Díaz Correa (@juanipis).</description>
    <link>https://forem.com/juanipis</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1933319%2F8645ad41-277e-4e1b-83d9-9e69a93c2a9f.jpeg</url>
      <title>Forem: Juan Pablo Díaz Correa</title>
      <link>https://forem.com/juanipis</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/juanipis"/>
    <language>en</language>
    <item>
      <title>How I Brought Wiimotes Back to Life in 2026</title>
      <dc:creator>Juan Pablo Díaz Correa</dc:creator>
      <pubDate>Sat, 14 Feb 2026 17:45:28 +0000</pubDate>
      <link>https://forem.com/juanipis/how-i-bring-back-the-wiimotes-on-2026-29h8</link>
      <guid>https://forem.com/juanipis/how-i-bring-back-the-wiimotes-on-2026-29h8</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-01-21"&gt;GitHub Copilot CLI Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built &lt;strong&gt;Wiimote Manager Pro&lt;/strong&gt;, a modern Windows application that breathes new life into old Nintendo Wii Remotes by converting them into fully functional Xbox 360 controllers.&lt;/p&gt;

&lt;p&gt;I love playing local multiplayer party games on my PC, but I often run into the classic problem: not enough controllers for everyone. I had a box of old Wiimotes gathering dust, so I decided to put them to use. While emulators like Dolphin have this functionality built-in, I wanted a standalone, system-wide solution that works with &lt;em&gt;any&lt;/em&gt; modern PC game—from Steam to Game Pass.&lt;/p&gt;

&lt;p&gt;Unlike older, abandoned drivers, this project is built on the modern .NET 8.0 stack and uses the &lt;strong&gt;ViGEmBus&lt;/strong&gt; driver for seamless Xbox emulation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;🎮 Xbox 360 Emulation&lt;/strong&gt;: Works with almost any modern PC game (no custom driver config needed per game).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;🧠 Smart Profile System&lt;/strong&gt;: Automatically detects which game is running and switches button mappings instantly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;🏎️ Motion Controls&lt;/strong&gt;: Utilizes the Wiimote's accelerometer for tilt-to-steer in racing games.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;🔌 Multi-Controller Support&lt;/strong&gt;: Connects up to 4 players simultaneously.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;🎨 Modern WPF UI&lt;/strong&gt;: A sleek, dark-themed dashboard with glassmorphism effects.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;

  &lt;iframe src="https://www.youtube.com/embed/dE_LCDehYyg"&gt;
  &lt;/iframe&gt;


&lt;/p&gt;

&lt;p&gt;In this video walkthrough, I demonstrate the complete workflow: from pairing a Wiimote via Bluetooth to configuring button mappings in the modern UI. You'll see the &lt;strong&gt;Smart Profile System&lt;/strong&gt; automatically detecting running games and switching configurations on the fly, as well as a live gameplay test showing the motion controls in action.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Experience with GitHub Copilot CLI
&lt;/h2&gt;

&lt;p&gt;This was my first time building a C# application with the .NET 8 framework. I started with a high-level vision and a blank repository, using the GitHub Copilot CLI not just as an autocomplete tool, but as a Lead Architect and Senior Engineer.&lt;/p&gt;

&lt;p&gt;The process was incredible. Since I was new to the ecosystem, Copilot guided me through the entire setup, explaining how to organize a scalable WPF architecture (MVVM) and which dependencies (like &lt;code&gt;HidSharp&lt;/code&gt; and &lt;code&gt;ViGEm.Client&lt;/code&gt;) I needed. I heavily utilized &lt;strong&gt;MCP Servers&lt;/strong&gt; (like Context7 and Tavily) to let Copilot research the specific HID protocols for the Wiimote directly from technical documentation and wikis.&lt;/p&gt;

&lt;p&gt;What surprised me most was how I could leverage different LLMs for different phases:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Research &amp;amp; Architecture&lt;/strong&gt;: I used models like Gemini to brainstorm the project structure and understand the Bluetooth stack.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Coding &amp;amp; Refactoring&lt;/strong&gt;: I switched to models specialized in code generation for the heavy lifting of the HID communication logic.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It felt like working with a dedicated team of experts. We went from a simple concept to a polished app with over 5,000 lines of code, 100% test coverage on core features, and a comprehensive documentation suite.&lt;/p&gt;

&lt;h2&gt;
  
  
  Repository Highlights &amp;amp; DevOps
&lt;/h2&gt;

&lt;p&gt;Copilot didn't just help with the C# code; it helped me set up a professional-grade repository from day one.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;🚀 CI/CD Pipelines&lt;/strong&gt;: We set up &lt;strong&gt;GitHub Actions&lt;/strong&gt; workflows (&lt;code&gt;ci.yml&lt;/code&gt; and &lt;code&gt;release.yml&lt;/code&gt;) that automatically build the project, run the unit test suite, and even draft releases when I push to main.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;📚 Comprehensive Documentation&lt;/strong&gt;: The &lt;code&gt;docs/&lt;/code&gt; folder is packed with technical guides, architecture overviews, and user manuals—all generated or refined with AI assistance to ensure the project is maintainable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;✅ Automated Testing&lt;/strong&gt;: The project boasts a robust test suite ensuring stability before every deploy.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I invite you to explore the &lt;a href="https://github.com/Juanipis/WiimoteManagerPro" rel="noopener noreferrer"&gt;GitHub Repository&lt;/a&gt; to see the clean architecture, browse the documentation, or even open a PR! Whether you want to add support for a new controller or just fix a typo, contributions are welcome.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
      <category>cli</category>
      <category>githubcopilot</category>
    </item>
  </channel>
</rss>
