Author Topic: TMK keyboard firmware  (Read 563435 times)

0 Members and 5 Guests are viewing this topic.

Offline njbair

  • Posts: 2825
  • Location: Cleveland, Ohio
  • I love the Powerglove. It's so bad.
    • nickbair.net
Re: TMK keyboard firmware
« Reply #800 on: Tue, 04 August 2015, 08:00:45 »
Thanks for the support.


BTW, I'll later create a wiki page and organize links to project using TMK by others. I'm doing refactoring of my codes and I basically won't merge projects contributed by others to my repository anymore. I'd want project owners to maintain their project on their own repository now. Of course, pull requests to core library part are welcomed as they were.
https://github.com/tmk/tmk_keyboard/issues/173


Just added KMAC happy support, made a pull request, and i need someone to test if it still works properly for the tkl models.

Do you think that  this is a good idea? I know its hard to maintain everything yourself, but creating a bunch of subprojects with different owners will kill some layouts, like for instance if a owner decides to go afk.




My opinion:
I like the idea to have everything as it is now, instead making contributors to your project, giving frequent contributors, whos opinions you trust write acess.

Keeping everything as it is+ contributors will increase the sense of community that everyone can chip in.

The issue is kind of two-fold, though. It's not just about the maintenance, but the scope of the whole project. Let's say I try to contribute a layout for a custom board I wired up and there are only 3 in existence. It doesn't make sense for that to be in the central repo, but rather a fork maintained by me and the other 2 who own that board.

Forks can still pull in code from the parent project, so you don't really have to worry about fragmentation in that sense...but at a certain point hasu has to decide what is and isn't worth his time.

Alpine Winter GB | My Personal TMK Firmware Repo
IBM Rubber Band "Floss" Mod | Click Modding Alps 101 | Flame-Polishing Cherry MX Stems
Review: hasu's USB to USB converter
My boards:
More
AEKII 60% | Alps64 HHKB | Ducky Shine 3, MX Blues | IBM Model M #1391401, Nov. 1990 | IBM SSK #1391472, Nov. 1987, screw modded, rubber-band modded | Noppoo EC108-Pro, 45g | Infinity 60% v2 Hacker, Matias Quiet Pros | Infinity 60% v2 Standard, MX Browns | Cherry G80-1800LPCEU-2, MX Blacks | Cherry G80-1813 (Dolch), MX Blues | Unicomp M-122, ANSI-modded | Unicomp M-122 (Unsaver mod in progress) | 2x Unitek K-258, White Alps | Apple boards (IIGS, AEKII) | Varmilo VA87MR, Gateron Blacks | Filco Zero TKL, Fukka White Alps | Planck, Gateron Browns | Monarch, click-modded Cream Alps

Offline quantumfractal

  • Posts: 5
Re: TMK keyboard firmware
« Reply #801 on: Tue, 04 August 2015, 08:07:09 »
Hey there! I recently built my own 60% keyboard. Your code works excellently, even though I managed to screw up config stuff a few times :p. I have one issue and it's a strange one. My comma key does not work. I've checked to ensure the switch works electrically. And the config seems to be correct in my c files. When I debug the matrix there's nothing showing up. Any ideas why this one key wouldn't be working?

Thanks again!

Did you handwire it or is it your own pcb. please post all information you think might be of help like pictures of the wires/pcb(top and bottom) link to code etc.


Hey there again, here's a link to the files I'm using to build it (the one's I've modified) https://www.dropbox.com/sh/k5bz49kqs1ga6nv/AABS8VV23DH0jZGdl6r18Z0Qa?dl=0

And here's a picture of the wiring and of one with the comma key pointed to.
107358-0

107360-1

Offline henz

  • * Exquisite Elder
  • Posts: 1284
  • What?
Re: TMK keyboard firmware
« Reply #802 on: Tue, 04 August 2015, 08:35:03 »
hehe its the diode, its turned upside down

Offline sethk_

  • Grand Master Wizard Pizza
  • * Esteemed Elder
  • Posts: 2712
  • Location: Pittsburgh, Pennsylvania
  • www.kbdhub.com
    • My webstore
Re: TMK keyboard firmware
« Reply #803 on: Tue, 04 August 2015, 08:42:15 »
hehe its the diode, its turned upside down
Mr. Upside-down :P first the plate and now diode

Offline henz

  • * Exquisite Elder
  • Posts: 1284
  • What?
Re: TMK keyboard firmware
« Reply #804 on: Tue, 04 August 2015, 08:49:16 »
hehe its the diode, its turned upside down
Mr. Upside-down :P first the plate and now diode

im trying to figure out a funny anode side on the cathod side joke, but im drawing blanks!

Offline quantumfractal

  • Posts: 5
Re: TMK keyboard firmware
« Reply #805 on: Tue, 04 August 2015, 15:10:47 »
hehe its the diode, its turned upside down
Mr. Upside-down :P first the plate and now diode

im trying to figure out a funny anode side on the cathod side joke, but im drawing blanks!

You're f**king kidding me.... I checked EVERYTHING except for the diode fuuuuuuuuuuuu

Thank you guys for your help!

Offline bcg

  • Posts: 112
Re: TMK keyboard firmware
« Reply #806 on: Wed, 05 August 2015, 00:17:06 »
Hi hasu

I noticed today that mbed has come to Teensy 3.1 at long last

https://developer.mbed.org/platforms/teensy-3-1/

Seems like some people are having issues but works fine for me:

https://developer.mbed.org/forum/bugs-suggestions/topic/4671/?page=2

Do you think the mbed port of TMK could be made to work with this?  If so, what steps do you think that I would need to do to test this?  I'm not very familiar with mbed... if it is as simple as updating to the latest version of their abstraction libraries I can definitely give that a short.  I'd prefer to use Teensy 3.1 for my next project if possible

(BTW - I made some gluecode for using your firmware with bpiphany's costar controllers... I know TMK is already ported to a couple of his boards but this code should be usable for all of them - https://github.com/bgould/costar_tmk_keyboard)
:wq!

Offline henz

  • * Exquisite Elder
  • Posts: 1284
  • What?
Re: TMK keyboard firmware
« Reply #807 on: Wed, 05 August 2015, 04:05:44 »
hehe its the diode, its turned upside down
Mr. Upside-down :P first the plate and now diode

im trying to figure out a funny anode side on the cathod side joke, but im drawing blanks!

You're f**king kidding me.... I checked EVERYTHING except for the diode fuuuuuuuuuuuu

Thank you guys for your help!

Np dude, hf with your keyboard, post some pics in the gh media.

Offline hasu

  • Thread Starter
  • Posts: 3130
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: TMK keyboard firmware
« Reply #808 on: Wed, 05 August 2015, 18:33:14 »
Yes, I think TMK should work with the Teensy3.1 mbed port.
I don't check the latest SDK and TMK includes a bit old mbed SDK around Apr 24(https://github.com/mbedmicro/mbed/commit/7c21ce5110e451856e2574fff0447ad45199f2dd). You may want to update it.

TMK mbed support is not mature nor complete, I didn't decide how abstraction layer should be to support both AVR and mbed. So it is scattered and may be a bit messed up. TMK currently has two projects with mbed platform, keyboard/infinity and converter/ps2_usb. You can see these code for refrence during your development.

You will need to define these files first.

1) Makefile
   See converter/ps2_usb/Makefile.mbed or keyboard/infinity/Makefile.

