<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
    <title>Antoni Kołaczek</title>
    <link href="https://antoni.kolaczek.us/feed.xml" rel="self" />
    <link href="https://antoni.kolaczek.us" />
    <updated>2026-10-22T16:55:57+02:00</updated>
    <author>
        <name>Anton</name>
    </author>
    <id>https://antoni.kolaczek.us</id>

    <entry>
        <title>Moja przygoda z protokołem MIDI</title>
        <author>
            <name>Anton</name>
        </author>
        <link href="https://antoni.kolaczek.us/moja-przygoda-z-midi/"/>
        <id>https://antoni.kolaczek.us/moja-przygoda-z-midi/</id>

        <updated>2026-10-21T21:34:16+02:00</updated>
            <summary type="html">
                <![CDATA[
                    Pierwsze kroki: Na początku roku 2026 zakupiłem swoje pierwsze moduły ESP do projektu, który realizowałem. Po jego zakończeniu miałem nieużywane, elementy z których&hellip;
                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <h4>Pierwsze kroki:</h4>
<p>Na początku roku 2026 zakupiłem swoje pierwsze moduły ESP do projektu, który realizowałem. Po jego zakończeniu miałem nieużywane, elementy z których stworzyłem prosty kontroler MIDI do komputera. Składał się on jedynie z ekodera i kilku guzików, a każdy sygnał był ręcznie odczytywany i wysyłany poprzez bibliotekę <a href="https://github.com/lathoub/Arduino-BLE-MIDI" title="BLE MIDI library on GitHub" target="null">BLE MIDI</a>. Pare tygodni później, zakupiłem dwa potencjometry obrotowe, które dołączyły do enkodera. Taki zestaw pozwalał na całkiem wygodną kontrolę głośności elementów na moim komputerze, poprzez VoiceMeeter, jednak jego podłączanie było nie idealne ze względu na wykorzystanie Bluetooth jako sposobu transportu protokołu, który nie jest bezpośrednio wspierany przez Windows, przez co musiałem mieć uruchomione aplikacje przekazujące sygnał z bluetooth na sygnał wewnątrz systemu.</p>
<h4>Upgrade do USB:</h4>
<p>W marcu dostałem płytkę rozwojową ESP32-S3-DevKit-C, która dała mi możliwość przesyłania protokołu MIDI po natywnym USB. Wtedy też przerzuciłem się na bibliotekę <a href="https://github.com/tttapa/Control-Surface" title="Control Surface Arduino livrary on GitHub" target="_blank" rel="noopener noreferrer">Control Surface</a>, która pozwoliła na znacznie szybsze stworzenie kodu, oraz łatwiejszą skalowalność, ze względu na łatwe definiowanie pinów GPIO dla elementów fizycznych, oraz proste wybranie sposobu transportu protokołu.</p>
<h4>Tworzenie własnego PCB:</h4>
<p>Usatysfakcjonowany działaniem prototypu, zacząłem projektować PCB — przygotowanie jej, zajeło trochę czasu, i było bardzo dużym wyzwaniem w porównaniu do moich umiejętności. Z powodu braku doświadczenia, oraz braku cierpliwości, wykorzystywałem dużo AI, której halucynacjie niejeden raz sprowadziły mnie na manowce... Ze względu na brak weryfikacji danych z mojej strony, <a href="github.com/antowski-1/midi-controller-pcb" title="Repozytorium z projektem płytki PCB">pierwsza rewizja płytki</a> ma trochę błędów, ale z kilkoma, relatywnie łatwymi modyfikacjami podczas jej montowania, można uzyskać działający kontroller. Mimo problemów z modelami LLM, nie zaszedł bym aż tak daleko, bo AI pomogło mi zrozumieć wiele zagadnień, które w internecie, nie były opisane przystępnie, dla całkowitego nowicjusza.<br>4 października wydałem pierwszą wersję oprogramowania, która pozwala na zmianę sposobu przesyłania protokołu, do dwóch odbiorców, oraz obługuje wyświetlacz i resztę hardware'u.</p>
<p class="msg msg--info">Więcej informacji o projekcie znajdziesz na <a href="github.com/antowski-1/midi-controller" title="MIDI controller na GitHub">github</a></p>
            ]]>
        </content>
    </entry>
</feed>
