Я пользуюсь ноутбуками ThinkPad на протяжении 3-х лет и мне не нравится расположение клавиш Fn/Ctrl (да, это не тру), их можно поменять местами через настройки BIOS.

Но внешняя USB-клавиатура Thinkpad этого не позволяет, как свапнуть клавиши?
Под катом подробно все расскажу.


Кратко: нужно вручную поправить прошивку и залить ее на клавиатуру. Мне подсказывали, что сменить клавиши поможет хоткей Fn+Shift+Esc, но у меня это не работало.
Решение было взято из этого Issue

Что нам понадобится?

  • ПК с Windows

  • HEX-редактор (у меня Notepad++)

Почти все действия я выполняю в Mobaxterm потому что zsh и мне так удобнее.

Нет гарантий того, что ваш девайс останется в рабочем состоянии.

  1. Скачиваем прошивку для самой клавиатуры.
    https://download.lenovo.com/pccbbs/options/tp_compact_usb_kb_with_trackpoint_fw.exe

  1. Смотрим хеш-сумму скачанной прошивки и сравниваем ее с оригинальной. Если вывод пустой, то все нормально.

certutil.exe -hashfile tp_compact_usb_kb_with_trackpoint_fw.exe SHA256 | awk '{ if (NR == 2) print $1 }' > hash_downloaded && echo 7116a3819ee094857d21e4671cb6cf953d582372126f0f6728f6b2421eda7bd4 > hash_src && diff hash_downloaded hash_src

Запускайте команду находясь в одной директории с файлом прошивки или указывайте абсолютный путь к ней

Вы можете использовать удобные вам GUI-инструменты или cmd/powershell

Как это выглядело у меня
Как это выглядело у меня
  1. Открываем скачанный .exe файл прошивки через HEX-редактор, переходим к адресу 0x74004, меняем ba на f5 (Это заменяет Левый Ctrl на Fn)

В Notepad++: Меню Плагины, HEX-Editor, View in HEX. Хоткей для перехода Ctrl+G и снять флаг "...to Line"

Заменяем Левый Ctrl на Fn
Заменяем Левый Ctrl на Fn
  1. Затем переходим к адресу 0x740BA, меняем f5 на ba (Это заменяет Fn на Левый Ctrl)

Заменяем Fn на Левый Ctrl
Заменяем Fn на Левый Ctrl
  1. Сохраняем файл прошивки, проверяем хеш-сумму, которая должна получиться в итоге. Если вывод пустой, то мы все сделали правильно.

certutil.exe -hashfile tp_compact_usb_kb_with_trackpoint_fw.exe SHA256 | awk '{ if (NR == 2) print $1 }' >> hash_downloaded && echo 123143092dab578550c87a62526b07a6c5f06c047f2455be87971aa51577e300 >> hash_src && diff hash_downloaded hash_src
  1. Подключаем клавиатуру, запускаем exe-шник с прошивкой, жмем Start. Видим сообщение об успешном апдейте и переподключаем клавиатуру к ПК.

Дайте права на исполнение программе, если вы скачивали ее через консоль

  1. Радуемся свапнутым клавишам. Т.к. мы заливали прошивку именно в саму клавиатуру, то этот мод будет работать на любой ОС и на любом устройстве, сам я пользуюсь этой клавой на Debian.

P.S. Для больших любителей хардварного DIY - один канадский леново-форумчанин запилил модификацию дорожек на самой клавиатуре.

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


  1. AlexeyK77
    16.06.2023 08:03

    только я задумался о такой клаве и полез искать, оказалось, что все клаиватура с трекпоинтом клавиатура сняты с производства и их нет в продаже :(


    1. sdnv Автор
      16.06.2023 08:03

      Авито наше всё :)
      Я свою клаву там и купил


      1. AlexanderS
        16.06.2023 08:03

        Я полтора года назад на авито всего 3 штуки нашёл. Сейчас вообще нет.


        1. ris58h
          16.06.2023 08:03

          Я свою на Али заказывал, вроде. Но это давно было.


    1. inkvizitor68sl
      16.06.2023 08:03

      Shinobi же.
      Да и ленову из поста купить можно всё ещё.


      1. sdnv Автор
        16.06.2023 08:03

        Шиноби супер дорогая, но тру))


        1. inkvizitor68sl
          16.06.2023 08:03

          Это вы просто сплиты купить не пытались -)

          Вообще Шиноби 185 USD стоит, если в страны без VAT заказывать -)


  1. Didimus
    16.06.2023 08:03

    Я думал как физически поменять кнопки местами..


    1. sdnv Автор
      16.06.2023 08:03

      И это тоже возможно! Более того, есть даже какой-то гайд как я указал в самом конце статьи))


  1. AlexanderS
    16.06.2023 08:03

    Если бы ещё кнопки были одинакового размера, то можно было бы их механически переставить и вообще шикарно получилось бы!


    1. sdnv Автор
      16.06.2023 08:03

      Это стандартный размер кнопок как и на всех синкпадах. Таким образом использую одинаковые клавиатуры на десктопе и на ноутбуке


  1. expdxx
    16.06.2023 08:03

    Лет 15 пользуюсь только ноутбуками, их количество превысило критическое на столе и было решено перейти на внешнюю клавиатуру. Поскольку тачпад - максимально привычное устройство ввода, попытался найти что-то подключаемое без бубна к Линуксу (ха-ха) качества, сопоставимого с Эпл. Быстро перестроил маршрут и купил мыша.

    А вот оно оказывается как решается.. У Леново есть такая клавиатура..


  1. lonelymyp
    16.06.2023 08:03

    Супер.

    Ещё бы отдать в лазерную гравировку, старый текст Fn можно поверх прожечь почти любым символом, стрелочки или типа того, с Ctrl так просто не выйдет, но тоже можно нафантазировать, чтобы выглядело неплохо.