{{ :en:default_a_clever_looking_fox_with_a_screwdriver_fixing_somethi_2.jpg?nolink |}} ====== Dev Fiesta ====== Resources for developers and hackers! Also don't forget about resources like the [[en:manuals:service-notes-for-mitail|Service Notes for MiTail]] in the [[en:man_overview|Guides, Patterns, and Safety Info]] section! ===== Current TailCoNTROL Release ===== The initial release of the new unified firmware, TailCoNTROL is out! MiTail, MiTail Mini, and FlutterWings products can be updated by the CRUMPET app. * The current version of TailCoNTROL is **v5.0.9** * [[en:dev:tailcontrol-release-notes|TailCoNTROL Release Notes]] * [[en:dev:tailcontrol-command-protocol|TailCoNTROL Command Protocol]] * [[en:dev:tailcontrol-breaking-changes|TailCoNTROL Breaking Changes]] (for app developers) ==== Legacy Product Command Protocols ==== * [[en:dev:digitail-command-protocol|DIGITAiL Command Protocol]] * [[en:dev:eargear-v1-protocol|v1 Ear Command Protocol]] * [[en:dev:eargear-v2-protocol|v2 Ear Command Protocol]] ==== Using a Terminal ==== * [[en:dev:using-a-bluetooth-serial-console-on-your-android-device-to-send-console-commands-to-your-digitail|Using A Bluetooth Serial Console on Your Android Device to Send Console Commands to Your DIGITAiL]]\\ * [[en:dev:using-a-bluetooth-serial-console-on-your-android-device-to-send-console-commands-to-your-mitail|Using A Bluetooth Serial Console on Your Android Device to Send Console Commands to Your MiTail]]\\ ==== Using OTA ==== If you need to test an experimental firmware or update outside the official CRUMPET app, there is a facility to update over BLE. * [[en:dev:ota|BLE_OTA_Python script]] * [[https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/ota.html|API Reference: Over The Air Updates (OTA)]] **Note:** flashing test firmware or the incorrect firmware for your product can make it impossible to recover without a hardware flash, which may require return for service. You should only perform this operation **at your own risk**, and only if you are comfortable with all the steps and components used to perform it. You also need to have a recovery plan and be prepared to hardware flash if something goes wrong. ==== Hardware Flash ==== Hardware flash can be performed with a 3.3 V USB to TTL interface that provides RXD, TXD, RTS (Ready to Send), and DTR (Data Terminal Ready) signals (i.e., a 6-pin connector with the appropriate signals). Numerous inexpensive USB to TTL cables and interfaces are not capable of doing this, check carefully before investing in a tool to perform this. The [[https://1bitsquared.com/products/tigard|Tigard Protocol Tool]] works very nicely, though it is massively overkill in that it has many more capabilities than are required. The interface pinout on the board is below. Pins are numbered counting from Pin 1, closest to the servo connector, on the component side of the controller board. {{ :en:esp32_uart0_connections.jpg?direct&400 |ESP32 UART0 Connections}} **Note:** USB to TTL interfaces are available with 5 V, 3.3 V, or selectable voltage. The ESP32 //must// be used with 3.3 V interfaces //only//! Ensure that your cable or device is configured for 3.3 V before connecting it to the controller board, or your ESP32 may be permanently damaged. ==== Chat With the Tail Co Development Team Community ==== MiTail, EarGear 2, FlutterWings, and MiTail Mini all have updatable firmware! For details, come and talk to us on our Telegram [[https://t.me/+5XsaunrTpIc4OWI8|Tail Co Dev Chat]]!