Hacker News Digest

Тег: #lua

Постов: 13

OpenMW 0.50.0 Released – open-source Morrowind reimplementation (openmw.org)

Вышел OpenMW 0.50.0 — крупное обновление с переработкой геймпада, первыми шагами по дехардкодингу боя, расширением Lua API и долгожданной функцией быстрого переноса предметов. Разработчики улучшили поведение ИИ: кэширование проверки скрытности теперь длится 5 секунд, а NPC игнорируют недостижимые точки пути, что делает игру более предсказуемой. Сохранения совместимы с предыдущей версией 0.49.0, а настройки теперь сохраняются при выходе из окна, а не только из игры.

Известные проблемы включают возможные зависания на Windows при долгой загрузке, баги с рендерингом на Apple Silicon (решается включениемPerPixelLighting), случайные сбои OpenMW-CS на Linux/macOS и проблемы с аппаратным сглаживанием на AMD RX 6000/7000 из-за ошибки драйверов.

by agluszak • 07 ноября 2025 г. в 13:25 • 248 points

ОригиналHN

#openmw#lua#gaming#game-development#open-source

Комментарии (87)

  • OpenMW и другие проекты-ремейки продолжают развивать классические игры, сохраняя их дух и предоставляя им новую жизнь.
  • Сообщество моддеров и разработчиков вносят вклад в такие проекты как OpenMW, OpenRA и CorsixTH.
  • Проекты-ремейки, такие как OpenMW, предоставляют возможность играть в классические игры на современных системах и с улучшенной производительностью.
  • Проекты-ремейки и их сообщество продолжают развивать и поддерживать эти игры, которые иначе были бы потеряны в истории.
  • Проекты-ремейки, такие как OpenMW, являются примером того, как сообщество может сохранить и продолжать развивать классические игры, которые иначе были бы потеряны.

Wren: A classy little scripting language (wren.io)

Wren — это маленький, быстрый, объектно-ориентированный скриптовый язык с поддержкой concurrency. Его реализация занимает менее 4000 строк кода, что позволяет изучить весь код за один день. Язык сочетает в себе идеи Smalltalk, Lua и Erlang, предлагая современный и понятный синтаксис. Wren использует быстрые однопроходный компилятор в байт-код и компактное представление объектов, что позволяет ему конкурировать с другими динамическими языками.

Особенностью Wren является акцент на классах как основной парадигме и встроенная поддержка легковесных волокон (fibers) для организации программы в набор взаимодействующих корутин. Язык создан для встраивания в приложения — он не имеет зависимостей, имеет небольшую стандартную библиотеку и простой C API. Wren компилируется как C99, C++98 или более новые версии, доступен для запуска в браузере и открыт на GitHub под руководством Боба Нистрома.

by Lyngbakr • 22 октября 2025 г. в 16:21 • 156 points

ОригиналHN

#wren#scripting#object-oriented#concurrency#c#c++#lua#smalltalk#erlang

Комментарии (43)

  • Wren — язык, который сочетает в себе лаконичность Lua и объектно-ориентированный синтаксис, но при этом остаётся компактным и легко встраиваемым.
  • Пользователи отмечают, что Wren легко встраивается в C/C++ проекты, но при этом не требует сложных зависимостей, что делает его привлекательным для встраиваемых скриптовых языков.
  • Некоторые участники обсуждения упоминают, что Wren может быть использован как альтернатива Lua, особенно в контексте встраивания в игровые движки и другие приложения.
  • Обсуждается также, что Wren имеет активное и дружелюбное сообщество, что способствует его развитию и поддержке.

Lux: A luxurious package manager for Lua (github.com)

Lux - новый менеджер пакетов для Lua, позиционируемый как "роскошное" решение для управления зависимостями. Проект разработан сообществом lumen-oss и доступен на GitHub. Хотя подробные технические спецификации в предоставленном тексте отсутствуют, название предполагает фокус на улучшенном пользовательском опыте и возможно расширенных возможностях по сравнению с существующими решениями.

В экосистеме Lua уже существуют менеджеры пакетов как LuaRocks, поэтому Lux, вероятно, стремится предложить альтернативу с уникальными особенностями. Точный набор функций, совместимость и преимущества по сравнению с аналогами остаются неясными без доступа к документации проекта.

by Lyngbakr • 18 октября 2025 г. в 12:53 • 75 points

