qmk_firmware icon indicating copy to clipboard operation
qmk_firmware copied to clipboard

[Feature Request] DOIO/KB16 new hardware revision

Open caffeinism opened this issue 1 year ago • 31 comments

Describe the Bug

The configuration of doio/kb16 seems to use atmega32u4 MCU and atmel-dfu bootloader. However, when I connect the product I bought yesterday, it comes out as a device name of Maple 003. Actually, according to this page, the device name Maple 003 seems to be the stm32duino bootloader. In fact, it doesn't even flash on the keyboard.

System Information

Keyboard: DOIO KB-16-1 Revision (if applicable): Operating system: Windows 11 qmk doctor output:

Ψ QMK Doctor is checking your environment.
Ψ CLI version: 1.1.0
Ψ QMK home: C:/Users/_____/qmk_firmware
Ψ Detected Windows 10 (10.0.22000).
Ψ Git branch: master
Ψ Repo version: 0.17.5
⚠ The official repository does not seem to be configured as git remote "upstream".
Ψ All dependencies are installed.
Ψ Found arm-none-eabi-gcc version 10.1.0
Ψ Found avr-gcc version 8.5.0
Ψ Found avrdude version 6.4
Ψ Found dfu-util version 0.11
Ψ Found dfu-programmer version 0.7.2
Ψ Submodules are up to date.
Ψ QMK is ready to go, but minor problems were found

Any keyboard related software installed?

  • [ ] AutoHotKey (Windows)
  • [ ] Karabiner (macOS)
  • [ ] Other:

Additional Context

caffeinism avatar Jul 20 '22 05:07 caffeinism

ping @HorrorTroll

tzarc avatar Jul 20 '22 05:07 tzarc

Doio released first revision PCB is Atmega32u4, they just recently make second revision and using APM32F103 (probably due Atmega32u4 is shortage and expensive):

Here is the first revision PCB i have: A33CD31E-8EDE-4E58-9712-0C6478594B74

HorrorTroll avatar Jul 20 '22 06:07 HorrorTroll

Sadly the MCU has changed. How did you measure the pins of row and col? Is there a software way? Or did you manually check the location of the pin? If there is a way I can check it myself, I would like to proceed.

caffeinism avatar Jul 20 '22 06:07 caffeinism

You would need multimeter and use continuity measurement mode for that

HorrorTroll avatar Jul 20 '22 06:07 HorrorTroll

I don't currently have a multimeter, so I'll put it on hold until a future purchase.

caffeinism avatar Jul 20 '22 17:07 caffeinism

Hello! I ran into this issue as well and wanted to comment here for anyone looking for a way forward to making their macropad at least usable/customizable. Even though this comment doesn't solve this issue, it should at least help people who find this github issue like I did when trying to understand why the macropad wouldn't work. Please feel free to remove this comment if you don't find it appropriate for this thread.

I used Vial with a sideloaded JSON that I found on a random product page for the kb16 and I'm able to customize the macropad!

Here's the exact json in case that product page goes down:

{
    "name": "DOIO",
    "vendorId": "0xFEED",
    "productId": "0x6060",
    "lighting": "qmk_rgblight",
    "matrix": { "rows": 4, "cols": 8 },
    "layouts": {
      "keymap":[
        [
          "0,0",
          "0,1",
          "0,2",
          "0,3",
          "0,4",
          "0,5",
          "0,6"
        ],
        [
          "1,0",
          "1,1",
          "1,2",
          "1,3",
          "1,4",
          "1,5",
          "1,6"
        ],
        [
          "2,0",
          "2,1",
          "2,2",
          "2,3",
          "2,4",
          "2,5",
          "2,6"
        ],
        [
          "3,0",
          "3,1",
          "3,2",
          "3,3"
        ]
      ]
    }
  }

atommarvel avatar Jul 27 '22 02:07 atommarvel

how do i enter bootloader mode ?

