Альтерннативная универсальная раскладка

Апгрейд стоковых клавиатур. Замена переключателей, контроллеров, проводов, корпусов и колпачков. Кастомные клавиатуры и изготовление устройств ввода с нуля.
74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Альтерннативная универсальная раскладка

Сообщение 74LS00 » 13 апр 2016, 23:24

Большинство современных клавиатур сделано по образу печатной машинки с некоторыми изменения сферических ламп к квадратным микросхемам. Говоря понятно, то круглые кнопки заменили квадратными, никаких других изменений нет.

Форма клавиш.
Изначально клавиши были круглыми с небольшим углублением во всю клавишу чтоб помещать туда табличку с надписью, бортик такой клавиши был технологической особенностью того времени, нельзя было сделать ровный острый край как сейчас в деталях смартфонов, поэтому бортик делали выше чтоб табличка не выскочила. Клавиши с уже впечатаными надписями были более плоские, но с небольшим углублением для удобства.
Некоторые считают круглые клавиши более удобными.

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

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

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

В механических клавиатурах подобное реализовать и вовсе невозможно, ведь клавиши закреплены на печатной плате которая может быть только плоской.
Для создания наклона используется разный наклон самих колпачков совместно с наклоном самой клавиатуры как это сделано и в плёночных.

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

Разработка таких корпусов сложна, а плат ещё сложнее, не говоря о цене. Поэтому остановимся на самом простом варианте с наклонном платы и колпачках разной высоты.

Назначение клавиатуры.
Начну с привычной всем IBM PC клавиатуры потому как врятли теперь найти то что было до неё, да и их отличие было только в количестве кнопок в зависимости от системы.
Первая клавиатура это основная часть по принципу печатной машинки, верхний функциональный ряд, клавиш много и они редко требуются поэтому их так и расположили чтоб не занимать лишнее место.
В правой стороне 9 клавиш навигации, с появление мышки их полезность уменьшилась, а некоторые и вовсе не используются.
Далее нумпад предназначенный для вычислений, обычно в этом режиме другие клавиши не используют. Сделаны они скорее для бухгалтеров, но с появлением программ они используются всё реже, чаще только для ввода, в добавок можно купить отдельный нумпад, поэтому на механических клавиатурах и ноутбуках они есть не всегда, для экономии места и денег.
В альтернативных раскладках как минимум или пропадает нумпад или такое понятие не существует поскольку расскладка теряет стандартное IBM PC представление.

Первым шагом к улучшению клавиатуры я считаю эргономичный вариант, когда клавиши расположены параллельно пальцам. Для этого на клавиатуре частично убрали сдвиг клавиш который ничто иное как пережитки механической конструкции и был оставлен для упрощения перехода с механики на электронику старых работников, но теперь то они все вымерли. И всё равно это сделано частично.

Дальнейшее улучшение это разделение клавиатуры на 2 части чтоб можно было самому регулировать уровень этой эргономичности.
Все эти клавиатуры также являются стандартными, но более удобны для набора текста.

После появились эргономичные клавиатуры где клавиши расположены внутри сферы, такие клавиатуры есть для двух рук или для одной левой или правой. Последние подходят тем кому не нужно набирать много информации и вторая рука всегда занята, например телефоном, и не редкость что одним.
Но все подобные клавиатуры не универсальны и не подходят для игр. Даже набор на них возможен только теми руками для которых они сделаны, а ведь обычная досочка более универсальна.

Поэтому было решено выбрать регулируемый наклон клавиш, это просто в реализации и клавиатура будет универсальной. Для игры не придётся чтото выдумывать, всегда можно сложить в полноценную клавиатуру, ну а если писать, но раздвинуть и набирать двумя руками нажимая каждой рукой на своей части.
Последний раз редактировалось Гость 13 апр 2016, 23:24, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 14 апр 2016, 00:08

Изображение

Ну и сама суть.

Клавиатура разделена 2 части для регулировки наклона, если что её можно соединить в одну стандартную.
Space разделён, я буду использовать CherryMX от RShift , это самые длинные.
Нумпад также на шарнире, но будет съёмным. Нумпад сделан в HEX , часто требуется набор в этом формате.


Раскладка стандартная QWERTY чтоб не создавать проблем для игр, не не нужна особая раскладка для латыни, я пишу редко и не больше нескольких слов. Но если она будет другой, в играх придётся переназначать клавиши, а это не всегда возможно.
Раскладка ЙЦУКЕН с небольшими изменениями.По легенде в отличии от английской машинной эта раскладка считается правильной. Мне всегда нравилось что буквы ПР стоят рядом, ведь это наиболее частые буквы которые пишутся вместе, но на моей клавитуре тут небольшая проблемка.
Буква Ё онаже ~консолька, убрана на её законное место после Ю. Сама же консоль в играх мне всегда мешала, да и клавиша часто путалась с esс .
Клавиши точка и запятая сделаны клайне тупо, постоянно их путаю, они будут отдельной клавишей, пока не знаю как.
Del как и Backspace только стирает в другую сторону будет ещё ближе чем на стандартной клавиатуре, очень удобная кнопка.
До PrtScr теперь не надо тянутся, этой кнопкой будет делаться крин в отличии от её бесполезного назначения. Программы её обычно не используют из за очень далёкого расположения.
В остальном стандартный набор как обычно.

Для игр часто требуются клавиши слева от основных игровых WASD. при этом есть куча бесполезных клавиш справа которые никто не использует. Так вот теперь они будут
ESC достаточно далеко чтоб случайно не нажать, и в то же время на старом месте.
Scroll Lock самая самая бесполезная кнопка, так что в этом месте она никому не мешает и ей никто не мешает.
Insert старался засунуть как можно дальше, нет ничего хуже чем включение этой функции при исправлении текста, непонятно зачем её вообще сделали.
Break на спектруме аналогично ESC , но на современных машинах не используется, так почему не быть тут.
4 кнопки навигации по станице которые толком и не нужны ведь есть мышка, теперь их можно использовать в игре.
Клавиши курсора слева ставят на место удобство игры в старые игры на клавиатуре. Многие игры и даже современные браузерные не играбельные без скрещивания рук, теперь этой проблемы нет.
В добавок не нужно бросать мышьку, и потом искать удобный хват после того как сдвинул курсор на один знак.
Чаще всего курсоры используют именно для того чтоб поставить курсор, когда мышкой попасть очень сложно.

Caps убран нанфик, хотя можно было и подальше, но в этом месте им будет удобно переключать язык.
Ctrl на месте старого капса, тут ему самое место, и в играх это не лишнее.

И ещё о размерах.
Колпачёк от капса уходит на контроль, вот только для нового капса придётся гдето поискать новый потому как контролевский велик.
Правый шифт уходит на пробел, нужно ещё гдето найти колпачёк на второй пробел.
Вот эта палка \ которая после квадратной скобки тоже длинная, нужно бы ставить маленькую, но пока сделаю плату под обе.
Если её ставить маленькую то интер будет великоват, хотя так даже удобнее, тоже сделаю оба варианта.
На правый шифт нужно чтото поискать.

Не хватает 6 колпачков для нумпада, они там вроде как все одного размера и больших проблем не будет.
Думаю добавить дополнительную кнопку 00 она же вторая точка, ну или сделаю костыль чтоб в ру раскладке была тоже точка.
+ придётся поставить маленький или попробую оставить что есть, но не влезет.
ентер наверно оставлю большой, место то есть.

С левыми регистрами посложнее они слишком разные, клавиши получаются горочкой. Покупать их отдельно одного размера дорого, сделать плату под все нереально. Сам размер тоже пока не понятен, придётся так и оставлять.