2) File containing list of source files and linker script depending on MCU
   See core/tool/mbed/lpc1u35_501.mk or keyboard/inifinity/mbed-infinity.mk

3) main.cpp
   See converter/ps2_usb/main.cpp or keyboard/infinity/main.cpp.

I think you can base on infinity project codes to start your project. Because Inifinity is not supported in mbed I had to overwrite some mbed codes and create linker script for Infinity myself. Those files located in keyboard/infinity/mbed-infinity/ directory and you can ignore them if Teensy 3.1 is supported in mbed. You will be able to use mbed's linker script and wont' need to change any mbed code.
     

I don't think I can explain it enough here, feel free to ask :D


Hi hasu

I noticed today that mbed has come to Teensy 3.1 at long last

https://developer.mbed.org/platforms/teensy-3-1/

Seems like some people are having issues but works fine for me:

https://developer.mbed.org/forum/bugs-suggestions/topic/4671/?page=2

Do you think the mbed port of TMK could be made to work with this?  If so, what steps do you think that I would need to do to test this?  I'm not very familiar with mbed... if it is as simple as updating to the latest version of their abstraction libraries I can definitely give that a short.  I'd prefer to use Teensy 3.1 for my next project if possible

(BTW - I made some gluecode for using your firmware with bpiphany's costar controllers... I know TMK is already ported to a couple of his boards but this code should be usable for all of them - https://github.com/bgould/costar_tmk_keyboard)
TMK products:HHKB Alt  ⌨ConvertersAlps64FC660C AltFC980C Alt

Offline esplin2966

  • Posts: 11
Re: TMK keyboard firmware
« Reply #809 on: Wed, 05 August 2015, 21:00:57 »
Hey everyone, I have been playing with hasu's controller in my hhkb and it's been awesome. I can make the keys do anything I want, except for one thing:

Is there a way to use a function key in a macro? For example:

I define FN5 to be a toggle to layer 4. I want to create a macro that taps FN5, and then does CTRL+SPACE right after.

What I have found is that nothing happens in the part of the macro that taps FN5, while the CTRL+SPACE part works fine.

Does anyone know how to do what I'm describing?


Offline njbair

  • Posts: 2825
  • Location: Cleveland, Ohio
  • I love the Powerglove. It's so bad.
    • nickbair.net
Re: TMK keyboard firmware
« Reply #810 on: Wed, 05 August 2015, 22:22:42 »
Hey everyone, I have been playing with hasu's controller in my hhkb and it's been awesome. I can make the keys do anything I want, except for one thing:

Is there a way to use a function key in a macro? For example:

I define FN5 to be a toggle to layer 4. I want to create a macro that taps FN5, and then does CTRL+SPACE right after.

What I have found is that nothing happens in the part of the macro that taps FN5, while the CTRL+SPACE part works fine.

Does anyone know how to do what I'm describing?

You don't have to emulate the Fn5 keypress. Just use ACTION_LAYER_ON() in your macro to enable your function layer.

https://github.com/tmk/tmk_keyboard/blob/master/doc/keymap.md#227-turn-on-layer

Alpine Winter GB | My Personal TMK Firmware Repo
IBM Rubber Band "Floss" Mod | Click Modding Alps 101 | Flame-Polishing Cherry MX Stems
Review: hasu's USB to USB converter
My boards:
More
AEKII 60% | Alps64 HHKB | Ducky Shine 3, MX Blues | IBM Model M #1391401, Nov. 1990 | IBM SSK #1391472, Nov. 1987, screw modded, rubber-band modded | Noppoo EC108-Pro, 45g | Infinity 60% v2 Hacker, Matias Quiet Pros | Infinity 60% v2 Standard, MX Browns | Cherry G80-1800LPCEU-2, MX Blacks | Cherry G80-1813 (Dolch), MX Blues | Unicomp M-122, ANSI-modded | Unicomp M-122 (Unsaver mod in progress) | 2x Unitek K-258, White Alps | Apple boards (IIGS, AEKII) | Varmilo VA87MR, Gateron Blacks | Filco Zero TKL, Fukka White Alps | Planck, Gateron Browns | Monarch, click-modded Cream Alps

Offline Charger

  • Posts: 166
Re: TMK keyboard firmware
« Reply #811 on: Thu, 06 August 2015, 00:22:02 »
Quick question does tmk detect when a computer is turned off and go into a power saving mode that turns off things like the backlight? I'm wondering because I used that forked tmk with layer indicator LEDs and noticed the layer indicator stays on and I can even change layers to turn it on hand off with the computer off which is something I didn't expect lol.

Offline hasu

  • Thread Starter
  • Posts: 3130
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: TMK keyboard firmware
« Reply #812 on: Thu, 06 August 2015, 01:30:38 »
You can't use FN key in your macro definition and you cannot define what you want with current TMK macro unfortunately.

You'll have to define 'action_function()' to realize it but documentation is sparse as always.
https://github.com/tmk/tmk_keyboard/blob/master/doc/keymap.md#24-function-action


Hey everyone, I have been playing with hasu's controller in my hhkb and it's been awesome. I can make the keys do anything I want, except for one thing:

Is there a way to use a function key in a macro? For example:

I define FN5 to be a toggle to layer 4. I want to create a macro that taps FN5, and then does CTRL+SPACE right after.

What I have found is that nothing happens in the part of the macro that taps FN5, while the CTRL+SPACE part works fine.

Does anyone know how to do what I'm describing?


TMK products:HHKB Alt  ⌨ConvertersAlps64FC660C AltFC980C Alt

Offline hasu

  • Thread Starter
  • Posts: 3130
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: TMK keyboard firmware
« Reply #813 on: Thu, 06 August 2015, 01:35:16 »
Quick answer is maybe no.
You have to implement power saving  for you LEDs.

Quick question does tmk detect when a computer is turned off and go into a power saving mode that turns off things like the backlight? I'm wondering because I used that forked tmk with layer indicator LEDs and noticed the layer indicator stays on and I can even change layers to turn it on hand off with the computer off which is something I didn't expect lol.

TMK products:HHKB Alt  ⌨ConvertersAlps64FC660C AltFC980C Alt

Offline esplin2966

  • Posts: 11
Re: TMK keyboard firmware
« Reply #814 on: Thu, 06 August 2015, 12:44:44 »
Ok, no problem. I will figure out action functions. Gives me something to do :)

You can't use FN key in your macro definition and you cannot define what you want with current TMK macro unfortunately.