ОригиналHN

#lua#packagemanager#toml#lumen-oss#github

Комментарии (27)

  • Пользователи обсуждают, что выбор TOML вместо Lua для конфигурации в проекте Lux обусловлен в первую очередь эргономикой и простотой, а не только лишь из-за того, что Cargo использует TOML.
  • Участники спора поднимают вопрос о том, что выбор TOML вместо Lua может быть неоправданным, так как Lua лучше подходит для конфигурации, и что выбор TOML может быть вдохновлен Cargo, а не техническими требованиями проекта.
  • Некоторые участники высказывают мнение, что использование излишне пафосных эпитетов для описания технических проектов может быть излишне, и что вместо этого следует демонстрировать качества проекта в действии.
  • Также обсуждается, что проект вроде Lux не должен позиционировать себя как менеджер пакетов, а как проект-менеджер, и что он не должен быть ограничен только лишь уровнем "сделанности" вместо того, чтобы быть полезным.

The evolution of Lua, continued [pdf] (lua.org) 💬 Длинная дискуссия

Созданный в 1993 году в Бразилии, Lua стал одним из ведущих скриптовых языков, особенно в разработке игр. С 2007 года язык эволюционировал через серию Lua 5, добавив современные функции: сопрограммы для многопоточности, полную лексическую область видимости и метатаблицы для расширяемой семантики. Важные изменения включают введение целочисленного типа, улучшение сборки мусора с детерминированной финализацией и эволюцию глобальных переменных.

Lua сохраняет лёгкость и встраиваемость, будучи компактной C-библиотекой, что позволяет легко интегрировать его в хост-программы. Версии Lua 5.x несовместимы на уровне ABI, требуя перекомпиляции для встраивания, но сохраняют стабильность в рамках одной версии. Социальным маркером стало широкое принятие либеральной лицензии MIT и влияние LuaJIT, который продлил жизнь версии 5.1. Практический вывод: баланс между инновациями и стабильностью ключевой для долголетия языка.

by welovebunnies • 07 октября 2025 г. в 12:54 • 213 points

ОригиналHN

#lua#luajit#mit-license#coroutines#metatables#fengari#nelua#luau#neovim#roblox

Комментарии (161)

  • Обсуждаются преимущества Lua как легкого, быстрого и удобного для встраивания языка, особенно в сравнении с JavaScript и Python.
  • Упоминаются проекты для запуска Lua в браузере (например, Fengari, Nelua) и проблемы взаимодействия с DOM.
  • Затрагивается история развития языков программирования в 90-х годах и место Lua среди них.
  • Обсуждаются особенности Lua, такие как 1-индексация, отсутствие continue, метатаблицы, а также новые версии (Lua 5.5, Luau).
  • Участники делятся ресурсами для изучения Lua и областями его применения (игры, Neovim, Roblox, скриптование в C++).

RediShell: Critical remote code execution vulnerability in Redis (wiz.io)

Обнаружена критическая уязвимость удалённого выполнения кода в Redis (CVE-2025-49844) с максимальным баллом CVSS 10.0. Проблема связана с ошибкой Use-After-Free, присутствующей в коде около 13 лет, которая позволяет аутентифицированному злоумышленнику выполнить произвольный код на хосте через специально сформированный Lua-скрипт.

Уязвимость затрагивает все версии Redis и представляет особую опасность, учитывая распространённость системы в 75% облачных сред. Атака позволяет получить полный контроль над системой, включая кражу, шифрование данных и перемещение внутри инфраструктуры. Эксплуатация требует лишь отправки вредоносного скрипта, что делает угрозу высокой для публично доступных экземпляров Redis.

by mihau • 06 октября 2025 г. в 22:30 • 107 points

ОригиналHN

#redis#lua#cve#remote-code-execution#use-after-free#cloud#docker

Комментарии (44)

  • Уязвимость в Redis (CVE-2024-XXXX) позволяет выполнить произвольный код после аутентификации через уязвимость use-after-free в Lua-скриптах.
  • Критичность уязвимости (CVSS 10) оспаривается, так как для эксплуатации требуется аутентификация или доступ к Lua-скриптам, что редко встречается в типичных конфигурациях.
  • Проблема усугубляется большим количеством экземпляров Redis (десятки тысяч), публично доступных в интернете без настроенной аутентификации.
  • Уязвимость существует в коде более десяти лет, исправлена в Redis 8.1.4 и форке Valkey, но многие системы остаются незащищенными.
  • Обсуждаются проблемы безопасности по умолчанию в Docker-конфигурациях и необходимость обновления устаревшей версии Lua в проектах.