Вродебы пока всё. Пытаюсь развести первую плату так чтоб осталось место под плату с контролером. Теперь ещё задумался о подсветке, наверно остановлюсь на плоских светодиодах 2*5*5мм и подсуну их под колпачки, хотя не думаю что влезут.
Разводку светодиодов буду делать простой RGB матрицей 8*8 или даже 7*7, но наверно зарезервирую место под отдельные резюки чтоб если что порезать дорожки и сделать статичную подсветку чтоб не мерцала.
Управляться подсветка будет тоже отдельным модулем, надо както и его кудато уместить.

Хочется собрать побыстрее, но даже rgb 3мм светодиодом найти не удалось, придётся провести опыт с плоскими, хотя их мне кажется проще уместить.
Последний раз редактировалось 74LS00 14 апр 2016, 00:08, всего редактировалось 2 раза.

Аватара пользователя
r3n4m3
Мастер
Сообщения: 389
Зарегистрирован: 24 июл 2013, 08:47
Репутация: 17
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение r3n4m3 » 24 апр 2016, 17:12

Огромное спасибо что поделились вашей разработкой, с нетерпением буду ждать подробный процесс сборки, и первые фотографии))

Есть конечно несколько моментов, на которые хотелось обратить внимание: например ESC лучше отделить чутка от остальных окружающих клавиш, а то по своему опыту помню что путал его и нажимал случайно не то что нужно на Logitech с дополнительным рядом слева. И почему бы не сделать большой ENTER на нумпаде, место есть ведь)) Остальные больше на грани вкуса чем критики. В общем прекрасная работа, жду апдейтов.
Последний раз редактировалось r3n4m3 24 апр 2016, 17:12, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 31 май 2016, 17:16

Это будут отдельные блоки на шарнирах, пока думаю начать с нумпада чтоб было на чём отлаживать подсветку.
Большой ENTER предполагается, он и удобнее вроде, но думаю может NumLock поставить над правым рядом для прямоугольности?
Последний раз редактировалось 74LS00 31 май 2016, 17:16, всего редактировалось 2 раза.

Аватара пользователя
r3n4m3
Мастер
Сообщения: 389
Зарегистрирован: 24 июл 2013, 08:47
Репутация: 17
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение r3n4m3 » 01 июн 2016, 03:20

74LS00 писал(а):
31 май 2016, 17:16
...но думаю может NumLock поставить над правым рядом для прямоугольности?
Дауж, это почва для размышлений.
Последний раз редактировалось r3n4m3 01 июн 2016, 03:20, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 01 июн 2016, 17:27

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

Пока нарисовал макет. В этот угол под нумом поставлю контролер, ещё куда если только сверху ставить, под него всё равно место надо, а то бы можно было это кнопку просто отпиливать, а под энтером сделать опционально 2 кнопки.

Ещё думал приделать экран над нумпадом , загрузку проца смотреть типо таких, под него и контролер влезет и не один. Вот только высота такой клавы ещё подрастёт.

Ну и ещё один вариант, а на кой мне ваще этот нумлук. Кто нибудь им вообще пользовался хоть раз? На сколько знаю он только мешает когда выключается.
Когдато в древности венде эдак в 98 которая с usb и работать не умела, вроде как нум включал эмуляцию мыши. Думаю теперь там хватит обычной кнопки гдето сбоку.

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

Изображение

Клава для гиков, идея не нова Ultimate Hacking Keyboard
Последний раз редактировалось Гость 01 июн 2016, 17:27, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 24 июл 2016, 20:26

Есть некоторый прогресс по теме. Накаляках плату нумпада, подключил к ардуине, подправил прошивку. Ошибок там кучи, но со схемой она точно не совпадает.
Пишу скорее для себя чтоб не забыть. В програмировании не силён, и эту тарабарщину не понимаю, но такого тупого кода не ожидал. Это я о hid_liber/matrix.c но что есть то есть, я ещё худший кодист чем тот кто его писал.

Далее о ковырянии прошивки tmk_keyboard\orphan\hid_liber , потому как есть альтернативные.

Схема https://deskthority.net/wiki/HID_Libera ... structions
Для начала подправил led.c чтоб добавить светодиод.
Скопипастил строки выше, но он засветился в пол силы, на коте сказали что порт я не объявил, хотя где объявлялись остальные рабочие не понятно.
Дописал тогда для всех 3 светодиодов

Код: Выделить всё

DDRB |= (1<<7) | (1<<6) | (1<<5);
. В процессе оказалось что нум горит когда он отключен, хотя так это или нет не проверить, но всёравно поменял местами строки, получился такой кусок

Код: Выделить всё

if (usb_led & (1<<USB_LED_NUM_LOCK))
		PORTB |= (1<<7);
    else
        PORTB &= ~(1<<7);//port b7 12
Дальше оказалось что править код сложнее чем написать по новой. начал с keymap_ .h . Обозвал его keymap_korbord.h .
Для начала нарисовал свою клаву

Код: Выделить всё

 *                                                                            ,---.
 *                                                                            |Num|
 *,-------.   ,-------------------------.  ,-------------------------. ,---.  `---'
 *|Scr|Esc|   |F1 |F2 |F3 |F4 | |F5 |F6 |  |F7 |F8 | |F9 |F10|F11|F12| |Del|  ,---------------.
 *|-------|   `-------------------------'  `-------------------------' `---'  |  D|  E|  F| / |
 *|Ins|Pau|     ,-----------------------.  ,-------------------------------.  |---------------|
 *|-------|     |  1|  2|  3|  4|  5|  6|  |  7|  8|  9|  0|  -|  =| Backsp|  |  A|  B|  C| * |
 *|Hom|PgU|     |-----------------------|  |-------------------------------|  |---------------|
 *|-------|     |Tab|  Q|  W|  E|  R|  T|  |  Y|  U|  I|  O|  P| [ | ] | \ |  |  7|  8|  9| - |
 *|End|PgD|     |-----------------------|  |-------------------------------|  |---------------|
 *`-------'    |LCtr|  A|  S|  D|  F|  G|  |  H|  J|  K|  L|  ;|  '| Enter |  |  4|  5|  6| + |
 *    ,---.  |--------------------------|  |-------------------------------|  |---------------|
 *    |Up |  |LShift|  Z|  X|  C|  V|  B|  |  N|  M|  ,|  .|  ~|  /| RShift|  |  1|  2|  3|   |
 *,-------------------------------------|  |-------------------------------|  |-----------|En |
 *|Lef|Dow|Rig|Caps |LAlt|menu|  space  |  |  space  ||mouse2|RAlt|RCtr|PrS|  |  0| 00| . |ter|
 *`-------------------------------------'  `-------------------------------'  `---------------'
из этого сделал таблицу

Код: Выделить всё

 SLCK,  ESC,  F1,   F2,   F3,   F4,   F5,   F6,    F7,   F8,   F9,  F10,  F11,  F12,        DEL,     D,  E,  F, PSLS, \
  INS,  BRK,   1,    2,    3,    4,    5,    6,     7,    8,    9,    0, MINS,  EQL,       BSPC,     A,  B,  C, PAST, \
 HOME, PGUP, TAB,    Q,    W,    E,    R,    T,     Y,    U,    I,    O,    P, LBRC, RBRC, BSLS,    P7, P8, P9, PMNS, \
  END, PGDN, LCTL,   A,    S,    D,    F,    G,     H,    J,    K,    L, SCLN, QUOT,        ENT,    P4, P5, P6, PPLS, \
     UP,     LSFT,   Z,    X,    C,    V,    B,     N,    M, COMM,  DOT,  GRV, SLSH,       RSFT,    P1, P2, P3, PENT, \
 LEFT, DOWN, RGHT, CAPS, LALT, LGUI,  SPC, FN1,  RALT, RCTL, PSCR,                                  P0, P0,     PDOT  ),