You'll have to define 'action_function()' to realize it but documentation is sparse as always.
https://github.com/tmk/tmk_keyboard/blob/master/doc/keymap.md#24-function-action


Hey everyone, I have been playing with hasu's controller in my hhkb and it's been awesome. I can make the keys do anything I want, except for one thing:

Is there a way to use a function key in a macro? For example:

I define FN5 to be a toggle to layer 4. I want to create a macro that taps FN5, and then does CTRL+SPACE right after.

What I have found is that nothing happens in the part of the macro that taps FN5, while the CTRL+SPACE part works fine.

Does anyone know how to do what I'm describing?



Offline shaymdev

  • Posts: 56
  • Location: SLC, UT
Re: TMK keyboard firmware
« Reply #815 on: Thu, 06 August 2015, 16:58:03 »
...I'm wondering because I used that forked tmk with layer indicator LEDs...

I haven't been able to find a way to handle layer indicator LEDs but would love one on my current build. Can you point me to this fork?

@hasu is there any plan to implement this type of functionality? It seems like it would be appreciated by many.

Offline Charger

  • Posts: 166
Re: TMK keyboard firmware
« Reply #816 on: Thu, 06 August 2015, 17:22:08 »
...I'm wondering because I used that forked tmk with layer indicator LEDs...

I haven't been able to find a way to handle layer indicator LEDs but would love one on my current build. Can you point me to this fork?

@hasu is there any plan to implement this type of functionality? It seems like it would be appreciated by many.

hasu pointed me to the fork a page or so back

but here is a direct link to the fork https://github.com/jonhiggs/tmk_keyboard and the link below kind of tells you how to do it with this forked tmk build
 
Probably you can add your code in common/action_layer.c. All layer change actions should be occured in static void default_layer_state_set(uint32_t state). See this PR. https://github.com/tmk/tmk_keyboard/pull/198

Or also you can define action_function() that changes layer and handles indicator at the same time in your keymap file.

Offline ctm

  • Posts: 424
  • Location: Seattle, WA
  • Hello, world!
Re: TMK keyboard firmware
« Reply #817 on: Fri, 07 August 2015, 15:03:11 »
Is there a way to change mouse key behavior? I prefer to have the cursor move at constant speed when holding down the key, and move faster when double or triple tap on the key.
TMK Alps64 w/ Matias Quiet Switches in KBP V60 case.
Infinity60 with SKCM Orange Switches w/ TMK.
CM Storm QRF w/ Frosty Flake controller, Cherry MX Blue Switches and TMK firmware.


Coming:
Ellipse Model F F62.

Offline bcg

  • Posts: 112
Re: TMK keyboard firmware
« Reply #818 on: Sun, 09 August 2015, 09:55:40 »
Is there a way to change mouse key behavior? I prefer to have the cursor move at constant speed when holding down the key, and move faster when double or triple tap on the key.

For sure you can change the mousekey constants in your config.h file by adding some #defines to override this constants:

https://github.com/tmk/tmk_keyboard/blob/master/tmk_core/common/mousekey.h#L25-L52

As far as the behavior you're describing, you probably could acheive something like that with an action fuction but it would most likely take a bit of effort to get working just right.

These are the mousekey constants that I use these days and I think they give decent results for both speed and precision:


/* faster mousekeys than the default */
#define MOUSEKEY_MOVE_DELTA           3
#define MOUSEKEY_WHEEL_DELTA          1
#define MOUSEKEY_DELAY                0
#define MOUSEKEY_INTERVAL            20
#define MOUSEKEY_MAX_SPEED           10
#define MOUSEKEY_TIME_TO_MAX         20
#define MOUSEKEY_WHEEL_MAX_SPEED     16
#define MOUSEKEY_WHEEL_TIME_TO_MAX   40
:wq!

Offline bcg

  • Posts: 112
Re: TMK keyboard firmware
« Reply #819 on: Sun, 09 August 2015, 10:03:33 »

I think you can base on infinity project codes to start your project. Because Inifinity is not supported in mbed I had to overwrite some mbed codes and create linker script for Infinity myself. Those files located in keyboard/infinity/mbed-infinity/ directory and you can ignore them if Teensy 3.1 is supported in mbed. You will be able to use mbed's linker script and wont' need to change any mbed code.
     

I don't think I can explain it enough here, feel free to ask :D


Thanks hasu, I think your explanation is good, I will definitely give it a shot.  I forgot about the infinity keyboard, I was actually going to buy one of this but I've been so busy this summer that I knew I would have time to mess with it.  If I knew it was running TMK tho I would have snatched it up in a second :)  I love your firmware, I have it on every keyboard in my house and on my daily at work now now  :thumb:
:wq!

Offline nephiel

  • Posts: 129
  • Location: Spain
Re: TMK keyboard firmware
« Reply #820 on: Sun, 09 August 2015, 12:29:15 »
...I'm wondering because I used that forked tmk with layer indicator LEDs...

I haven't been able to find a way to handle layer indicator LEDs but would love one on my current build. Can you point me to this fork?

@hasu is there any plan to implement this type of functionality? It seems like it would be appreciated by many.

hasu pointed me to the fork a page or so back

but here is a direct link to the fork https://github.com/jonhiggs/tmk_keyboard and the link below kind of tells you how to do it with this forked tmk build
 
Probably you can add your code in common/action_layer.c. All layer change actions should be occured in static void default_layer_state_set(uint32_t state). See this PR. https://github.com/tmk/tmk_keyboard/pull/198

Or also you can define action_function() that changes layer and handles indicator at the same time in your keymap file.

FWIW, here's what I did to get LED layer indicators working on tmk.
More
Edit tmk_core/common/action.c and find this section:
Code: [Select]
#endif
        default:
            break;
    }
}




/*
 * Utilities for actions.
 */

Place this piece of code in there so it ends up like this:
Code: [Select]
#endif
        default:
            break;
    }

#ifndef NO_ACTION_LAYER
    // if this event is a layer action, update the leds
    switch (action.kind.id) {
        case ACT_LAYER:
        #ifndef NO_ACTION_TAPPING
        case ACT_LAYER_TAP:
        case ACT_LAYER_TAP_EXT:
        #endif
            led_set(host_keyboard_leds());
            break;
        default:
            break;
    }
#endif

}

/*
 * Utilities for actions.
 */

Then you can edit led_set function in led.c for your board and use checks like these to decide which LEDs to turn on.
Don't forget to #include action_layer.h in led.c as well.
Code: [Select]

    if (layer_state & (1<<3)) { // layer 3 is active
        // turn LED on here
    } else {
        // turn LED off here
    }

    if (biton32(layer_state) == 4) { // layer 4 is the highest active layer
        // turn LED on here
    } else {
        // turn LED off here
    }


This solution is not as neat as Jon Higgs', but it allows access to both usb_led and layer_state vars in led.c, to change status LEDs depending on which layers are active.
Stop wasting space! Chop your spacebar into bits!
NPH60: a custom 60% w/TrackPoint & split spacebar