Why I chose Lua for this blog (andregarzia.com)

Автор перевел свой блог с Racket на Lua, чтобы снизить сложность и обеспечить долгосрочную стабильность. Основная причина — разочарование в быстро меняющихся экосистемах вроде JavaScript и Ruby, где постоянные обновления и ломающие изменения усложняют поддержку. Lua привлек медленным развитием: между версиями 5.1 (2006) и 5.4 (2020) различия минимальны, а язык требует лишь компилятора C89.

Блог работает по старинке — через CGI-скрипты, с SQLite в качестве базы и шаблонизацией Mustache. Несмотря на кажущуюся архаичность, автор ценит простоту, минимальное количество зависимостей (около десяти) и возможность писать собственные легковесные библиотеки. Ключевой вывод: блог — это пространство для экспериментов, где можно отказаться от модных инструментов в пользу того, что действительно работает и приносит удовольствие.

by nairadithya • 02 октября 2025 г. в 16:58 • 186 points

ОригиналHN

#lua#racket#javascript#ruby#sqlite#mustache#cgi#hugo#python

Комментарии (135)

  • Предложение возродить создание собственных движков для блогов как учебного проекта для инженеров из-за его низкого риска и возможностей для экспериментов.
  • Обсуждение выбора Lua как стабильного и минималистичного языка для веб-разработки, несмотря на его недостатки (1-based индексация, разрыв между версиями, мало стандартных библиотек).
  • Критика сложности современных стеков для блогов и аргументы в пользу простых решений: статические генераторы (Hugo), чистый HTML или минимальные скрипты (Python, Lua).
  • Упоминание альтернативных технологий и подходов: Redbean, Perl, Caddy, XSLT, Web Components, Fennel, OpenResty и другие.
  • Подчёркивание важности личного выбора, удовольствия от процесса и независимости от внешних сервисов при создании блога.

Luau – Fast, small, safe, gradually typed scripting language derived from Lua (luau.org)

Lua_u_

Lua_u_ (строчная u, /ˈlu.aʊ/) — это быстрый, компактный, безопасный, постепенно типизированный встраиваемый язык сценариев, основанный на Lua.

Мотивация

Примерно в 2006 году Roblox начал использовать Lua 5.1 в качестве языка сценариев для игр. Со временем мы значительно развили реализацию и язык: для поддержки растущей сложности игр на платформе Roblox, увеличения размеров команд и написания большого объёма кода (более 1 млн строк к 2020 году) нам пришлось инвестировать в производительность, удобство использования, инструменты языка и ввести постепенную систему типов. Подробнее…

Песочница

Luau ограничивает набор стандартных библиотек, доступных пользователям, и реализует дополнительные функции песочницы для возможности запуска непривилегированного кода (написанного разработчиками игр) вместе с привилегированным кодом (нашим). Это создаёт среду выполнения, отличающуюся от традиционной для Lua. Подробнее…

Совместимость

По возможности Luau стремится быть обратно совместимым с Lua 5.1 и одновременно включает функции из более поздних версий Lua. Однако Luau не является полным надмножеством более поздних версий Lua — мы не всегда согласны с решениями Lua и имеем другие варианты использования и ограничения. Все функции Lua после 5.1, а также их статус поддержки в Luau, документированы здесь.

Синтаксис

Luau синтаксически обратно совместим с Lua 5.1 (код, действительный для Lua 5.1, также действителен для Luau); однако мы расширили язык набором синтаксических функций, делающих его более привычным и эргономичным. Синтаксис описан здесь.

Анализ

Для упрощения написания корректного кода Luau включает набор инструментов анализа, которые могут выявлять распространённые ошибки. Они состоят из линтера и проверки типов, интегрированных в исполняемый файл командной строки luau-analyze. Проверки линтера описаны здесь, а руководство по проверке типов можно найти здесь.

Производительность