Но поскольку заставить работать её не могу(нужно совпадение с другим файлом, а железа у меня нет), оставил только нумпад

Код: Выделить всё

  KEYMAP(\
             NLCK, \
 D,  E,  F,  PSLS, \
 A,  B,  C,  PAST, \
 P7, P8, P9, PMNS, \
 P4, P5, P6, PPLS, \
 P1, P2, P3, PENT, \
 P0, SLSH,   PDOT  ), 
Если что тут и будут переназначаться клавиши в теории, также тут создаются слои.

И самая сложная часть привязать железо к таблице через keymap.c
Тут пришлось подправить чтоб указать свой keymap_ .h , возможно другие потом вырежу из за несовместимости с моим железом.
Также нужно прописать это и в Makefile.lufa который я использовал.

Ноги указываются в одной строке, причём она должна быть неразрывной переносами, долго возился с этим синтаксисом пытаясь найти ошибки, но так и не смог.

Во второй часте строки указана вся таблица матрицы где указаны активные клавиши и их переменная для первой части этой строки, неактивные клавиши тоже должны быть указаны

Код: Выделить всё

/* 				P - PORT, AP - ArduinoPort ; pin11 miso - pin1 138 , pin10 mosi - pin2 138, pin9 sck - pin3 138
	P	AP
					0         1         2             3         4         5         6         7     
74138pin			15		  11		13	     	  9 		14		  10		12                  */ \
/* A 		*/   { KC_NO,     KC_NO,     KC_NO,      KC_NO,    KC_NO,    KC_NO,     KC_NO,     KC_NO  }, \
/* B 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* C 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* D 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* E		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* F		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* G 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* H 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* I		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* J 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* K 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* P 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* M 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* N 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* O 		*/   { KC_NO ,    KC_NO ,    KC_NO ,     KC_NO ,   KC_NO ,   KC_NO ,    KC_NO ,    KC_NO  }, \
/* P 	A2	*/   { KC_##KP0,  KC_##KP11, KC_##KP13, KC_##KP9, KC_##KP4,  KC_##KP10, KC_##KP12, KC_##KP7 }, \
/* Q 	A1	*/   { KC_##KQ0,  KC_##KQ1,  KC_##KQ2,  KC_##KQ3, KC_##KQ4,  KC_##KQ5,  KC_##KQ6,  KC_##KQ7 }, \
/* R 	A0	*/   { KC_##KR15, KC_##KR1,  KC_##KR2,  KC_##KR9, KC_##KR14, KC_##KR5,  KC_##KR6,  KC_##KR7 }  \
}
И тут началась путаница . Порты A-R не совпадают с линиями col по схеме. Пришлось находить их методом тыка карандаша по ногам в поисках признаков жизни. Ноги определились совсем не на тех выходах где ожидалось. Порты A0-A2 указаны для Arduino Leonardo.

Далее в первой части строки(да это всё ещё одна строка) указана матрица аппаратьных клвиш в томже порядке что и матрица в заголовочном файле, только тут написан номер железной клавиши, а там его назначение.

Код: Выделить всё

#define KEYMAP( \
			    KP10,\
KP7, KR5, KQ5,  KQ1, \
KP9, KR7, KQ7,  KQ6, \
KP11,KR9, KQ3,  KQ2, \
KP12,KR1, KR2,  KQ4, \
KP13,KR6, KR14, KQ0, \
KP4, KP0, KR15\
){ \
Тут написаны те самые переменные что и в таблице второй части.
Все переменные из первой части должны быть теми же что и во второй части и их количество должно быть одинаковым и равным клавишам в заголовочном файле.
Повторений переменных в keymap.c быть не должно, допустимы повторения значений только в заголовочном файле keymap_ .h. Каждая клавиша может быть только одной клавишей, а уже её значение может совпадать с другими.

В keymap.c оказалась и вторая засада, назначения портов 0-7 не совподает с линиями row1-row8 , они не совподают и с портами самого дешифратора, они вообще ни с чем не совподают.
Я уже проверял и по схеме, и даже менял входы дешифратора, но нужного не получил.
В результате пришлось подписать из правильнное значение, хотя в правильности я не уверен, исправлять пришлось методом тыка

Код: Выделить всё

15  11  13  9  14  10  12  7
Хорошо хоть второй раз сюда лезть не придётся хотябы на этой плате. Прошивка готова осталось собрать плату.

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

Конструкцию нумпада изменил, убрал клавишу нум за бесполезностью и нехватки места , вместо неё сделал боковую кнопку. Это дало возможность оставить большой энтер и собственно создало проблему с рамкой.
Подсветки пока не будет, оставлю только контакты на плате, если потребуется соединю проводами, места под платой много, а на плате совсем нет.
Дешифратор буду использовать из наших 555ИД7 (74138) поскольку буржуйского 74238 с прямыми выходами нет, а заказывать долго. Но в коде я не силён, пока буду ставить отдельный инвертор на 155ЛА4
Изображение
Последний раз редактировалось Гость 24 июл 2016, 20:26, всего редактировалось 3 раза.

Аватара пользователя
r3n4m3
Мастер
Сообщения: 389
Зарегистрирован: 24 июл 2013, 08:47
Репутация: 17
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение r3n4m3 » 24 июл 2016, 21:31

Очень приятно видеть что разработка не стоит на месте, и вы не забываете этим делиться.
Я думаю эта информация обязательно пригодится ребятам которые тоже подумывают о сборке кастомной клавиатуры.

PS: с нетерпением жду дальнейшего развития событий!
Последний раз редактировалось r3n4m3 24 июл 2016, 21:31, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 31 июл 2016, 04:55

Первая уродская фотка готова.
Изображение
Когда начал собирать что не так уж и страшен код и можно лишнюю деталь не ставить, но ну его нафик, пока недоделано не мешает, а там видно будет.
Над клавишами стоит пара микросхем, кнопочка со светодиодом и разъём. Это место можно было сэкономить и оставить только разъём, а остальное под плату, ну это уже эстетика, а надо быстро и дешевле.
Ещё вариант поставить smd и нум кнопку свободное место, но это тоже фигня.

Стабилизатор поставил на отдельную рамку, да вот оказалось что размер на копейку меньше чем в старой клаве и он начал работать туга, по началу это был светодиод. Но подправив светодиод оказалось что не только, попытки подогнуть стабилизатор привели к томуже самому, вот только теперь он стал кривой. Но теперь у меня есть ещё 2 в запасе, сделаю другую рамку.
Рамка решает проблему бутербродного крепления переключателей. Теперь снять переключатель проще, не надо его отпаивать и выковыривать. Так было бы еслиб я не всодил светодиод, хотя возможно он и не мешает.
И тут внезапно появилась проблемка, поскольку у переключателей нет направляющих для платы они стали немного криво, да и сверловка в плате не идеальная, надо было сразу новое сверло покупать и лучше карбидное если такие есть на 4мм.
Под клавишами есть отверстия сброса мусора, но врятли они спасут от грязи, а выковыривать её теперь придётся глубже.

Корпус решил сделать как на форуме, просто по кругу сделал отверстия, возможно поставлю рамку или стенки, в идеале вокруг клавиш должны быть края.

Не хватило нескольких переключателей, парочку содрал с нума и паузы, кое что пришлось убрать.
Минус и плюс поставил из резервных к клавиатуре потому как минус оказался не того ряда и я его поставил вместе с нумом в шестнадцатеричный ряд. На это место тоже поставил резервную, также и с нулём. Теперь нужно докупать набор колпачков и десяток переключателей что тянет на 2к денег что примерно половина механической клавы.

На всё дело потратил дня 2, но подсветки и ног нет, так что не попользуешься.

Для подсветки доработал переключатели, снял крышку , просверлил в углах отвестие 1мм, и маленьким концелярским ножом срезал обе стороны. Потом отгибал крайние ноги светодиоду и ставил в отверстия для светодиода и диода, те самые 4 дырки. Светодиод пришлось сильно погнуть чтоб отцентровать, после придерживал и паял.
Светодиод создаёт дополнительную прочность крепления клавиши, потому как её контакты не очень прочные.
В любом случае центровку это не улучшило потому как сам светодиод фактически висит.
Если светодиод не затолкать он упирается в перегородку колпачка и сильно стучит.

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

Переключатели решил приклеить на казанский силикон известный своей прочностью, предварительно обезжирил переключатель и плату. Не то чтобы он сильно держит, но с ним будет проще отлепить чем при использовании клея.

Ну и по прожорливости. Микросхемы стоят 555ид7 и 155лач которая много жрёт, поэтому её подключил через пару диодов. Жрёт платка около 12ма (-1ма на каждую из 3 линий) это без учёта самого контролера и светодиодов.
Хоть и не много, если учесть что светодиоду надо 10ма, то полная клава будет жрать до 3а и тут надо выдумать какойто щядящий режим с не яркой подсветкой или не сильно цветной

Написал чтото непонятное, может потом разберу, паял эту хреновину 2 дня без перерыва, не то чтобы целые, но по пол дня подряд точно

-----
Выяснилось что прошивка всего 6KRO , это не мало, но меньше чем заявлено. Попробую собрать альтернативную
Последний раз редактировалось Гость 31 июл 2016, 04:55, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 06 авг 2016, 21:06

Продолжаем допилку. Взял прошивку с конфигуратором, она уже полное NKRO чего и требовалось, накидал макет, пока как обычно работает только нумпад.
Перелопатил свой git так что возможно старые ссылки померли.

Изображение

Для сборки нужно Atmel Studio 7 занимает около 800мб, и
Python 2.7 (хотя в файлах мелькает и 3 версия), его нужно прописать в path .

Софтина запускается из папки EasyAVR через батник run.bat(в моём случае он без консоли, консоль в run_log.bat).
После выбираем в меню файл первую строчку и выбираем korbord(или его нумпад, поскольку основная прошивка недоделана и просто не работает).
После выбираем через тоже меню build firmware и указываем куда сохранить прошивку с новым назначением клавиш, там ещё есть режим програмирования, но у меня он не работает.
Для упрощения переназначения можно использовать меню view picker.
Остаётся только зашить прошивку и тестировать, я использую avrdude с stk500(типо самопал, проект ещё не выкладывал) потому как у меня оно есть и работает, в отличии от этих всяких.

Подгонял под своё железо правкой только одного файла EasyAVR\keymapper\easykeymap\boards\_korbord.py который был скопирован из какого то filco hld. Также этот файл был добавлен в __init__.py в этой директории.
Ещё попытался русифицировать клавиши в scancodes.py , как по мне не очень, но так и оставил. На скринне этого не видно, он сделан раньше.

Поскольку готов только нумпад то и выбирать нужно только его, и далее о korbord_num.py .
Параметры.
hw_boot_key как я понял надо включить для прошивки через dfu, но я так и не смог запустить контролер после прошивки, возможно не так подключена нога.
кототема http://radiokot.ru/forum/viewtopic.php?f=57&p=2824286

num_cols количество линий, это максимальное число, я отдал одну под светодиод, поэтому пришлось подправить. Если в таблице будет число больше этого прошивка не собирается.

matrix_hardware , matrix_strobe , matrix_sense , bl_modes хотел бы я знать что это
кототема http://radiokot.ru/forum/viewtopic.php? ... &p=2826165

Код: Выделить всё

# (горизонталь кнопки, вертикаль кнопки), (?выходы дешифратора, входы контролера)  
# цепочка входов по схеме нумпада
# A0 = 20 = PD2 - 3,4,5   != 3D2_6  = 16
# A1 = 21 = PD3 - 9,10,11 != 3D2_8  = 15
# A2 = 19 = PD1 - 1,2,13  != 3D2_12 = 14
#
# номер порта дешифратора | выход дешифратора | номер порта в коде
# Y0 = 15 = 0
# Y1 = 14 = 4
# Y2 = 13 = 2
# Y3 = 12 = 6
# Y4 = 11 = 1
# Y5 = 10 = 5
# Y6 = 9  = 3
# Y7 = 7  = 7
то что удалось определить по строке типа
((4, 4), (5, 14), 'HID_KEYBOARD_SC_NUM_LOCK'),
в первых скобках размер графической клавиши как на фото сверху.
Во вторых номер линий кнопки, если там написано чтото не внятное, то прошивка вообще не работает.

Как мне показалось порты дешифратора совпадают с прошлой прошивкой, но со схемой всё также нет.
Хорошо их не так уж и много и можно найти методом тыка.

incorporate.bat - пересобирает прошивку. варианты под разные контролеры лежат в EasyAVR\keymapper\easykeymap\builds для модификации.
Рабочая только та которую выдаёт программа через меню сборки.

py2exe.bat теоретически создаёт exe приложение, но там чтото надо настраивать. Заставить это работать у меня не получилось.

package.bat собирает программу в EasyAVR\keymapper\dist выкидывая всё лишнее, полезность сомнительна.


Внешние ссылки по которым помощи не нашлось, хотя были подсказки.

Питоноводы не заинтересованы и предложили учить язык.
Проблема в том чтоб мой програматор не дописан, да и другие как оказалось не работают http://python.su/forum/topic/30519/

Спросил совета у котов, но явно не там спросил.
Ожидал хоть какуюто подсказку, но видно самому http://radiokot.ru/forum/viewtopic.php?f=9&t=134177

Явно не поможет, но это обзор на клавитуру которую я потихоньку ломаю, нумпад уже разобрал, пусть модеры потрут ссылки если мешают http://emuparadise.ru/forum/4-769-1
Спойлер
админы почему этот тег не работает, его уже и на казусе включили, потому что невозможно без него стало
Сейчас заказал кнопки Gateron MX , вроде как хороший клон, но что мне показалось интересным там есть щель для rgb плоского светодиода, которую я в оригиналах вырезал.

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

Подозреваю цена клавы выйдет под 7к деревянных и это с учётом что я купил на разбор больше 100 кнопок всего за 3к ещё давно.
Естественно цена будет ниже, но всёже, придётся потрудится над дизайном, как сейчас оценили фото нумпада как какоето старьё не учитывая что камера фуфло и блок недоделан.
Подсветка пока тоже в теории. Покидаю город и както уже пофиг на лампочки, хочется разобратся со вторым блоком, а там тоже затуп с расположением, а именно клавиша enter, похоже её ещё и склеить самому придётся, готовое решение не устраивает.
Последний раз редактировалось Гость 06 авг 2016, 21:06, всего редактировалось 3 раза.

Аватара пользователя
r3n4m3
Мастер
Сообщения: 389
Зарегистрирован: 24 июл 2013, 08:47
Репутация: 17
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение r3n4m3 » 11 авг 2016, 00:27

прекрасный обзор, очень было интересно наконец почитать как делается работа через программы. Было бы классно оформить все это в итоге в мануал))
Последний раз редактировалось r3n4m3 11 авг 2016, 00:27, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 13 авг 2016, 12:22