Offline shaymdev

  • Posts: 56
  • Location: SLC, UT
Re: TMK keyboard firmware
« Reply #821 on: Sun, 09 August 2015, 17:39:01 »
...I'm wondering because I used that forked tmk with layer indicator LEDs...

I haven't been able to find a way to handle layer indicator LEDs but would love one on my current build. Can you point me to this fork?

@hasu is there any plan to implement this type of functionality? It seems like it would be appreciated by many.

hasu pointed me to the fork a page or so back

but here is a direct link to the fork https://github.com/jonhiggs/tmk_keyboard and the link below kind of tells you how to do it with this forked tmk build
 
Probably you can add your code in common/action_layer.c. All layer change actions should be occured in static void default_layer_state_set(uint32_t state). See this PR. https://github.com/tmk/tmk_keyboard/pull/198

Or also you can define action_function() that changes layer and handles indicator at the same time in your keymap file.

FWIW, here's what I did to get LED layer indicators working on tmk.
More
Edit tmk_core/common/action.c and find this section:
Code: [Select]
#endif
        default:
            break;
    }
}




/*
 * Utilities for actions.
 */

Place this piece of code in there so it ends up like this:
Code: [Select]
#endif
        default:
            break;
    }

#ifndef NO_ACTION_LAYER
    // if this event is a layer action, update the leds
    switch (action.kind.id) {
        case ACT_LAYER:
        #ifndef NO_ACTION_TAPPING
        case ACT_LAYER_TAP:
        case ACT_LAYER_TAP_EXT:
        #endif
            led_set(host_keyboard_leds());
            break;
        default:
            break;
    }
#endif

}

/*
 * Utilities for actions.
 */

Then you can edit led_set function in led.c for your board and use checks like these to decide which LEDs to turn on.
Don't forget to #include action_layer.h in led.c as well.
Code: [Select]

    if (layer_state & (1<<3)) { // layer 3 is active
        // turn LED on here
    } else {
        // turn LED off here
    }

    if (biton32(layer_state) == 4) { // layer 4 is the highest active layer
        // turn LED on here
    } else {
        // turn LED off here
    }


This solution is not as neat as Jon Higgs', but it allows access to both usb_led and layer_state vars in led.c, to change status LEDs depending on which layers are active.
Awesome, I'll have to try that out too when I get a chance. Thanks for the code examples.

Offline AKmalamute

  • HHKB Scrub
  • Posts: 828
  • Location: Western WA, USA
your ALPS board -- can't compile
« Reply #822 on: Mon, 10 August 2015, 01:56:40 »
 Just downloaded the latest TMK .zip from GitHub, have programmed a keymap file for the alps64 board ... when when I say to 'make' it, I get these errors:

Code: [Select]
../../tmk_core/protocol/lufa/lufa.c: warning: implicit declaration of function clock_prescale_set
../../tmk_core/protocol/lufa/lufa.c: error: clock_div_1 undeclared

and looking at lufa.c, I find this sequence:


Code: [Select]
static void setup_mcu(void)
{
    /* Disable watchdog if enabled by bootloader/fuses */
    MCUSR &= ~(1 << WDRF);
    wdt_disable();

    /* Disable clock division */
    clock_prescale_set(clock_div_1);
}


Which is the only place that clock_div_1 shows up at all ... and I think I'm at a loss at this point.

edit: Going into another directory (kmac in this case) and issuing : make -f Makefile.lufa produces files, not errors. But both of the other keymap files in the alps64 directory yield the same error about setup_mcu.

DoubleEdit: if I arbitrarily set the MCU in the makefile to be the ever popular 32u4, it compiles fine.
But that's not what's on this board, I assume, so ...?
« Last Edit: Mon, 10 August 2015, 02:31:45 by AKmalamute »

HHKB-lite2, Dvorak user

Offline nephiel

  • Posts: 129
  • Location: Spain
Re: your ALPS board -- can't compile
« Reply #823 on: Mon, 10 August 2015, 14:13:14 »
Just downloaded the latest TMK .zip from GitHub, have programmed a keymap file for the alps64 board ... when when I say to 'make' it, I get these errors:

Code: [Select]
../../tmk_core/protocol/lufa/lufa.c: warning: implicit declaration of function clock_prescale_set
../../tmk_core/protocol/lufa/lufa.c: error: clock_div_1 undeclared

and looking at lufa.c, I find this sequence:


Code: [Select]
static void setup_mcu(void)
{
    /* Disable watchdog if enabled by bootloader/fuses */
    MCUSR &= ~(1 << WDRF);
    wdt_disable();

    /* Disable clock division */
    clock_prescale_set(clock_div_1);
}


Which is the only place that clock_div_1 shows up at all ... and I think I'm at a loss at this point.

edit: Going into another directory (kmac in this case) and issuing : make -f Makefile.lufa produces files, not errors. But both of the other keymap files in the alps64 directory yield the same error about setup_mcu.

DoubleEdit: if I arbitrarily set the MCU in the makefile to be the ever popular 32u4, it compiles fine.
But that's not what's on this board, I assume, so ...?

I just checked latest TMK .zip, alps64 makefile has MCU set to atmega32u4 by default. Gah, nevermind, evidently I can't read digits. See hasu's post below.
« Last Edit: Tue, 11 August 2015, 02:53:24 by nephiel »
Stop wasting space! Chop your spacebar into bits!
NPH60: a custom 60% w/TrackPoint & split spacebar

Offline hasu

  • Thread Starter
  • Posts: 3130
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: TMK keyboard firmware
« Reply #824 on: Mon, 10 August 2015, 19:00:09 »
Alps64 PCB has "u2" microcontroller on board so you should compiled with atmega32u2 and default Makefile is configured correctly.

AKmalamute, it seems like your AVR libc is too old to build firmware for the controller. Try update to the latest one.
TMK products:HHKB Alt  ⌨ConvertersAlps64FC660C AltFC980C Alt

Offline ctm

  • Posts: 424
  • Location: Seattle, WA
  • Hello, world!
Re: TMK keyboard firmware
« Reply #825 on: Mon, 10 August 2015, 21:19:26 »
Is there a way to change mouse key behavior? I prefer to have the cursor move at constant speed when holding down the key, and move faster when double or triple tap on the key.

For sure you can change the mousekey constants in your config.h file by adding some #defines to override this constants:

https://github.com/tmk/tmk_keyboard/blob/master/tmk_core/common/mousekey.h#L25-L52

As far as the behavior you're describing, you probably could acheive something like that with an action fuction but it would most likely take a bit of effort to get working just right.

These are the mousekey constants that I use these days and I think they give decent results for both speed and precision:


/* faster mousekeys than the default */
#define MOUSEKEY_MOVE_DELTA           3
#define MOUSEKEY_WHEEL_DELTA          1
#define MOUSEKEY_DELAY                0
#define MOUSEKEY_INTERVAL            20
#define MOUSEKEY_MAX_SPEED           10
#define MOUSEKEY_TIME_TO_MAX         20
#define MOUSEKEY_WHEEL_MAX_SPEED     16
#define MOUSEKEY_WHEEL_TIME_TO_MAX   40