В дополнение к полностью кастомному фронтенду, реализующему парсинг, линтинг и проверку типов, среда выполнения Luau включает новый байткод, интерпретатор и компилятор, сильно оптимизированные для производительности. Интерпретатор Luau может конкурировать с интерпретатором LuaJIT в зависимости от программы. Также доступен опциональный компонент для ручной JIT-компиляции на платформах x64 и arm64, который может значительно ускорить определённые программы. Мы продолжаем оптимизировать среду выполнения и переписывать её части для ещё большей эффективности. Хотя наша общая цель — минимизировать время, которое программисты тратят на настройку производительности, некоторые детали о характеристиках производительности предоставлены для любознательных.

Библиотеки

Как язык Luau является полным надмножеством Lua 5.1. Что касается стандартной библиотеки, некоторые функции пришлось удалить из встроенных библиотек, а некоторые — добавить; обратитесь к полной документации для подробностей. Когда Luau встраивается в приложение, сценарии обычно получают доступ к дополнительным функциям библиотек, специфичным для приложения.

© 2025 Roblox.

by andsoitis • 18 сентября 2025 г. в 13:38 • 166 points

ОригиналHN

#luau#lua#roblox#typescript#sandbox#jit#performance#linting#type-checking

Комментарии (74)

  • Переход на Luau обусловлен системой типов, но язык имеет шероховатости и слабую документацию, а сообщество практически отсутствует.
  • Luau значительно сложнее и объёмнее стандартного Lua, что связано с реализацией системы типов и дополнительных возможностей.
  • Существуют альтернативные реализации и среды выполнения Luau, такие как Lune, предназначенные для использования вне Roblox.
  • Сообщество отмечает проблемы обратной совместимости между различными форками Lua (LuaJIT, Luau, PUC Lua), что создаёт фрагментацию.
  • Luau сравнивают с Teal, но они fundamentally разные: Teal — это транспилятор, а Luau — полноценный форк Lua с собственной средой выполнения.
  • Разработчики Roblox работают над улучшением поддержки Luau вне своей платформы, включая создание standalone-рантаймов.
  • Несмотря на критику, инженерные решения в Luau, особенно в области производительности, оцениваются как впечатляющие.

Fenster: Most minimal cross-platform GUI library (github.com)

fenster — сверхкомпактная кроссплатформенная GUI-библиотека.

  • Особенности:

    • Окно, пиксельный буфер, ввод с клавиатуры/мыши.
    • Один .h файл, ~400 LOC, зависимости: X11 (Linux), Cocoa (macOS), Win32 (Windows).
    • Поддержка C/C++, Zig, Odin, Rust, Go, JS (WASM), C#, Swift, Pascal, Nim, Lua, Python, Ruby, OCaml, Fortran.
  • Быстрый старт (C):

#define FENSTER_IMPL
#include "fenster.h"
int main() {
  struct fenster f = {.width = 320, .height = 240, .title = "demo"};
  uint32_t buf[320*240];
  for (fenster_open(&f); fenster_loop(&f) == 0; ) {
    // рисуем
    fenster_sync(&f, buf);
  }
  return 0;
}
  • Сборка: cc demo.c -o demo (Linux: -lX11, macOS: -framework Cocoa, Windows: без флагов).

  • API (C):

    • fenster_open, fenster_close, fenster_loop, fenster_sync.
    • Поля: width, height, title, keys[64], mouse.
  • Лицензия: MIT.

by klaussilveira • 25 августа 2025 г. в 19:41 • 118 points

ОригиналHN

#c#zig#odin#rust#go#c##swift#pascal#nim#lua

Комментарии (31)

  • Fenster — это минимальная C-библиотека, создающая окно с пиксельным буфером, а не полноценный GUI с кнопками и меню.
  • Участники отмечают отсутствие скриншотов и просят добавить их в README.
  • Название «Fenster» переводится как «окно» на немецком, африкаанс, шведском и других языках.
  • Некоторые считают polling-цикл ошибкой, другие считают его допустимым для такой простой задачи.
  • В блог-посте нашли опечатку в sizeof и ограничение кода 8-битными цветами.
  • Проект вызывает интерес для визуализации данных и как лёгкая альтернатива raylib.

Librebox: An open source, Roblox-compatible game engine (github.com)

Librebox-demo — репозиторий движка Librebox: открытой альтернативы Roblox.
Цель — совместимость с Roblox-играми и инструментами, но без проприетарных ограничений.