Вы о видео демонстрирующем работу программы?
Я не любитель видео монтировать, но чтото может сделают, после того как всё будет собрано, раньше нет смысла, да и прогу толком не изучил. Пока что менял только пару кнопок местами, медленным способом.

Сейчас не в городе, всё что могу рисовать плату. Пока накалякал вторую, пока много недоделок, но места нет.
Изображение
Клавиатура будет раздельная, но должна соединятся в одну без шва, поэтому места под боковую подставку нет, может чуть сбоку сделаю.

Не влезают диоды для понижения прожорливости 155лн1, место то есть, но там и так много дорожек , а на верхний слой не хочется, лишняя возня с платой. Без инверторов прошивку собрать чтото ума не хватило. Если только экспериментировать, но сейчас нет железа.
Я уже думал может стоит под них эти 2 детали у нумпада снизу платку поставить , но теперь вспомнил что кудато и контролер подсветки ставить, а каких он размеров я не знаю.

Поскольку на плате есть пустоты между кнопками в отличии от нумпада, то тут и засунул микросхемы, плата получилась ниже.

Использовал 6 линий, осталось доступным ещё 5 кнопок, но под них нет места.
Хорошо бы кудато поставить мультимедийные, но пока попробую зарезервировать ноги.
У платы как и ожидалось 11 ног, но с подсветкой также никак, только контакты светодиодов.
Деталей утолкал просто немеряно, из за того что делаю одной стороной, пришлось навешать почти пол сотни пофигисторов (49) (продают их минимум по 100), придётся наверно ставить других размеров.
(В запасах 0805 под которые и чертил, но это размер 1206 коим тут тесновато, но их проще паять).

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