Thank you for sharing! This config works great! BTW I am also a Vim user  ;D
TMK Alps64 w/ Matias Quiet Switches in KBP V60 case.
Infinity60 with SKCM Orange Switches w/ TMK.
CM Storm QRF w/ Frosty Flake controller, Cherry MX Blue Switches and TMK firmware.


Coming:
Ellipse Model F F62.

Offline njbair

  • Posts: 2825
  • Location: Cleveland, Ohio
  • I love the Powerglove. It's so bad.
    • nickbair.net
Re: TMK keyboard firmware
« Reply #826 on: Mon, 10 August 2015, 21:57:12 »
Is Boot Magic supposed to work on the Infinity? When I comment out BOOTMAGIC_ENABLE = yes, I get the following error while running make clean:

Code: [Select]
../../tmk_core/tool/mbed/common.mk:28: *** Not Supported.  Stop.
Any ideas?

Alpine Winter GB | My Personal TMK Firmware Repo
IBM Rubber Band "Floss" Mod | Click Modding Alps 101 | Flame-Polishing Cherry MX Stems
Review: hasu's USB to USB converter
My boards:
More
AEKII 60% | Alps64 HHKB | Ducky Shine 3, MX Blues | IBM Model M #1391401, Nov. 1990 | IBM SSK #1391472, Nov. 1987, screw modded, rubber-band modded | Noppoo EC108-Pro, 45g | Infinity 60% v2 Hacker, Matias Quiet Pros | Infinity 60% v2 Standard, MX Browns | Cherry G80-1800LPCEU-2, MX Blacks | Cherry G80-1813 (Dolch), MX Blues | Unicomp M-122, ANSI-modded | Unicomp M-122 (Unsaver mod in progress) | 2x Unitek K-258, White Alps | Apple boards (IIGS, AEKII) | Varmilo VA87MR, Gateron Blacks | Filco Zero TKL, Fukka White Alps | Planck, Gateron Browns | Monarch, click-modded Cream Alps

Offline AKmalamute

  • HHKB Scrub
  • Posts: 828
  • Location: Western WA, USA
Re: TMK keyboard firmware
« Reply #827 on: Mon, 10 August 2015, 22:07:26 »
AKmalamute, it seems like your AVR libc is too old to build firmware for the controller. Try update to the latest one.

It hasn't updated since 2010. That's the one I have.

 Does this leave me SOL ?

HHKB-lite2, Dvorak user

Offline AKmalamute

  • HHKB Scrub
  • Posts: 828
  • Location: Western WA, USA
Re: TMK keyboard firmware
« Reply #828 on: Tue, 11 August 2015, 00:33:58 »
It hasn't updated since 2010.

okay, that's just the complete windows installer. If you don't mind jumping through atmel's hoops, you can get the windows toolchain. But whatever I d/l'd doesn't have make.exe so I'm using old & new at once. But the toolchain should be avr-gcc 3.4.5 or the like.

 Next step was a buncha reboots because I've never attached a 32u2 to my system and every time I'd plug my ergodox back in, none of the keys would do anything sensible. Got ahold of a open-source libUSB .inf generator, and ... tried to use teensy.exe. Oops.

Installed Flip, it actually wrote something this time (had mediocre to poor success last time I had to play with that program) and ... my new keyboard doesn't work.

I'm going to bed so it'll be a day before we can talk about what I screwed up, but I've defined three FN keys, all on the default layer. One is supposed to go to the next layer with F-keys, navigation, etc. One is a dual-function Fn0 / enter key ... the last has some more experimental stuff like mouse controls.

 The mouse controls layer is determined to be default. I don't have a way to switch out because it's not supposed to come up except as a momentary switch off a key in the actual default layer. But the few TRNS keys are going to the letter row, so I get a few numbers about that's close to it.

 Grr ... why did I start doing this, again?

HHKB-lite2, Dvorak user

Offline hasu

  • Thread Starter
  • Posts: 3130
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: TMK keyboard firmware
« Reply #829 on: Tue, 11 August 2015, 05:30:29 »
Is Boot Magic supposed to work on the Infinity? When I comment out BOOTMAGIC_ENABLE = yes, I get the following error while running make clean:

Code: [Select]
../../tmk_core/tool/mbed/common.mk:28: *** Not Supported.  Stop.
Any ideas?
Not supported atm.
Cortex/mbed port is still on preliminary stage, media keys, mouse keys and etc. ain't  supported also.

But I hope I can take time to implement those functions before so long. Or if  someone can contribute it would be great.

TMK products:HHKB Alt  ⌨ConvertersAlps64FC660C AltFC980C Alt

Offline hasu

  • Thread Starter
  • Posts: 3130
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: TMK keyboard firmware
« Reply #830 on: Tue, 11 August 2015, 05:45:01 »
Is there a way to change mouse key behavior? I prefer to have the cursor move at constant speed when holding down the key, and move faster when double or triple tap on the key.

For sure you can change the mousekey constants in your config.h file by adding some #defines to override this constants:

https://github.com/tmk/tmk_keyboard/blob/master/tmk_core/common/mousekey.h#L25-L52

As far as the behavior you're describing, you probably could acheive something like that with an action fuction but it would most likely take a bit of effort to get working just right.

These are the mousekey constants that I use these days and I think they give decent results for both speed and precision:


/* faster mousekeys than the default */
#define MOUSEKEY_MOVE_DELTA           3
#define MOUSEKEY_WHEEL_DELTA          1
#define MOUSEKEY_DELAY                0
#define MOUSEKEY_INTERVAL            20
#define MOUSEKEY_MAX_SPEED           10
#define MOUSEKEY_TIME_TO_MAX         20
#define MOUSEKEY_WHEEL_MAX_SPEED     16
#define MOUSEKEY_WHEEL_TIME_TO_MAX   40

Thank you for sharing! This config works great! BTW I am also a Vim user  ;D
And you may be able to use keycodes KC_MS_ACCEL0,1,2. Those keys provides fixed speed of mouse cursor during they are hold down. This is not exactly what you want though.
TMK products:HHKB Alt  ⌨ConvertersAlps64FC660C AltFC980C Alt

Offline njbair

  • Posts: 2825
  • Location: Cleveland, Ohio
  • I love the Powerglove. It's so bad.
    • nickbair.net
Re: TMK keyboard firmware
« Reply #831 on: Tue, 11 August 2015, 09:06:03 »
Is Boot Magic supposed to work on the Infinity? When I comment out BOOTMAGIC_ENABLE = yes, I get the following error while running make clean:

Code: [Select]
../../tmk_core/tool/mbed/common.mk:28: *** Not Supported.  Stop.
Any ideas?
Not supported atm.
Cortex/mbed port is still on preliminary stage, media keys, mouse keys and etc. ain't  supported also.