Ключевое

  • Язык: C++ + Lua
  • Лицензия: MIT
  • Статус: ранняя альфа
  • Сборка: CMake + vcpkg

Быстрый старт

git clone https://github.com/librebox-devs/librebox-demo.git
cd librebox-demo
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
cmake --build build
./build/librebox

Функции

  • Загрузка .rbxl и .rbxm
  • Базовый рендер OpenGL/Vulkan
  • Серверный режим headless

Планы

  • Поддержка плагинов
  • Web-клиент
  • Мобильные порты

PR и issue приветствуются.

by libreboxdevs • 23 августа 2025 г. в 11:22 • 248 points

ОригиналHN

#c++#lua#cmake#vcpkg#opengl#vulkan#roblox#open-source#mit-license#github

Комментарии (66)

  • Librebox — это пока демо с очень ограниченным подмножеством API Roblox; серверов и сети нет.
  • Пользователи надеются на Linux-клиент и сохранение творений Roblox, но опасаются юридических проблем.
  • GitHub и Discord проекта выглядят странно: разработчики скрыты, активности мало, но код реально пишется.
  • Некоторые считают, что такие проекты важнее для Roblox, чем борьба с хищниками на платформе.
  • Есть предложения переименовать в OpenBox из-за лицензии MIT, но другие напоминают, что MIT — это тоже «свободно».

Show HN: Game demo made with my homemade game engine (reprobate.site)

Загрузка…

by delduca • 22 августа 2025 г. в 21:33 • 81 points

ОригиналHN

#sdl3#lua#cloudflare#game-engine#pixel-art

Комментарии (45)

  • Игроки в восторге от пиксель-арта и атмосферы, но все застревают во второй комнате и не понимают, что делать дальше.
  • Автор признал, что это пока лишь демо из двух комнат, а полноценная игра требует много времени и ресурсов.
  • Проблемы с обнаружением объектов, неочевидный курсор-рука и внезапно громкий звук вызывают недоумение.
  • Проект не работает на мобильных устройствах, иногда грузится бесконечно из-за Cloudflare Pages.
  • Движок написан с нуля на SDL3 + Lua, исходники выложены на GitHub.

Website is served from nine Neovim buffers on my old ThinkPad (vim.gabornyeki.com)

Кратко: плагин nvim-web-server на чистом Lua отдаёт HTTP-запросы прямо из открытых буферов Neovim, без внешних зависимостей, с нативной поддержкой Djot и быстрее Nginx.

Почему так быстро?

  • Однозадачность: только статика.
  • libuv + асинхронный I/O Neovim.
  • LuaJIT: NaN-тегинг, отсутствие boxing чисел, allocation sinking.
  • aiohttp тормозит из-за парсера на чистом Python и boxing в CPython.

Бенчмарк, RPS (среднее):

сервер 1 50 100 200 400
nvim-web-server 3981 15284 15124 14476 14446
Nginx 4451 11306 11576 10011 10461
aiohttp 6391 8477 8448 7696 7132

Развёртывание: живёт на старом ThinkPad, 9 буферов — весь сайт.

Безопасность: да, но мелочи мы игнорируем.

by todsacerdoti • 18 августа 2025 г. в 11:03 • 99 points

ОригиналHN

#neovim#lua#lua-jit#libuv#http#web-server#aiohttp#nginx#benchmarks#linode

Комментарии (17)

  • Пользователи в восторге от статьи: называют её «одной из любимейших» и приводят цитату «они были так заняты тем, могут ли, что не спросили себя, стоит ли».
  • Кто-то отмечает, что сайт резолвится на IP Linode, но не объясняется, зачем нужен промежуточный сервер.
  • Обсуждают безопасность: пример показывает, что «никогда не бывает так, чтобы код точно не запустили по сети».
  • Некоторые шутят, что Neovim теперь можно считать кроссплатформенным рантаймом «ужаса», но признают крутость эксперимента.
  • Предполагают, что высокая скорость может быть из-за хранения файлов в RAM, а не на диске, и что всё равно всё закешируется.

LL3M: Large Language 3D Modelers (threedle.github.io) 🔥 Горячее 💬 Длинная дискуссия