Сверху длинная клавиша backspace (или как говорят по нашему "забой") точно над ней как и планировалось delete (задний забой? :D) .

Ниже кнопка палка "|" , со старым колпачком будет выпирать, но можно поставить короткий, пока в приоритете стандартный длинный. Это кнопка верхняя палка, нижняя будет висеть на другой линии, на случай если эту не ставить, а над ней окажется enter .

Enter в компактной версии планировал поставить колпачок от таба или палки, но поскольку не знаю их угол, отлад приоритет стандартной длинной.
В любом случае в новом виде она не будет выпирать даже длинная. Выкинув верхнюю палку можно будет подклеить enter до стандартного как у старой доброй ibm клавиатуры.

Следующий ряд заметно отличается. После Ю вместо вопроса идёт Ё (ёльда :)) , и только потом вопрос. Это скорее росийская адаптация под то как было всегда на машинках, ну а вопрос надо же кудато.
Дальше идёт нижняя палка "|" на тот случай если верхней нет места, а если оставить верхнюю, то на эту можно и чтото другое повесить.
И тут уже идёт r_shift на который возможно подойдёт колпачок от палки или таба если там нужный угол(возможно вверх ногами). Или парвому шифту придётся стать маленьким. Польза от этой кнопки не большая, я набираю заглавные буквы одной рукой, и ещё он нужен как регистр для enter для перевода игрового чата в другой режим.

Низ который получился. На space будет колпачок от r shift , пробел будет с каждой стороны клавы, тут нужен второй набор колпачков.
FN2 FN3 будут запрограмированы как win и ПКМ как то и было всегда, или както ещё.
Это и привело к увеличению длинны клавиатуры и неровности правой стороны. Из за того что я решил использовать колпачки нижнего ряда, вместо других. Хотя FN2 сделал маленьким. Может не очень удачно делать маленький рядом с пробелом? .
В самом правом крае PrintScreen , удобное место делать скрины всяких читаком, и это расположение противоречиво относительно концепции.

Клавиатура должна быть такой формы чтоб правый нижний угол был короче верхнего, тут же получается наоборот, к чертям вся эргономика. так что даже не знаю что тут можно сделать. не меньше подобная проблема и с другой стороны, но частично.

Пока писал на древней плёночной часто долбился по F11 F12 вместо BS , так что думаю может увеличить расстояние между функциональным рядом и цифровым. Понятно что у механики оно вдвое больше, но так можно увеличить высоту клавиатуры до высоты нумпада (который хорошо бы сделать наоборот поменьше) и в большее пространство уместить больше деталей, хотябы диоды инвертора, хотя не уверен что они влезут.

Написал всё что вспомнил, сейчас времени нет. Пока потихоньку начинаю рисовать второй кусок(точнее он первый). Раз недождался нигде ответа, сделаю его автономным, а остальные будут подключатся к нему. (Или потом докуплю контролеров и тут вылазиют другие проблемы ну да пофиг).
Поставлю туда контролер, хаб и програматор чтоб перешивать не выводя из рабочего режима, ещёб туда добавить и диск с резервной прошивкой чтоб восстановить если что.
Пока не представляю как сделать диск, картридер наверно прилеплю, но как включить защиту записи.
Хорошо если это всё влезет на плату, мне кажется делать отдельную, но думаю места хватит если на отдельный блок, клавиатура большая, рядом и блок подсветки будет.

То что подсветка будет отдельно да и сам модуль скорее плюс, может мне захочется сменить платформу или просто спалю контролер, проще будет сдуть и если что заменить плату. Кароче бесконечный ресурс апгрейда, вот только когда горсть контролеров заметно вырастает и цена .
Последний раз редактировалось Гость 13 авг 2016, 12:22, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 15 авг 2016, 06:20

Напишу малость о монтаже.
В моей конструкции 3 платы самой клавиатуры, платы контролеров это отдельная тема.
По задумке это должна быть матричная клавиатура с матричной подсветкой.
Верхний слой платы сплошная медь, потому как вблизи катушки теслы моё плёночную не слабо уносило, а я могу и замутить чтото эдакое. В добавок плата будет самодельной, она большая и производство будет дорогим, а нужно ли тратить кучу денег для экспериментальной платы, тем более что их нет и стоить это будет как сама клавиатура.

Фактически это многоуровневая матрица на матрице, а если точнее 4 матрицы. Всё это ведёт к тому что горизонтальные линии будут пересекаться многократно. Для таких целей обычно используют двухсторонние платы.
Но в моём случае плата самодельная, а двухсторонняя требует металлизацию или проходные соединения.
Сложность в том что верхняя сторона плата покрыта переключателями, а между ними сливные отверстия и разместить переходы между деталями просто некуда. Разве что между отверстиями, но тогда некуда пускать дорожки, и не забываем что верхний слой отдан под экан, да и вытравливать 2 стороны тоже трата времени, тем более что тут без фоторезиста уже не обойтись.

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

Тут можно было бы пойти альтернативным способом и напаять перемычки на верхнюю сторону. Не то чтобы это сильно нарушит экран, но это сделает возможность слива чая или пива или чтоб попадёт хуже. Будут лишние окисления, застревания грязи.
В добавок с поверхностными соединениями не нужно сверлить дырки и искать гдетото провода, мне проще заутюжить плату и напаять кучу деталей чем сверлить дырки и гнуть провода.

Если или когда плата будет отлажена и попадёт на производство, я нарисую другую плату уже со вторым слоем, с метализацией где матрица подсветки будет соединена и может даже найду для неё разъём.
Детали будут smd все что даст больше места дорожкам, а нумпаду и уменьшит высоту.
Может даже дойдёт до того что и сам контролер станет на плату, а то может и на каждую, что сделает клавиатуру рублей минимум на 600 дороже.
Вот только в совместимости прошивка заводских плат и моей утюжной я очень сомневаюсь.

Пока накалякал большую часть левой платы, с левым шифтом сильные непонятки, не определюсь с размером.
Контролер на плату влезает, но ставить не буду потому как не нахожу места под разъёмы
Изображение