But I hope I can take time to implement those functions before so long. Or if  someone can contribute it would be great.

Got it. I actually noticed media keys not working on my Infinities but I hadn't gotten around to asking about it.

At least it's nice to know that these things are possible, just not done yet. I wish I knew enough about ARM to help out...

Alpine Winter GB | My Personal TMK Firmware Repo
IBM Rubber Band "Floss" Mod | Click Modding Alps 101 | Flame-Polishing Cherry MX Stems
Review: hasu's USB to USB converter
My boards:
More
AEKII 60% | Alps64 HHKB | Ducky Shine 3, MX Blues | IBM Model M #1391401, Nov. 1990 | IBM SSK #1391472, Nov. 1987, screw modded, rubber-band modded | Noppoo EC108-Pro, 45g | Infinity 60% v2 Hacker, Matias Quiet Pros | Infinity 60% v2 Standard, MX Browns | Cherry G80-1800LPCEU-2, MX Blacks | Cherry G80-1813 (Dolch), MX Blues | Unicomp M-122, ANSI-modded | Unicomp M-122 (Unsaver mod in progress) | 2x Unitek K-258, White Alps | Apple boards (IIGS, AEKII) | Varmilo VA87MR, Gateron Blacks | Filco Zero TKL, Fukka White Alps | Planck, Gateron Browns | Monarch, click-modded Cream Alps

Offline nomaded

  • Posts: 197
  • Location: Andover, MA
Re: TMK keyboard firmware
« Reply #832 on: Tue, 11 August 2015, 11:47:11 »

 Next step was a buncha reboots because I've never attached a 32u2 to my system and every time I'd plug my ergodox back in, none of the keys would do anything sensible. Got ahold of a open-source libUSB .inf generator, and ... tried to use teensy.exe. Oops.

I'm going to bed so it'll be a day before we can talk about what I screwed up, but I've defined three FN keys, all on the default layer. One is supposed to go to the next layer with F-keys, navigation, etc. One is a dual-function Fn0 / enter key ... the last has some more experimental stuff like mouse controls.

 The mouse controls layer is determined to be default. I don't have a way to switch out because it's not supposed to come up except as a momentary switch off a key in the actual default layer. But the few TRNS keys are going to the letter row, so I get a few numbers about that's close to it.

 Grr ... why did I start doing this, again?

Can you post your keymap.c/keymap.h file?

Last week, I finally got around to installing Cub-uanic's port to my ErgoDox. I got the layout and layers to be the same as what I had with Ben Blazak's firmware, including hitting both shifts to toggle capslock and using the right-hand LEDs to indicate my layers.

I've been messing around with how I want to arrange mouse keys on the left hand, but I haven't come up with a layout I'm 100% happy with, yet.
Dvorak
ErgoDox fullhand (MX Clears) w/Nuclear Green Data SA || Infinity ErgoDox (Zealios 78g tactile) w/SA Retro || Atreus62 (MX Clears) w/Chocolatier || TECK 209 (MX Browns) || TouchStream ST
Kensington Slimblade Trackball || Logitech Cordless Optical Trackman || Apple Magic Trackpad
Current Dvorak-based ErgoDox layout || Current Dvorak-based TECK layout

Offline ambergrismonger

  • Posts: 7
  • Location: Portland, OR
Re: TMK keyboard firmware
« Reply #833 on: Fri, 14 August 2015, 15:30:18 »
Hello! I just finished wiring a Quark and now I'm trying to compile my firmware to flash to the teensy but I keep getting the error:

Quote
keymap_poker.c:13:55: error: macro "KEYMAP" passed 45 arguments, but takes just 44
keymap_poker.c:10: error: expected '}' before 'KEYMAP'
make: *** [obj_gh60_lufa/keymap_poker.o] Error 1

Here is the keymap file:

Quote
#include "keymap_common.h"

const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* 0: qwerty */
  KEYMAP(ESC,   Q,   W,   E,   R,   T,   Y,   U,   I,   O,   P,   BSPC,   
  TAB,   A,   S,   D,   F,   G,   H,   J,   K,   L,   ENT,   
  FN1,   LSFT,   Z,   X,   C,   V,   B,   N,   M,   COMM,   DOT,   LSFT,   
  LCTL,   LALT,   PAUSE,   FN2,   SPC,   FN1,   COPY,   PASTE,   UNDO)
/* 1: FN 1 */
  KEYMAP(TRNS,   1,   2,   3,   4,   5,   6,   7,   8,   9,   0,   DEL,   
  TRNS,   VOLUP,   VOLDOWN,   MUTE,   TRNS,   LBRC,   RBRC,   BSLS,   MINS,   EQL,   TRNS,   
  TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   GRAVE,   SCLN,   QUOT,   SLSH,   HOME,   PGUP,   TRNS,   
  TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   END,   PGDN,   TRNS,)
/* 2: FN 2 */
  KEYMAP(TRNS,   F1,   F2,   F3,   F4,   F5,   F6,   F7,   F8,   F9,   F0,   TRNS,   
  TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   
  TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   TRNS,   UP,   TRNS,   
  TRNS,   LGUI,   TRNS,   TRNS,   TRNS,   TRNS,   LEFT,   DOWN,   RGHT)
};
 
const uint16_t PROGMEM fn_actions[] = {
 
  • = ACTION_LAYER_MOMENTARY(1),

};


And here is the keymap_common:

Quote
/* GH60 keymap definition macro
 * K2C, K31 and  K3C are extra keys for ISO
 */