LL3M — система, где несколько LLM пишут Python-код для Blender, создавая и редактируя 3D-модели по текстовым запросам. В отличие от прежних подходов, ограниченных примитивами, LL3M свободно формирует геометрию, компоновку и материалы. Код служит представлением объекта, что позволяет автоматическую и пользовательскую итеративную доработку.

Процесс

  1. Создание — первичная модель.
  2. Авто-улучшение — самокоррекция ошибок и упрощённой геометрии.
  3. Пользовательская доработка — интерактивные правки по запросу.

Возможности

  • Разнообразие форм: архитектура, инструменты, скейтборд и т.д.
  • Стилизация: один запрос «в стиле стимпанк» меняет геометрию и материалы разных шляп.
  • Материалы: процедурные шейдеры, редактируемые узлы.
  • Последовательные правки: сохраняется идентичность объекта.
  • Прозрачность: читаемый код с комментариями, понятные параметры в Blender.
  • Повторное использование: общие паттерны кода переносятся между категориями объектов.
  • Сцены: генерация иерархий объектов с корректными пространственными связями.

by simonpure • 17 августа 2025 г. в 11:20 • 408 points

ОригиналHN

#python#blender#3d-modeling#llm#procedural-shaders#lua#freecad#aseprite

Комментарии (173)

  • Пользователи делятся опытом: meshy.ai превращает упрощённые 2D-изображения в 3D-модели, а Claude помогает писать Lua-скрипты для Aseprite и Python для FreeCAD/Blender.
  • Ветераны Blender критикуют качество и высокий полигон-счёт, считая инструмент «игрушкой» или «обучающим» для новичков.
  • Сторонники видят в этом будущее «solo-dev»: быстрый прототип, экономия времени и API-first подход в креативных пакетах.
  • Поднимаются вопросы безопасности (несэндбоксированный Python), прав и монетизации опыта художников, а также необходимости понимания 3D-семантики для эффективных промптов.
  • Общий консенсус: сейчас это «cute», но каждая новая итерация будет лучше, и генеративные модели всё ближе к «говорящим на языке геометрии».

ESP32 Bus Pirate 0.5 – A hardware hacking tool that speaks every protocol (github.com)

ESP32-Bus-Pirate — компактный хардварный хак-инструмент на базе ESP32-S3.
Поддерживает I²C, SPI, UART, 1-Wire, JTAG, SWD, CAN, LIN, MIDI, PWM, GPIO, WS2812 и др.
Управляется через веб-CLI (Wi-Fi AP или STA), OTA-обновления, JSON-API, скрипты Lua.

Особенности

  • 2×15 пинов, 3,3 В/5 В, защита 5 В-толерантность
  • Питание USB-C 5 В или внешнее 5–12 В
  • ЖК-дисплей 0,96" SSD1306, RGB-LED, 2 кнопки
  • Автономный режим: скрипты в EEPROM, запуск по кнопке

Прошивка

  • PlatformIO: pio run -t upload
  • OTA: http://<ip>/update

Сборка

  • Плата 4-слойная, 50×25 мм
  • BOM ≈ 15 $, JLCPCB+SMT

Быстрый старт

  1. Подключить USB-C → точка доступа BP-XXXXXX, пароль buspirate.
  2. В браузере 192.168.4.1 → вкладка Terminal.
  3. i2c scan — найти адреса, spi flash id — ID чипа.

Команды

  • mode i2c 100 — 100 кГц I²C
  • uart 115200 — UART 8N1
  • ws2812 10,255,0,0 — 10 красных LED

Сценарии

  • Дамп SPI Flash, брут I²C, JTAG-отладка, LIN-шина авто.

by geo-tp • 09 августа 2025 г. в 14:56 • 136 points

ОригиналHN

#esp32#i2c#spi#uart#jtag#swd#can#lin#lua#json

Комментарии (31)

  • Новый Bus Pirate — не клон, а полностью переписанный проект, вдохновлённый оригиналом и полностью открытый.
  • Пользователи уже заказывают железо (T-Embed CC1101, M5StickC2) и собираются тестировать.
  • Главная фишка — поддержка 83 ИК-протоколов, что облегчает интеграцию кондиционеров в Home Assistant через ESP32.
  • Некоторые жалуются: ИК всё-таки не CAN-bus, поэтому в автомобилях и новых e-bike устройство не так полезно.
  • Для «неподдерживаемых» протоколов советуют подключать осциллограф и/или добавлять код самостоятельно.