Статистика по деталям.
На нумпад ушло 17 пофигисторов, на правый кусок 49, на левый пока 45, но будет больше.
Так что для сборки надо и пофигисторов и диодов брать сразу 2 сотни, и пластиковый пинцет для них, а то наша аптечная нержавейка слишком магнитная
Последний раз редактировалось 74LS00 15 авг 2016, 06:20, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 16 авг 2016, 16:54

Малость фоток наделал.

Нумпад в чуть лучшем качестве:
морда, зад , сбоку лучше всего получилось, пыли не видно
Изображение Изображение Изображение
Бока из плекса, желтизну не стереть, буду обклеивать. Снизу по краям намазан момент (хотел приклеить резинку от шарика), не то чтобы держится, но без него скользит по столу так что невозможно нажимать.
Сбоку видно на сколько надо поднимать от стола до нужного угла.

Рамка из текстолита на которой стабилизатор, как оказалось крайние дырки надо делать дальше
Изображение

Растопыренные ноги светодиода (по тех условиям так делать нельзя), в крышке переключателя вырез под него, гайд нарисовал но пока не сделал, там пара картинок есть
Изображение
Последний раз редактировалось Гость 16 авг 2016, 16:54, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 18 авг 2016, 07:48

Фтопку наработку, маленький шифт справа неудобно выходит, слишком много кнопок.
Del будет сверху ещё правее чтоб было место под дешифратор.
Под ним backspacr под несуществующий размер r4 1x1.25 поэтому пока одену маленький. Сьавили же раньше маленький, только теперь/тогда он будет дальше от \ .
|u нафик , сверху будет доклеен стандартный enter
Правый шифт будет ещё один enter без доклеек в итоге получаем ровный ряд.
Низ:
пробел из правого шифта будет сдвинут за плату при сдвиге плат или будет чуть торчать слева.
альтернативно поставить от левого шифта и слева будет чуть пустоты.
всё это дало сдвинуть кнопки чуть влево.
Тут ставим длинную кнопку типо win потом одну маленькую функциональную, ещё парочку длинных ctrl alt и в конец короткую PrtScr .
В итоге имеем ровный правый ряд.

Проблема только что надо будет подклеивать backspace который стал по длине как tab.
Переразводить половину плату чтоб уместить дешифратор.

Ещё раз итого:
Слева торчит пробел,
нет ещё одного колпачка enter r2 1x2.25 ,
нет несуществующего колпачка для backspace r4 1x1.25 .

Прилеплю списочек чтоб не забыть, и картинка (оригинал odt в гите)

Код: Выделить всё

стандартные клавиши
колпачки не совместимы по рядам, у всех есть низ.

r4 1x1	esc	f1-f12 3sys ~ 1-9 - = ins-pgup num / * - верхние ряды
r3 1x1	q-p [ ] del-pgdn n7-n9 первый знаковый ряд
r2 1x1	a-d g h k l ; ' n4 n6 второй знаковый ряд без метки
   line f j второй знаковый ряд с меткой
   dot	num5 второй знаковый ряд с меткой уентр нумпада
r1 1x1	z-m , . / cursor n1-n3 nd третий знаковый ряд, курсор и точка нумпада

r1 1x1.25	ctrl win alt нижниий функциональный ряд
r3 1x1.5	tab \ крайние знаки первого ряда
r2 1x1.75	caps 
r4 1x2		backspace
r1 1x2 		num0
r2 1x2.25	enter
r1 1x2.25	Lshift
r1 1x2.75	Rshift

iso enter	
r3 2x1		num+
r1 2x1		num_enter
r1 1x6.25	space
Изображение
случайно наткнулся и на такую картинку , но там явно ряды попутаны
Изображение
Последний раз редактировалось Гость 18 авг 2016, 07:48, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 19 авг 2016, 07:03

Статейка с картинками
ISO versus ANSI versus Non-Standard ENTER keys
Есть нестандартные enter, но найти их сложно, похоже это было на старых моделях.
Изображение
В вики о британских и американских клавиатурах этих клавиш нет.
Как получилась такая клавиша не понятно, но судя по теме J-Shaped Return Keys цель была забить пустое пространство на машинках. Сама же клавиша была каких угодно размеров, прямоугольных вертикальных, почти квадратных, горизонтальных с затычкой, так и пришли к тому что она стала как вертикальной так и горизонтальной.
ИзображениеИзображение
На первой механике вообще не парились и поскольку верх был сферическим, просто делали всего 3 типа клавиш, точнее 2 одинарные и двойные, пробел мог быть отдельным сложным механизмом.
Изображение

К чему это, наверно к тому что всё это в моём случае не подходит.
Bigass или big-ass как его тоже называют, в коротком случае ширина верха равен 1 , а в длинном 1.5 , мне же надо 1.25 . Попробую узнать у китайца размер, но по замерам уже не сходится.
Возможно чтото получится если вернуть длинный backspace.

Длинный enter создаёт проблемы с размещением палки, на что попалось интересное решение.
Изображение
RShift сделан левее \| , в моём случае его можно поставить 1.25 из оставшегося от нижнего ряда. Мне кажется это более логичным чем использовать enter r2 как шифта, какбы его не скрючело.

Какието 2 (или 3) кнопки мешают начать делать плату.
Последний раз редактировалось Гость 19 авг 2016, 07:03, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 22 авг 2016, 19:43

Запилил вторую плату, оказалось что свёрла 3, 4 выдерживают дырок 30-40 , на одну плату не хватает.
Заодно изломал 3 карбидных сверла 1мм, руками сверлить эт не дело. Попробую теперь намотать на них нитку с эпоксидкой чтоб укоротить, да опору не придумал.
Кароче в итоге вышло дырок 400, на этой плате я понял что лучше на производство, это ещё хорошо что сделал всё на одной стороне. Пришлось только дорожку питания ножовочным полотном выпиливать, хотя хотел просто проводок подпаять.

Прошивку ковырял долго, опять старые глюки были, но вот что плохо так это порты леонарды D3 D7 так и не нашлись, пришлось лопатить под другие, в итоге всё равно всё переделывать под плату контролера, ну хотяб номера найду.

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

Подолбил кнопки на своём нумпаде и на клаве, моя поделка намного тише и это она ещё без шумоизоляции
Последний раз редактировалось Гость 22 авг 2016, 19:43, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 26 авг 2016, 14:28

Долго лопатил прошивку, но оказалось всё проще , список ног в коде выше в том самом порядке, проверил парочку, так оно и есть.

Код: Выделить всё

matrix_sense = [
# Порядок портов
#      Port        Pin mask
    ( REF_PORTB , (1 << 4) ),
    ( REF_PORTC , (1 << 6) ),    #1
    ( REF_PORTC , (1 << 7) ),
    ( REF_PORTD , (1 << 0) ),
    ( REF_PORTD , (1 << 1) ),    #4
    ( REF_PORTD , (1 << 2) ),
    ( REF_PORTD , (1 << 3) ),
    ( REF_PORTD , (1 << 4) ),
    ( REF_PORTD , (1 << 5) ),
    ( REF_PORTD , (1 << 6) ),
    ( REF_PORTD , (1 << 7) ),
    ( REF_PORTF , (1 << 0) ),
    ( REF_PORTF , (1 << 1) ),
    ( REF_PORTF , (1 << 4) ),
    ( REF_PORTF , (1 << 5) ),
    ( REF_PORTF , (1 << 6) ),
    ( REF_PORTF , (1 << 7) )
]
Как оказалось я чаще попадаю по Ь чем по Т, и поменял эти кнопки местами.
Поскольку клаву положил сверху на место старых кнопок, функциональный блок пришлось разобрать, эти кнопки назначил на второй слой, но какже не хватает левого Fn . Причём их не хватает больше чем функционального блока.
Медиа кнопки тоже сместил.
Изображение