thompson-vii avatar Aug 16 '22 22:08 thompson-vii

Keyboard: DOIO KB-16-1 Revision (if applicable):0201 Operating system: Windows 11 Vendor ID: 0x1EAF Product ID: 0x0003 Name: Maple 003 BOOTLOADER: stm32duino

I'm facing same issue. The current source code not compatible with this hardware. After flash the compiled firmware into hardware. it doesn't works any more. It will keep in DFU mode always.

seven-jinxin avatar Aug 26 '22 11:08 seven-jinxin

To press the top left key on keyboard, and plug usb cable. It should be in DFU Bootloader mode. Unplug the usb cable and replug it, the keyboard will switch to normal mode.

seven-jinxin avatar Aug 28 '22 03:08 seven-jinxin

I got the firmware for this revision from their customer support: https://github.com/frozenkitten/DOIO_KB16-3_Archive/blob/main/kb16-3.bin I have tested it and it works.

frozenkitten avatar Aug 30 '22 12:08 frozenkitten

How did you contact their customer support? Are they able to provide QMK source files as well?

OZsGit avatar Aug 31 '22 21:08 OZsGit

Hay, I am new to the Game. I bought that Board and Got it Working with the Keamap in VIA, but the Knobs are handled like normal Buttons, and Macros won't work correctly (Every Macro i Bind to a knob, returns O or P).

What does the Firmware from @frozenkitten do?

Edit: It seems i have another Version alltogether: Mine uses a "Geehy APM32"

LuckyTrixx avatar Sep 09 '22 23:09 LuckyTrixx

You would need multimeter and use continuity measurement mode for that

Any instructions on this i have that board and a multimeter. I could get the details.

bradschwyzer avatar Oct 03 '22 07:10 bradschwyzer

Hi, like manyof you, i've recently bought a DOIO macropad. I don't know anything about boards but i'm trying to do my best. I understood that the board has to be reset and then flash whit is firmaware trought QMK Toolbox before connecting it to VIA to custumize the macropad.

So this i how i have proceed:

When i opend QMK Toolbox, before the reset, i had: "HID console connected: qmkbuilder DOIO (FEED:6060:0001)" so thought that was already good, so i ran VIA (later on i tried also VIAL) webapp. I clicked on "Auhorize device+" and i got the pop-up window displaying the name device "DOIO". YEEEEE NOPE nothing happened.

So i reset the board by pressing the reset button on the board. On QMK Toolbox i had: "HID console connected: qmkbuilder DOIO (FEED:6060:0001) STM32Duino device connected (WinUSB): (Undefined Vendor) Maple 003 (1EAF:0003:0201) HID console disconnected: qmkbuilder DOIO (FEED:6060:0001)"