#define KEYMAP( \
    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \
    K10, K11, K12, K13, K14, K15, K16,      K18, K19, K1A, K1B, \
    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \
    K30, K31, K32,      K34, K35,           K38, K39, K3A, K3B \
) { \
    { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0A, KC_##K0B }, \
    { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_NO, KC_##K18, KC_##K19, KC_##K1A, KC_##K1B }, \
    { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2A, KC_##K2B }, \
    { KC_##K30, KC_##K31, KC_##K32, KC_NO, KC_##K34, KC_##K35, KC_NO, KC_NO, KC_##K38, KC_##K39, KC_##K3A, KC_##K3B }, \
}

Any help would be much appreciated!

Offline a-c

  • Posts: 196
  • Location: USA
Re: TMK keyboard firmware
« Reply #834 on: Fri, 14 August 2015, 15:35:47 »
Are you missing K17? That row only has 11 but should have 12.

hmmm. That's not it.

Fn1 bottom row last TRNS has an extra , at the end.
« Last Edit: Fri, 14 August 2015, 15:41:35 by a-c »

Offline ambergrismonger

  • Posts: 7
  • Location: Portland, OR
Re: TMK keyboard firmware
« Reply #835 on: Fri, 14 August 2015, 15:50:32 »
Ah, thanks!

Now I'm getting this error:

Quote
keymap_poker.c:10: error: expected '}' before '{' token
make: *** [obj_gh60_lufa/keymap_poker.o] Error 1

Offline ambergrismonger

  • Posts: 7
  • Location: Portland, OR
Re: TMK keyboard firmware
« Reply #836 on: Fri, 14 August 2015, 18:16:00 »
I figured it out! There were supposed to be comma's after each (...) on the poker_keymap. Time to flash, cross your fingers for me!

Offline ambergrismonger

  • Posts: 7
  • Location: Portland, OR
Re: TMK keyboard firmware
« Reply #837 on: Fri, 14 August 2015, 18:50:19 »
So, I flashed the firmware and the keyboard goes crazy firing random keys and freaking out in general. Here are all of the files that I edited. Thanks for any help!

https://gist.github.com/ambergrismonger/786fdb884f068cc09a1b

Offline a-c

  • Posts: 196
  • Location: USA
Re: TMK keyboard firmware
« Reply #838 on: Fri, 14 August 2015, 21:01:11 »
So, I flashed the firmware and the keyboard goes crazy firing random keys and freaking out in general. Here are all of the files that I edited. Thanks for any help!

https://gist.github.com/ambergrismonger/786fdb884f068cc09a1b

Missing D5 and D6 in your col port setup.

Ooops D5 and D4.
« Last Edit: Fri, 14 August 2015, 21:03:32 by a-c »

Offline njbair

  • Posts: 2825
  • Location: Cleveland, Ohio
  • I love the Powerglove. It's so bad.
    • nickbair.net
Re: TMK keyboard firmware
« Reply #839 on: Fri, 14 August 2015, 21:26:12 »
Is Boot Magic supposed to work on the Infinity? When I comment out BOOTMAGIC_ENABLE = yes, I get the following error while running make clean:

Code: [Select]
../../tmk_core/tool/mbed/common.mk:28: *** Not Supported.  Stop.
Any ideas?
Not supported atm.
Cortex/mbed port is still on preliminary stage, media keys, mouse keys and etc. ain't  supported also.

But I hope I can take time to implement those functions before so long. Or if  someone can contribute it would be great.

As someone with a strong programming background but no experience with ARM, where should I start reading if I want to help with mbed support?

Alpine Winter GB | My Personal TMK Firmware Repo
IBM Rubber Band "Floss" Mod | Click Modding Alps 101 | Flame-Polishing Cherry MX Stems
Review: hasu's USB to USB converter
My boards:
More
AEKII 60% | Alps64 HHKB | Ducky Shine 3, MX Blues | IBM Model M #1391401, Nov. 1990 | IBM SSK #1391472, Nov. 1987, screw modded, rubber-band modded | Noppoo EC108-Pro, 45g | Infinity 60% v2 Hacker, Matias Quiet Pros | Infinity 60% v2 Standard, MX Browns | Cherry G80-1800LPCEU-2, MX Blacks | Cherry G80-1813 (Dolch), MX Blues | Unicomp M-122, ANSI-modded | Unicomp M-122 (Unsaver mod in progress) | 2x Unitek K-258, White Alps | Apple boards (IIGS, AEKII) | Varmilo VA87MR, Gateron Blacks | Filco Zero TKL, Fukka White Alps | Planck, Gateron Browns | Monarch, click-modded Cream Alps

Offline ambergrismonger

  • Posts: 7
  • Location: Portland, OR
Re: TMK keyboard firmware
« Reply #840 on: Sat, 15 August 2015, 14:06:47 »
Thank you so much for catching that a-c! The keyboard works now! But I am having an issue with the FN keypresses not registering correctly. When I press the FN1 key it registers as an 8 keypress and when I press FN2 it registers as g. Any idea what's going on here? Everything else seems to be firing right.

Offline a-c

  • Posts: 196
  • Location: USA
Re: TMK keyboard firmware
« Reply #841 on: Sat, 15 August 2015, 14:52:01 »
Thank you so much for catching that a-c! The keyboard works now! But I am having an issue with the FN keypresses not registering correctly. When I press the FN1 key it registers as an 8 keypress and when I press FN2 it registers as g. Any idea what's going on here? Everything else seems to be firing right.

You don't have your FN actions defined. Starts at 0 so FN1 and FN2 don't have a defined action.
Code: [Select]
const uint16_t PROGMEM fn_actions[] = {
  [0] = ACTION_LAYER_MOMENTARY(1),
};

Code: [Select]
const uint16_t PROGMEM fn_actions[] = {
  [1] = ACTION_LAYER_MOMENTARY(1),
  [2] = ACTION_LAYER_MOMENTARY(2),
};
« Last Edit: Sat, 15 August 2015, 14:55:31 by a-c »

Offline ambergrismonger

  • Posts: 7
  • Location: Portland, OR
Re: TMK keyboard firmware
« Reply #842 on: Sat, 15 August 2015, 16:08:24 »
Thank you! One last thing and I think my keyboard will be perfect! Is there a way to bind multiple key presses to one key? For example say I want a key to execute ctrl+C?

Offline a-c

  • Posts: 196
  • Location: USA
Re: TMK keyboard firmware
« Reply #843 on: Sat, 15 August 2015, 17:56:48 »
Thank you! One last thing and I think my keyboard will be perfect! Is there a way to bind multiple key presses to one key? For example say I want a key to execute ctrl+C?

https://github.com/tmk/tmk_keyboard/blob/master/doc/keymap.md

In section 2.1.2
Code: [Select]
const uint16_t PROGMEM fn_actions[] = {
  [1] = ACTION_LAYER_MOMENTARY(1),
  [2] = ACTION_LAYER_MOMENTARY(2),
  [3] = ACTION_MODS_KEY(MOD_LCTL, C),
};

Assign Fn3 to a key and it will execute.

Offline U47

  • Posts: 80
  • Location: YEG
Re: TMK keyboard firmware
« Reply #844 on: Sun, 16 August 2015, 00:55:34 »
As someone with a strong programming background but no experience with ARM, where should I start reading if I want to help with mbed support?

I would say jump in the pool, but mbed is a mess right now (it won't compile on a Mac at the moment).

I'm kinda in the same boat. Feel I could help out, but I just don't have the patience to spend nights getting a dev environment working.

Offline AKmalamute

  • HHKB Scrub
  • Posts: 828
  • Location: Western WA, USA
Re: TMK keyboard firmware
« Reply #845 on: Sun, 16 August 2015, 02:22:36 »
Can you post your keymap.c/keymap.h file?

Yeah;  now that I'm at a computer, and in particular my computer has been upgraded & reassembled, here you go:
http://pastebin.com/cewgDXka  That's the keymap file, where I'm surely making some silly mistake,
http://pastebin.com/84FjhZxB  And the keymap.h file I haven't needed to do anything with.

Quote from: nomaded
I've been messing around with how I want to arrange mouse keys on the left hand, but I haven't come up with a layout I'm 100% happy with, yet.

Of the ergodox, I haven't gotten around to writing up something for TMK directly; I'm still using MD's web page.
Here is what I'm typing on now, but since I find the keys on the bottom row are all but inaccessible, I'm part way through making this other thing but have yet to try it.

HHKB-lite2, Dvorak user

Offline KHAANNN

  • Posts: 1646
Re: TMK keyboard firmware
« Reply #846 on: Sun, 16 August 2015, 06:33:50 »
Hi everyone

I'm looking for the most-solid 60% PCB to use with tmk_keyboard, leds not needed, a flat front-surface should be nice (for 5mm plates)

I was going to get a Nerd60, but I read that the bootloader is not compatible with dfu-util on default, I was considering a winkeyless.kr PCB, but I'm not sure where compatibility is at

Long story short, I would appreciate some buying advice (currently using the infinity PCB, it's ARM, not solid for several reasons, both electronical and physical, another massdrop fiasco, that's why I'm looking for something solid, a proven AVR PCB without any production issues would be great)
Endgame | 1.25 Cmd for GMK Sets Please | Or Just 1.25 Blanks Like The Good Old Days

Offline njbair

  • Posts: 2825
  • Location: Cleveland, Ohio
  • I love the Powerglove. It's so bad.
    • nickbair.net
Re: TMK keyboard firmware
« Reply #847 on: Sun, 16 August 2015, 07:16:54 »
Hi everyone

I'm looking for the most-solid 60% PCB to use with tmk_keyboard, leds not needed, a flat front-surface should be nice (for 5mm plates)

I was going to get a Nerd60, but I read that the bootloader is not compatible with dfu-util on default, I was considering a winkeyless.kr PCB, but I'm not sure where compatibility is at

Long story short, I would appreciate some buying advice (currently using the infinity PCB, it's ARM, not solid for several reasons, both electronical and physical, another massdrop fiasco, that's why I'm looking for something solid, a proven AVR PCB without any production issues would be great)

You and me both, man. There's always the option to program a very basic 60% single-layer layout, then use hasu's USB to USB converter. I just bought one from hasu last week (just arrived in U.S. customs on Friday), and I think I'm going to configure all my Fn keys and layering via the converter.

If hasu doesn't have any converters in stock, you can build your own with an Arduino and a USB host shield.

Alpine Winter GB | My Personal TMK Firmware Repo
IBM Rubber Band "Floss" Mod | Click Modding Alps 101 | Flame-Polishing Cherry MX Stems
Review: hasu's USB to USB converter
My boards:
More
AEKII 60% | Alps64 HHKB | Ducky Shine 3, MX Blues | IBM Model M #1391401, Nov. 1990 | IBM SSK #1391472, Nov. 1987, screw modded, rubber-band modded | Noppoo EC108-Pro, 45g | Infinity 60% v2 Hacker, Matias Quiet Pros | Infinity 60% v2 Standard, MX Browns | Cherry G80-1800LPCEU-2, MX Blacks | Cherry G80-1813 (Dolch), MX Blues | Unicomp M-122, ANSI-modded | Unicomp M-122 (Unsaver mod in progress) | 2x Unitek K-258, White Alps | Apple boards (IIGS, AEKII) | Varmilo VA87MR, Gateron Blacks | Filco Zero TKL, Fukka White Alps | Planck, Gateron Browns | Monarch, click-modded Cream Alps

Offline KHAANNN

  • Posts: 1646
Re: TMK keyboard firmware
« Reply #848 on: Sun, 16 August 2015, 07:44:05 »
Hi everyone

I'm looking for the most-solid 60% PCB to use with tmk_keyboard, leds not needed, a flat front-surface should be nice (for 5mm plates)

I was going to get a Nerd60, but I read that the bootloader is not compatible with dfu-util on default, I was considering a winkeyless.kr PCB, but I'm not sure where compatibility is at

Long story short, I would appreciate some buying advice (currently using the infinity PCB, it's ARM, not solid for several reasons, both electronical and physical, another massdrop fiasco, that's why I'm looking for something solid, a proven AVR PCB without any production issues would be great)

You and me both, man. There's always the option to program a very basic 60% single-layer layout, then use hasu's USB to USB converter. I just bought one from hasu last week (just arrived in U.S. customs on Friday), and I think I'm going to configure all my Fn keys and layering via the converter.

If hasu doesn't have any converters in stock, you can build your own with an Arduino and a USB host shield.

This is a genius device, I remember looking for it some months ago, it didn't exist back then, it could have prevented me from seeking custom keyboards and layouts :)

However, currently I'm trying to build this: http://www.keyboard-layout-editor.com/#/gists/56cebe0eff4d8931c305 - so one way or another I'm going to get a 60% PCB, might as well get one that natively supports tmk_keyboard out of the box

Asked the winkeyless.kr guys recently, they seem to have new 60% PCB's, but since they use the ps2toavr framework, I'm unsure whether their pcb is practically compatible with tmk_keyboard

(Edit: I will buy that USBtoUSB converter anyway, just in case, If It's in stock, it would be nice to have around :)
(Edit 2: winkeyless.kr pcb's are not compatible as I'm told)
(Edit 3: would appreciate Nerd bootloader advice too, it seems simpler to just get a nerd and solve the bootloader challenge)
« Last Edit: Sun, 16 August 2015, 09:05:30 by KHAANNN »
Endgame | 1.25 Cmd for GMK Sets Please | Or Just 1.25 Blanks Like The Good Old Days

Offline KHAANNN

  • Posts: 1646
Re: TMK keyboard firmware
« Reply #849 on: Sun, 16 August 2015, 09:47:15 »
Hi everyone

I'm looking for the most-solid 60% PCB to use with tmk_keyboard, leds not needed, a flat front-surface should be nice (for 5mm plates)

I was going to get a Nerd60, but I read that the bootloader is not compatible with dfu-util on default, I was considering a winkeyless.kr PCB, but I'm not sure where compatibility is at

Long story short, I would appreciate some buying advice (currently using the infinity PCB, it's ARM, not solid for several reasons, both electronical and physical, another massdrop fiasco, that's why I'm looking for something solid, a proven AVR PCB without any production issues would be great)

You and me both, man. There's always the option to program a very basic 60% single-layer layout, then use hasu's USB to USB converter. I just bought one from hasu last week (just arrived in U.S. customs on Friday), and I think I'm going to configure all my Fn keys and layering via the converter.

If hasu doesn't have any converters in stock, you can build your own with an Arduino and a USB host shield.

I changed my mind, this is MUCH MUCH better than what I was looking for :)

1) There was a hole inside me from my arduino times, as I didn't build anything really useful
2) I was looking for a way to get feedback from the keyboard, maybe from a rgb led, or a speaker

(1)+(2) is possible with this arduino+shield idea, so this is what I will be doing

Thank you for pointing me in the right direction :)

Is it still
https://www.sparkfun.com/products/11286
+
https://www.circuitsathome.com/products-page/arduino-shields/usb-host-shield-2-0-for-arduino-assembled/

for the best possible combination, or is there a better one?
Endgame | 1.25 Cmd for GMK Sets Please | Or Just 1.25 Blanks Like The Good Old Days