Раз уж клава лежит сверху, ноги пока делать не буду, сначало надо вторую плату.
У платы сложности с разводкой, наверно опять нафигашу пофигисторов.

Нашёл новую функцию светодиоды, хотел раньше 2 поставить, но теперь думаю платку для светодиодного модуля поставить, хотя ног не много, 4 или 5 наверно.
Я бы и вовсе экран прибабахал, но в кодинге пока не силён, на и приделывать тут много.

Вот думаю а может быть мне к контролеру паралельный програматор приделать намертво чтоб за секунду шил
Последний раз редактировалось Гость 26 авг 2016, 14:28, всего редактировалось 3 раза.

Аватара пользователя
r3n4m3
Мастер
Сообщения: 389
Зарегистрирован: 24 июл 2013, 08:47
Репутация: 17
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение r3n4m3 » 06 сен 2016, 16:39

Только-только нашел время прочитать все ваши посты, жуть как же выдергивает из жизни подготовка людей к новому сезону.
Как говориться Winter is Coming! :D

Очень интересный опыт, как обычно жду с нетерпением продолжения.
Последний раз редактировалось r3n4m3 06 сен 2016, 16:39, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 08 сен 2016, 18:09

В коментах Тимура Сидельникова предложили интересную клаву со смайлами.
CBR Simple Smile S8 имеет 20 клавиш нумпада, какоето переназначение там тоже вроде как уже есть, комуто может не понравится что все кнопки маленькие, но это уже кое что.
В низу кнопка 00 , над enter непонятная кнопка 000 , над которой ещё одна кнопка, этот момент уже неудобен.

Изображение

Также нашлось и нечто огрызкоподобное но уже на 24 кнопки, хоть и не полноразмерное CBR Simple S12 .
Зовётся это смайло блок, стоит как и клавиатура, расположение такоеже, отличие только в 4 доп кнопках которые ну очень мелкие.
Не понял как у полноразмерной, но одной из кнопок там явно пожертвовали в пользу выключателя смайлов который ещё и софтовый.
Как по мне так этот вариант хуже.

Пока не в городе пишу на раздолбаной механике и вдумываю альтернативу.
Пока думаю купить какуюто небольшую клаву и приделать свой контролер.
Ещё вариант сделать на нормальных переключателях но с меньшим количеством, выкинуть f1-f12 и нумпад, получается около 70 переключателей что по цене гдето 2,5к. Эта версия вышла из статей где искали клавиатуру которую можно держать одной рукой, ну и для экономии переключателей, например сейчас мне дико мешает f11, f12 я отключил в браузере через какоето дополнение.
Но это всё будет когда сделаю основную или так и останется в теории.

Посмотрел готовую механику, попалось Leopold FC210TP , 21 кнопка уже интереснее, но за 60 баксов, не очень то и надо. Хорошо хоть кнопок 21 что уже самый минимум, потому как 20 явно маловато.
r3n4m3 писал(а):
06 сен 2016, 16:39
Только-только нашел время прочитать все ваши посты
да там и читать нечего толком. Раньше я забуду чтото и полезу в гугл, вот и найду себя

На главную проекта на гитхабе поставил скрин с проги с почти правильной раскладкой. Непонятки только с нижним рядом, но они переназначаются. Сейчас затуп как вшить все функции в слой.
Эта раскладка которая описана в конфиге для прошивки и доп функций там нет. Доп функции сохраняются в файл слоёв который надо создать вручную и уже новую прошивку открывать из этого файла. Вроде как получается то что на скрине только 1 раз и требуется как базовый шаблон для проги
Последний раз редактировалось Гость 08 сен 2016, 18:09, всего редактировалось 3 раза.

Аватара пользователя
r3n4m3
Мастер
Сообщения: 389
Зарегистрирован: 24 июл 2013, 08:47
Репутация: 17
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение r3n4m3 » 08 сен 2016, 21:13

Поглядел скрин на гитхабе, вы сделали F# клавиши по четыре ряда.

Это так специально задумано чтобы не промахиваться (это про расстояния между ними) и значения F# клавиш не совпадают с нижестоящими цифрами чтобы уровнять количество нажимаемых F# клавиш на обе руки?

Можно ведь расставить их так, чтобы они соответствовали значениям цифр. Меньше придется запоминать, цифры то известно где, а "F11" и "F12" будут соответствовать "-" и "=". И пусть неравномерно, все равно не так часто используются.
Последний раз редактировалось r3n4m3 08 сен 2016, 21:13, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 08 сен 2016, 22:33

Клавиатура состоит из 2 частей по возможности ровных в центре, с пробелом не получилось, я его после делал да и выбор там не велик.
На скрине в программе виртуальный промежуток в 1 юнит меньше там никак, если посмотреть на картинки из папки PCB, то видно что платы соединяются вплотную и клавиши будут близко как на обычной клавиатуре.

Клавиатура задумывалась как и игровая, а F5 и F7 самые ходовые кнопки, ну когда то так было, теперь то сейвы в играх ненужны. Это расстояние между f4 f5 и f8 f9 (у меня оно 8,73мм) изначально сделаны для удобства чтоб не нажать куда не надо как это метки на F, J, num5 , ну а то что их 12 это так ibm захотелось, не делать же лишние хотя прошивка это может.
Это расстояние я решил также оставить, а если клавиатуру раздвинуть то и эти кнопки для сейвов будут всегда скраю.

Возможно для слепого набора двумя руками и было бы удобнее расположить их над цифрами, но они не так уж и часто требуются чтоб это делать. В играх нужна только левая рука, может ещё браузер обновить, а так на кой их ещё я не знаю.
Сейчас пишу на Genius K627 где эти кнопки виртуально отделены от основных, но реально всё теже 3мм как и между любыми другими, и постоянно попадаю на f11 f12 при попытке нажать backspace. Так что и с цифрами можно попутать, иногда только по этим пропускам на ощупь и отличаю их от цифр.

В случае игр иногда применяются цифры или функциональные кнопки. В рапельз используются 12 цифр 4 раза используя модификаторы, после были добавлены ещё 4 рада слотов дефолно не назначены, возможно под функциональный ряд. Но в самой игре 12*8 слотов всже маловато, хорошо бы их было пара сотен.
Мне попадалась игра может даже дота, она не использовала алфавитные кнопки, ходьба только мышкой, но слоты там были на функциональные кнопки что неудобно потому как далеко тянутся.
В панзаре используются f1-f8 дефолтно, но это банки и эмоции. Разработчики точно тестируют такие мелочи и критической ситуации нащупать f1 проще чем какуюто цифру. Там есть ещё 8 игровых слотов, но поскольку в игре управление на wasd, то эти скилы выгоднее ложить на цифры или на другие удобные клавиши, такие как клавиши мышки, f, r, q , но ближайших обычно не хватает и парочка таких как 2, 3 используют цифры.

Если вы игрок в такнки или какуюто прогу знаете вроде некрософт офиса 11 где эти кнопки нужны, то напишите зачем и как, их расположение всё таки не эстетическое, а для удобства.

На скрине не видно что эти кнопки расположены на пол клавиши выше других, посмотрите лучше на саму плату, в каждой из 3 плат есть папка с картинками. Внутренний белый контур переключатель, внешний сама клавиша с нижней стороны.

Если будет мини версия клавиатуры их запоминать не придётся, я их просто уберу для экономии
Последний раз редактировалось 74LS00 08 сен 2016, 22:33, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 24 сен 2016, 16:31


Интересная реализация подключения кабель.
microusb фуфло, но тут он подключается под клавитурой и фиксируется, в случае нагрузки он просто выдернется.