To my knowledge that was a good sign so i flashed it with the firmware that @frozenkitten provided (because the firmware on VIA website it's in .HEX and QMK Toolbox reads .BIN files). I hit "Flash" got the line "Flash complete"

YEEEEAH

NOPE...AGAIN!

Now when i try to use the VIA webapp and i click on "Auhorize device+" the pop-up to select the board does not appear. So i click again the reset button and we are back to square one.

@frozenkitten and @atommarvel seems that only one that have figured it out. Could you plase, one of you, try to explain better how you make it work?

I followed this video to flash the board: https://www.youtube.com/watch?v=fuBJbdCFF0Q&t=197s&ab_channel=MechMerlin

I'm sorry for my english if something it's not clear, tell me and i'll try to explain myself better.

Hope someone can help me out :(

Thanks in advance

ivanprea avatar Oct 07 '22 08:10 ivanprea

@ivanprea what firmware did you load? this is a request to add support for the newer revision of the DOIO for qmk.

bradschwyzer avatar Oct 08 '22 02:10 bradschwyzer

I am looking for the DOIO 38% firmware. I can confirm the one I just received has an ATmega32U4.

djhazlett avatar Oct 08 '22 03:10 djhazlett

@djhazlett that is already supported. This is a request for the new hardware revision.

bradschwyzer avatar Oct 08 '22 04:10 bradschwyzer

https://wiki.keebmonkey.com/en/products/mmp

using the pad with the vendor's firmware requires sideloading the json file on every configuration session.

thompson-vii avatar Oct 08 '22 05:10 thompson-vii

https://user-images.githubusercontent.com/31672176/194691357-cba4b358-da8a-49b5-861c-0bb995058761.mp4

thompson-vii avatar Oct 08 '22 05:10 thompson-vii

Hey everyone, thanks for the help, mostly to @thompson-vii with your video was much clear. The board now appear by loading the "kb16VIA".

ivanprea avatar Oct 08 '22 10:10 ivanprea

@bradschwyzer when you say the 38% is already supported, what do you mean? are you saying someone has produced QMK keyboard source for that board?

JohnnyPrimus avatar Oct 08 '22 12:10 JohnnyPrimus

@bradschwyzer When you say its supported, do you mean the ATmega32U4? I dont see DOIO 38%, unless I am looking in the wrong spot. And I am new at building/flashing firmware, so I very well could have missed it. Is this something I need to submit a different topic, or is this not the correct place in general?

djhazlett avatar Oct 08 '22 15:10 djhazlett

@djhazlett as the title says this thread is about doio/kb16. DOIO 38% is a different board/firmware. The first revision of this macroboard with Atmega32u4 is supported by qmk. The newer versions (like APM32F103) not yet.

RatzzFatzz avatar Oct 08 '22 15:10 RatzzFatzz

@RatzzFatzz sure, thats understood, but the other poster specifically said the 38 was already supported. since that comes as news to me obviously we'd like to find out more

JohnnyPrimus avatar Oct 08 '22 15:10 JohnnyPrimus

I can confirm the one I just received has an ATmega32U4.

@JohnnyPrimus I think @bradschwyzer only looked at the mcu @djhazlett mentioned. Judging from the qmk configurator doio 38% is not supported.

RatzzFatzz avatar Oct 08 '22 15:10 RatzzFatzz

Hi, after spending all the afternoon on VIA i came across some "problems" (maybe it's just me):

  • i cannot give other keys to the little knobs exept for "PageUp" "PageDwn" etc, when i rotate the knob. I can map only the press button of it.
  • to use the macro pad i got to open all the time VIA, I set it up that it opens when i light the pc but it takes a while, which is weird as i got a very good pc. Plus does not open minimize.
  • i can't open app like : Chrome, Discord, Phostoshop, etc. by setting the macro like so: {KC_LGUI} DISCORD {KC_ENT}. The only way it's to send a copy of ech softaware on the desktop and then set a shortcut. Yes it works but it's annoying to have a lot of icons on the desktop.

Any of you are having this kind of "problems"?

Thanks

ivanprea avatar Oct 08 '22 18:10 ivanprea

This is not via support forum, please take your questions to qmk discord via channel https://discord.com/invite/qmk-440868230475677696

thompson-vii avatar Oct 08 '22 18:10 thompson-vii

You would need multimeter and use continuity measurement mode for that

I have a multimeter and the new board, what data can I provide to help?

  • Does continuity of rows and cols just mean the top pin on the left side of the chip has continuity of the leftmost pin of the top side? Then repeat with each pin?

PHSC138 avatar Oct 10 '22 04:10 PHSC138

Thanks @PHSC138 for helping out finding I/O pin, so that I could rewrite QMK firmware for this new revision PCB. More details is on the mentioned above

HorrorTroll avatar Oct 13 '22 15:10 HorrorTroll

the encoder has 20 dedents, the oem firmware emits 27 pulses per revolution. Does the port default to 20 pulses per revolution?

thompson-vii avatar Oct 17 '22 08:10 thompson-vii