TheUltiPad MK2 - Giờ có màn hình OLED và RGB Underglow!
Numpad/MacroPad 23 phím có media controls, 2 phím layer, rotary encoder, thêm OLED hiển thị layer/lock và RGB underglow. Hỗ trợ cả QMK Proton-C lẫn Pro-Micro USB-C, kèm firmware QMK và hướng dẫn in/lắp.
Mô tả
TheUltiPad MK2 - Giờ có màn hình OLED và RGB Underglow!
Mình đã rất thích dùng chiếc UltiPad bản gốc của mình, dùng mỗi ngày từ lúc mình thiết kế và làm prototype đầu tiên... nhưng dần dần nó bắt đầu thấy hơi “cũ”. Với lại UltiPad cũng là một trong những project được nhiều người thích... và vì mình “thích tự hành”... nên xin giới thiệu TheUltiPad Mark Two! (gì đó, gì đó, mình vẫn đặt tên chưa hay lắm...)
Nó vẫn có numpad 23 phím kèm media controls (4 nút thêm ở phía trên), 2 phím function để đổi nhiều layer, và rotary encoder... nhưng giờ có thêm underglow (muốn nhiều cỡ nào cũng được!) và một màn hình OLED nhỏ gọn để hiển thị layer, các phím lock (num, cap và scr) và thiết lập RGB underglow.
Chỉ có một “cấn” nhỏ: mình có vài con controller QMK Proton-C để đó chưa dùng, và mình không để ý là giờ nó đang khó mua... nên mình đã thiết kế và làm prototype bằng proton-c.
Vậy nên... mình quay lại bàn vẽ và thiết kế lại nửa dưới để hỗ trợ bản USB-C của pro-micro.
Giờ thì bạn có thể chọn cả hai, hoặc chọn một trong hai. Bạn tự chọn nha, ý mình là vậy.
Mình đã upload folder QMK firmware dạng thô (chỉ cần tải revere521.zip.txt rồi đổi tên thành revere521.zip) và bỏ vào thư mục keyboards trong QMK build env trên máy bạn. Rồi bạn có thể tùy biến/đổi firmware và compile lại theo ý.
Có sẵn file hex (pro-micro) và bin (proton-c) nếu bạn chỉ muốn dùng bản mình compile. Cả hai firmware đều chạy được và đã test, về cơ bản giống hệt setup của UltiPad bản gốc — chỉ update và bổ sung cho OLED và Neopixel LEDs.
Điểm khác nhau duy nhất: bản proton-c được set cho bốn (4) LED và bản pro-micro được set cho năm (5).
Ngoài ra: * Keypad là numpad đúng theo nhãn * 4 phím trên cùng là PREV, PLAY, NEXT, STOP. * Rotary encoder là Volume Up/Down, nhấn nút là MUTE. * Hai phím dưới cùng được set là TT(1) và TT(2) (vừa momentary vừa toggle khi double tap) a. Layer 1 set các phím số (0-9) thành LCAG(1), LCAG(2), v.v... và mình dùng autohotkey làm app launcher cho LeftCtrl, Alt, Win + một số b. Layer 2 set các phím số (0-9) thành LCAG(A), LCAG(B), v.v... và mình dùng autohotkey làm app launcher cho LeftCtrl, Alt, Win + một chữ (a đến j) RGB Control: * Fn + NumLock = đổi RGB Mode tiến (Alt + Numlock lùi) * Fn + Divide = đổi Hue tiến (Alt + Divide lùi) * Fn + Multiply = đổi Saturation tiến (Alt + Multiply lùi) * Fn + Minus = đổi Value tiến (Alt + Minus lùi)
Parts List: * 23x Cherry MX switches tùy bạn chọn * Có chỗ âm cho Cherry MX Stabilizers nhưng mình dùng không cần stabilizers vẫn ổn * Núm [mxuteuk 35mm machined aluminum knob “xịn”](https://www.amazon.com/mxuteuk-Aluminum-Potentiometer-Electric-KNOB-06-34SR/dp/B07TY2YLX7) trên Amazon * Diodes: In4148 - (Amazon hoặc Aliexpress, hoặc đâu cũng được) * EC11 Rotary Encoder - (Amazon hoặc Aliexpress, hoặc đâu cũng được) * Proton-C - bạn có thể đọc thêm và check tồn kho ở nhiều nhà cung cấp [tại đây](https://qmk.fm/proton-c/) * Pro-Micro USB-C - có thể mua trên Amazon, hoặc mua bản chính hãng từ Sparkfun - [mình dùng loại này](https://www.amazon.com/dp/B09DKBXMW6?psc=1&ref=ppx_yo2ov_dt_b_product_details) * Màn hình OLED I2C 1.3 inch [mình dùng cái này](https://www.amazon.com/HiLetgo-Serial-SSH1106-Display-Arduino/dp/B01MRR4LVE/ref=sr_1_3?crid=Z0QK6LBA9OGP&keywords=1.3+oled&qid=1666188552&qu=eyJxc2MiOiIyLjY0IiwicXNhIjoiMi40MyIsInFzcCI6IjIuNTIifQ%3D%3D&sprefix=1.3+ole%2Caps%2C163&sr=8-3) * WS2812B LED buttons - [mình dùng loại này](https://www.amazon.com/dp/B01DC0J3UM?psc=1&ref=ppx_yo2ov_dt_b_product_details) * Bất kỳ cáp USB C nào cho Pro Micro hoặc Proton-C * 4x vít M3x14mm đầu pan head (để ráp case) * 2x vít M3x6mm đầu pan head (để gắn chân) * 2x vít M2x4mm để gắn Proton-C (riêng pro-micro phải dán bằng keo hoặc băng keo 2 mặt) * 4x M3x4x5 Brass threaded inserts (để ép nhiệt vào lỗ vít trên TOP PLATE) * Filament trong hoặc trắng cho phần đáy case [mình dùng loại này](https://www.amazon.com/dp/B07ZNG4L9P?psc=1&ref=ppx_yo2ov_dt_b_product_details) * Dây điện các loại, thiếc hàn (solder), v.v...
Bạn có thể in riêng middle plate (2 mảnh) và bottom plate bằng filament trong, hoặc in cái plate một mảnh đến khoảng 4mm (layer 0.2 thì cỡ layer 32) rồi đổi filament từ trong sang màu như mình làm.
In bao nhiêu LED MOUNT discs tùy bạn muốn cho mấy nút underglow, hoặc dùng LED strip hay gì đó — tùy chọn.
Một vài hướng dẫn in 3D
In các món sau để đủ đồ ráp:
1x TOP PLASTE 1x DISPLAY COVER 2x FOOT 4,5 hoặc ?x LED MOUNT (tùy bạn cần bao nhiêu — 4 cho firmware mặc định Proton-C và 5 cho firmware mặc định Pro-Micro)
Rồi với phần nửa dưới, bạn chọn bản Proton-C hoặc Pro-Micro; và chọn cách in.
Hoặc in 1x MID SECTION 1x BASE PLATE
Hoặc in 1x ONE PIECE BOTTOM
Một số bước/tip lắp ráp
Nếu bạn dùng pro-micro — hãy flash firmware trước khi lắp! Vì proton-c có chừa một cổng để bấm nút reset sau khi ráp xong, còn mấy bản pro-micro clone thường phải chập chân reset xuống ground. Tổ hợp FN + ENTER trên bàn phím sẽ đưa cả hai loại controller vào bootloader mode để flash lại sau khi lắp.
Màn hình OLED thả vừa vào phần âm trên top plate, và display cover chỉ cần bấm snap vào là được. Có thể bạn cần chà nhám nhẹ cạnh/góc của cover để vừa khít hơn; nó hơi chặt nhưng không tới mức quá khó chịu. Sau đó mình đánh dấu các chân GND, VCC, SCL và SDA phía sau để dễ đấu nối về sau. Nếu bạn dùng pin header kèm connector, bạn sẽ cần bẻ các chân ra khoảng 45 độ phía sau plate để chừa chỗ cho dây. Test fit hết nha.
Ép nhiệt (heat set) mấy con threaded inserts cho chuẩn. Bạn có thể khoan rà lại lỗ cho sạch, tránh co rút kiểu elephant's foot. Nếu lỡ inserts lệch nhẹ, bạn có thể nới lỗ vít ở phần base một chút để bù. Test fit hết.
Gắn stabilizers (nếu dùng) và gắn key switches. Hàn diode matrix. Columns và rows y chang UltiPad bản gốc — mình sẽ cố gắng thêm diagram, pin-out và file fritzing nếu mình làm kịp. Test fit hết.
Gắn chân bằng vít M3 nhỏ từ phía đáy — để né vị trí vít khỏi chỗ đặt LED.
Đi dây LED cho các nút, nhớ canh đúng hướng Din và Dout. Mình dùng ribbon cable cho đơn giản. Mình dán (glue) mấy LED mount discs vào vị trí mình muốn trong đáy case, rồi đo dây và hàn vào pad. Làm xong thì mình xếp lại trong đáy (hướng mặt LED xuống) và bắn keo nến (hot glue) cố định — cách này cũng giúp che pad tránh bị chạm (short). Test fit hết.
Về LED: proton-c có thể kéo LED (từ pin A3) với VCC 5v bình thường — chắc muốn bao nhiêu cũng được. Còn pro-micro thì phải dùng chân RAW 5v (không fuse) cho LED và dùng chân VCC (có fuse) cho OLED. 5 LED chắc là giới hạn, mình cũng không chắc (idk).
Pro-Micro cần được dán vào phần recess ở nửa dưới của case bằng băng keo 2 mặt hoặc keo nến. Canh USB-C thẳng với lỗ cắm cáp rồi dán cố định.
Proton-c thì bắt bằng 2 vít M2 (lắp ngược).
Hàn hoặc nối các chân cho rows và columns (đi dây gọn lại), LED vào một pin làm Din driver kèm gnd và power, rồi OLED vào các chân gnd, vcc, sda và scl. Một lần nữa, mình sẽ cố quay lại bổ sung pin-out và diagram. Phần quan trọng nhất với mấy bàn phím hand-wired: đi dây gọn gàng, đủ dài để mở case ra còn thao tác được, nhưng đừng dài quá thành “mớ mì spaghetti” trong case....
Rồi ráp lại thôi!
Giấy phép
Tác phẩm này được cấp phép theo
Creative Commons — Attribution — Noncommercial — Share AlikeCC-BY-NC-SA
File mô hình
Chưa có bản in nào được khoe. Hãy là người đầu tiên!
Chưa có bình luận nào. Hãy là người đầu tiên!