О подобном я и подумать не мог, ведь я использую обычный стол, а не тесный комповый. Автор очевидно не использует задвижку под клаву и ложит прямо на сам тесный стол.

Даже не знаю стоит ли запариватся с таким подключением. Делать крепление мне не хочется, к томуже нет корпуса. Скорее всего оставлю usbb на краю платы, на нормальном столе это не мешает.
Или использую кулермастерсую задумку и буду подключать кабель просто внутри клавиатуры, а уж как крепить кабель не важно.

Corsair Strafe RGB на томже канале.
Как я понял в этой клаве 2 кабеля, первый к самой клаве, а второй просто как удлинитель и идёт к дырке на клаве. Это скорее минус, неужто всем надо усб в клаву совать
Последний раз редактировалось Гость 24 сен 2016, 16:31, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 30 сен 2016, 02:00

Почти собрал левую плату, нет шифта и пробела, стабилизаторы надо вырезать из старой клавы.
Пишу непонятно что, может потомучто ползает по столу.

Ctrl+V както непривычно с контролем на месте капса, надо чтото другое делать, может быть сделаю подслой через Fn.

----

Дособирал клаву, а именно добавил 2 недостающие кнопки со стабилизаторами.
Потратил день на ковыряние, наверно минут по 20 каждый, вырезал из старой рамки, думая что там ровнее чем я сам выпиливал.
Результат ещё хуже, эти costar stabilizer требуют ювелирной точности даже большей чем у самой клавиатуре, выкинул их нафик.
Теперь наверно закажу оригинальные, место под установку есть хотя и нет точного размера, буду вырезать по месту.
costar stabilizer дерьмо, совершенно непригодное для самодельной клавиатуры.

Изображение
Последний раз редактировалось Гость 30 сен 2016, 02:00, всего редактировалось 3 раза.

Аватара пользователя
r3n4m3
Мастер
Сообщения: 389
Зарегистрирован: 24 июл 2013, 08:47
Репутация: 17
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение r3n4m3 » 05 окт 2016, 13:39

Тоесть будете ставить Cherry-подобные стабилизаторы? или прям от Cherry?
Последний раз редактировалось r3n4m3 05 окт 2016, 13:39, всего редактировалось 2 раза.

Аватара пользователя
PinkFloyd
Любитель
Сообщения: 92
Зарегистрирован: 26 янв 2016, 22:05
Репутация: 5
Откуда: Оренбург
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение PinkFloyd » 05 окт 2016, 14:44

74LS00 писал(а):
08 сен 2016, 18:09
Посмотрел готовую механику, попалось Leopold FC210TP , 21 кнопка уже интереснее, но за 60 баксов, не очень то и надо. Хорошо хоть кнопок 21 что уже самый минимум, потому как 20 явно маловато.
Бывают подобные штуки и у китайцев. Например такой на 22 кнопки.
Последний раз редактировалось PinkFloyd 05 окт 2016, 14:44, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 06 окт 2016, 02:13

Тоесть будете ставить Cherry-подобные стабилизаторы? или прям от Cherry?
ктож их знает какие они, продаёт один китаец. Раньше были только прозрачные, теперь чёрные появились их и возьму они крепче, но это ещё 10 баксов.
пока без них с левой , их 2 и надо на шифт и пробел, на правой самоделки из текстолита.

Зря я компактности добавил на левый край. Надо было чтоб перед пробелом было 3 кнопки 1,25. Alt, Fn и какой нибудь флажок, а потом чуть отступа и стрелки. У меня оно получилось 2 кнопки и отступ, но под шифтом не хватает большой кнопки, а стрелки неудобны. Кароче в панзар играть неудобно, там был блок на ctrl которого тут нет, хотя я придумал другую раскладку.
Хотя расчёт был на повёрнутую клаву, а у меня она пока ровно лежит. Надо придумать края укрепить и шарниры приделать.

Стрелки по первому проекту были левее, а я их сдвинул так чтоб верхние кнопки ровно были, видимо зря.
Сами верхние кнопки для игр неудобно стоят, надо их правее к табу.
Кнопку левую Ё~ пришлось поставить, потому как недотягиваюсь на эти боковые кнопки, да и вообще трудно попасть на нужную.

Пробовал переназначить так чтоб любые левые нижние из которых все стрелки тоже были как одна, как оказалось новая игровая раскладка удобнее чем попытка имитировать старую на этой клаве.
Бывают подобные штуки и у китайцев. Например такой на 22 кнопки.
пока надобности в нумпаде нет. Когда старое что делаю пишу в hex, а так чтото совсем не трубуются буквы. Пока своим пользуюсь только чтоб пароль писать, hex вообще отключен.
Както дорого покупать готовый и ставить другой контролер.
за 500р можно купить дюжину кнопок, контролер ещё 5 баксов, получается сборка вдвое дешевле, хотя ещё колпачки надо, но я купил полный китайский набор так что на нумпад есть запаска
Последний раз редактировалось 74LS00 06 окт 2016, 02:13, всего редактировалось 2 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 13 окт 2016, 19:01

Создал тему на форуме игры, какойто толк от этого есть.
Наткнулся на эргономику на бабавики.
Сначало подумал необычная, статья на непонятном форуме, но переводчик говорит ничего необычного, кроме странных надписей на клавишах. Вроде как ibm обычный, но написано явно на другом языке, может клавиатуры для dos были иными или хотябы для других странах.

Начал делать бортик, кривовато получается, но может винил исправит, главное чтоб клавиши потом не цеплялись, чтото они уж очень близко.

Поиграл пару недель в панзар, новенькие колпачёк abs на пробеле уже блестит, или игры так убивают или пластик стал хуже, но для игровых видимо надо чтото покрепче
Последний раз редактировалось Гость 13 окт 2016, 19:01, всего редактировалось 3 раза.

74LS00
Любитель
Сообщения: 92
Зарегистрирован: 10 апр 2016, 01:15
Репутация: 10
Откуда: Воронежская обл.
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение 74LS00 » 26 окт 2016, 22:06

Купил картридеров типо на детали, оказалось тупиковое направление, они все на кляксе сделаны.

Кроме капли и ночек к слоту ничего нет, хотя есть пару мест под кондёры. Цена 20р, у нас в магазине почемуто это стоит 250.
https://ru.aliexpress.com/item/New-Real ... oryId=4407

Картридер в дюральке. Ног много, но тоже на капле
https://ru.aliexpress.com/item/Adroit-1 ... oryId=4407
Таже начинка, хотя плата как минимум другой партии, по конструкции хуже прошлого, железка слота неначём держится
https://ru.aliexpress.com/item/1pcs-USB ... oryId=4407

Наткнулся на флешку с защитой, наверно с неё начинку выдерну, и так много денег никуда. Я так понял надо покупать картридер большой бакса за 3, может там микросхема нормальная.
https://ru.aliexpress.com/item/Netac-Or ... yId=711005

Ещё вариант Arduino Yun , там стоит хаб и карт ридер, всё тойже сомнительной фирмы, да и есть ли защита от записи непонятно. Так что пока с главной платой дело стоит.
Последний раз редактировалось Гость 26 окт 2016, 22:06, всего редактировалось 3 раза.

Аватара пользователя
r3n4m3
Мастер
Сообщения: 389
Зарегистрирован: 24 июл 2013, 08:47
Репутация: 17
Контактная информация:

Re: Альтерннативная универсальная раскладка

Сообщение r3n4m3 » 27 окт 2016, 02:50

у мну не открываются первые три ссылки... :(
Последний раз редактировалось r3n4m3 27 окт 2016, 02:50, всего редактировалось 2 раза.

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя