Author Topic: Easy AVR USB Keyboard Firmware and Keymapper  (Read 928790 times)

0 Members and 3 Guests are viewing this topic.

Offline AKmalamute

  • HHKB Scrub
  • Posts: 837
  • Location: Western WA, USA
grub menu arrow-keys
« Reply #1150 on: Sun, 09 August 2015, 19:38:27 »
I'm still relying on a warm-boot. What I've found is that if I use the external, PS2 mounted number pad's arrow keys, windows will BSOD. There've been other problems with linux so I haven't used it in months; as a result I don't know if linux would have troubles with the keyboard when the grub menu can't see it. But I've never had to reboot more than once.

HHKB-lite2, Dvorak user

Offline Torre

  • Posts: 3
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1151 on: Tue, 11 August 2015, 16:45:19 »
Is there any chance that we can get scan codes that aren't what the program comes with? I guess it's preference that I would try to avoid using macros to type out my Scandinavian characters, but a lot of our punctuation keys look a whole lot different as well. Is this something I'm just missing, or is it possible to add it somehow?

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1152 on: Tue, 11 August 2015, 17:20:13 »
Is there any chance that we can get scan codes that aren't what the program comes with? I guess it's preference that I would try to avoid using macros to type out my Scandinavian characters, but a lot of our punctuation keys look a whole lot different as well. Is this something I'm just missing, or is it possible to add it somehow?

The codes a keyboard sends for punctuation don't change for a Scandinavian board, you just tell your OS which you'd like it to output.  If you use the names of the keys in the UK layout pictured below in EasyAVR then continue to tell your OS your keyboard is Scandinavian it should work :)



No idea how the extra letters work, but unless you're making an oversize board where are you going to put them if not on a layer?  To access a layer you need to press an extra key so why not use AltGr (R_Alt) like you would on a normal board?
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline Torre

  • Posts: 3
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1153 on: Wed, 12 August 2015, 02:47:48 »
Is there any chance that we can get scan codes that aren't what the program comes with? I guess it's preference that I would try to avoid using macros to type out my Scandinavian characters, but a lot of our punctuation keys look a whole lot different as well. Is this something I'm just missing, or is it possible to add it somehow?

The codes a keyboard sends for punctuation don't change for a Scandinavian board, you just tell your OS which you'd like it to output.  If you use the names of the keys in the UK layout pictured below in EasyAVR then continue to tell your OS your keyboard is Scandinavian it should work :)

No idea how the extra letters work, but unless you're making an oversize board where are you going to put them if not on a layer?  To access a layer you need to press an extra key so why not use AltGr (R_Alt) like you would on a normal board?

Y'know, that makes sense. Just to make sure I understand you correctly, placing the scan code for dot in EasyAVR (.[>]), telling my OS my layout is Scandinavian would result in my OS giving me (.[:])? I can't try it myself right now unfortunately. If that works, then I guess problem solved. Still would be great to be able to fully customize the shift - and as a fan of it, the R_Alt - layer, but maybe that would be hindered by hardware.

As for our extra vowels, they are just that, and have been put on the default layer on our QWERTY boards since the beginning of sliced bread. Doing the macro solution isn't that terrible, it'll just look pretty bad in software. With that said, I wonder if other keyboards type them out as some kind of macro'd alt-code or if they support it on a lower level.

This picture should show you what I mean with punctuation (and if you look at the numbers as well).

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1154 on: Wed, 12 August 2015, 03:16:01 »
Is there any chance that we can get scan codes that aren't what the program comes with? I guess it's preference that I would try to avoid using macros to type out my Scandinavian characters, but a lot of our punctuation keys look a whole lot different as well. Is this something I'm just missing, or is it possible to add it somehow?

The codes a keyboard sends for punctuation don't change for a Scandinavian board, you just tell your OS which you'd like it to output.  If you use the names of the keys in the UK layout pictured below in EasyAVR then continue to tell your OS your keyboard is Scandinavian it should work :)

No idea how the extra letters work, but unless you're making an oversize board where are you going to put them if not on a layer?  To access a layer you need to press an extra key so why not use AltGr (R_Alt) like you would on a normal board?

Y'know, that makes sense. Just to make sure I understand you correctly, placing the scan code for dot in EasyAVR (.[>]), telling my OS my layout is Scandinavian would result in my OS giving me (.[:])? I can't try it myself right now unfortunately. If that works, then I guess problem solved. Still would be great to be able to fully customize the shift - and as a fan of it, the R_Alt - layer, but maybe that would be hindered by hardware.

As for our extra vowels, they are just that, and have been put on the default layer on our QWERTY boards since the beginning of sliced bread. Doing the macro solution isn't that terrible, it'll just look pretty bad in software. With that said, I wonder if other keyboards type them out as some kind of macro'd alt-code or if they support it on a lower level.

This picture should show you what I mean with punctuation (and if you look at the numbers as well).
Show Image


You've made me doubt myself now as my only experience is of accidentally using my ISO board on ANSI setting which swaps @ and " and # and \ amongst a couple of others but you can test it - use your existing keyboard (whatever it may be) and tell the OS it's a UK layout and see what happens when you press keys.  If you don't get punctuation on your extra vowels then you need some new codes/macros...

And AltGr plus one key = a different letter/symbol?  You're the second person to ask about this recently so it sounds like an "implied R_Alt" option would be useful.   That's one for metalliqaz when he's next bored, I tried to add it to the request list on his Deskthority Wiki but couldn't work out how to (no edit button, no signup link :confused:) - maybe you'll have more luck?
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline Torre

  • Posts: 3
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1155 on: Wed, 12 August 2015, 06:31:24 »
Is there any chance that we can get scan codes that aren't what the program comes with? I guess it's preference that I would try to avoid using macros to type out my Scandinavian characters, but a lot of our punctuation keys look a whole lot different as well. Is this something I'm just missing, or is it possible to add it somehow?

The codes a keyboard sends for punctuation don't change for a Scandinavian board, you just tell your OS which you'd like it to output.  If you use the names of the keys in the UK layout pictured below in EasyAVR then continue to tell your OS your keyboard is Scandinavian it should work :)

No idea how the extra letters work, but unless you're making an oversize board where are you going to put them if not on a layer?  To access a layer you need to press an extra key so why not use AltGr (R_Alt) like you would on a normal board?

Y'know, that makes sense. Just to make sure I understand you correctly, placing the scan code for dot in EasyAVR (.[>]), telling my OS my layout is Scandinavian would result in my OS giving me (.[:])? I can't try it myself right now unfortunately. If that works, then I guess problem solved. Still would be great to be able to fully customize the shift - and as a fan of it, the R_Alt - layer, but maybe that would be hindered by hardware.

As for our extra vowels, they are just that, and have been put on the default layer on our QWERTY boards since the beginning of sliced bread. Doing the macro solution isn't that terrible, it'll just look pretty bad in software. With that said, I wonder if other keyboards type them out as some kind of macro'd alt-code or if they support it on a lower level.

This picture should show you what I mean with punctuation (and if you look at the numbers as well).
Show Image


You've made me doubt myself now as my only experience is of accidentally using my ISO board on ANSI setting which swaps @ and " and # and \ amongst a couple of others but you can test it - use your existing keyboard (whatever it may be) and tell the OS it's a UK layout and see what happens when you press keys.  If you don't get punctuation on your extra vowels then you need some new codes/macros...

And AltGr plus one key = a different letter/symbol?  You're the second person to ask about this recently so it sounds like an "implied R_Alt" option would be useful.   That's one for metalliqaz when he's next bored, I tried to add it to the request list on his Deskthority Wiki but couldn't work out how to (no edit button, no signup link :confused:) - maybe you'll have more luck?

...>>>>>,,,<<<<<;:;:;;
[';[';

So that uses the good old UK punctuation setup, and not what is normally recognized when I plug my keyboard in to any computer. But that is with software within Windows. I'll try all of this out once I can, and I'll hopefully remember to post back the results.

AltGr is really just Alt+Ctrl in one button, a modified modifier key if you will, and can ever really only be used as a modifier key, which an fn layer does just fine. With that said, Shift+AltGr opens up some serious layering possibilities without giving up shift, alt, or ctrl usage (or at least without fiddling around a lot with tap keys). Microsoft's Keyboard Layout Creator supports this, but that's still all in software and I have no idea what would be reproducible on a program like this.

Either way, thanks for your help! I'll keep at it, and I'll try to come back with some results sooner or later.

Offline Kraicheck

  • Posts: 28
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1156 on: Thu, 13 August 2015, 07:22:30 »
2 requests:
1) More total layers or a way to add/remove layers.

I need at least 8 layers to handle the following layout:
LShift+f = LAlt
LShift+d = LCtrl
LShift+OTHER = LShift+OTHER
RShift+j = LAlt
RShift+k = RCtrl
RShift+OTHER = RShift+OTHER

Together with other layers that I use, I would need at least 11 layers.

2) separate the layout from the controller

I have 3 filco's; 2 with a pegasus hoof, 1 with a hid liberation device.
Now I have to recreate my one layout for the pegasus hoof and hid.
It would be handy if I could re-use the definition and only needed to build the firmware for the 2 controllers.

Thanks

Offline ZippCen

  • Posts: 1
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1157 on: Fri, 21 August 2015, 04:20:49 »
Not sure if this has been covered before, but on OS X using the 'British - PC' layout on a 'Pegasus Hoof' the NON_US_BACKSLASH and GRAVE_ACCENT keys are switched.

Other boards are fine on OS X and this board is fine on Windows. I've not got round to testing it on Linux yet.

Offline HydraDyne

  • Posts: 22
  • Location: Sydney, NSW, Australia
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1158 on: Fri, 21 August 2015, 21:18:40 »
Sorry if this is a stupid question, but is there a way to create a matrix layout of 12x10? I'm not sure if I am missing something obvious or what.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1159 on: Sat, 22 August 2015, 03:57:43 »
Sorry if this is a stupid question, but is there a way to create a matrix layout of 12x10? I'm not sure if I am missing something obvious or what.
Not a stupid question but one that should be in the FAQ - this firmware uses a binary at the core which can't be changed and the handwire layout is setup for a max of 6x18.

If I'm counting the keys in your other thread correctly there are 103 - this could be made to work with a 6x18, but it will have to be wired in an interesting and not very easy to see/understand way.  How long 'til the project is due?
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline IBNobody

  • Posts: 113
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1160 on: Sat, 22 August 2015, 10:25:29 »
Regarding the Atomic...

If the have a pcb for sale, ill add easier support. If they just sell teensy kits, handwire is most appropriate, i think

Atomic kits with the PCB are for sale and will be shipping in mid-September. Jack has posted the Matrix.c.
https://github.com/jackhumbert/tmk_keyboard/blob/master/keyboard/atomic/matrix.c

Code: [Select]
//
// Atomic PCB Rev 0 Pin Assignments
//
// Column: 0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  10, 11, 12, 13, 14
// Pin:    F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7, D3, D2, D1
//

//
// Atomic PCB Rev 0 Pin Assignments
//
// Row: 0,  1,  2,  3,  4
// Pin: D0, D5, B5, B6, C6
//


Backlighting is just like the Planck PCB: on B7

To tide me over, I made some handwire layouts for the grid, MIT, and MIT + various 2U keys.

More
[1 - Grid]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

[2 - MIT]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

[3 - MIT + 2U BKSP]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

# Make 2U Backspace
MAKE_KEY(0, 13, 8, 4)
MAKE_SPACER(0, 14, 0)

[4 - MIT + 2U ALL]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

# Make 2U Backspace
MAKE_KEY(0, 13, 8, 4)
MAKE_SPACER(0, 14, 0)

# Make 2U RShift
MAKE_KEY(3, 11, 8, 4)
MAKE_SPACER(3, 12, 0)

# Make 2U Enter
MAKE_KEY(2, 12, 8, 4)
MAKE_SPACER(2, 13, 0)

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1161 on: Sat, 22 August 2015, 10:45:43 »
Regarding the Atomic...

If the have a pcb for sale, ill add easier support. If they just sell teensy kits, handwire is most appropriate, i think

Atomic kits with the PCB are for sale and will be shipping in mid-September. Jack has posted the Matrix.c.
https://github.com/jackhumbert/tmk_keyboard/blob/master/keyboard/atomic/matrix.c

Code: [Select]
//
// Atomic PCB Rev 0 Pin Assignments
//
// Column: 0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  10, 11, 12, 13, 14
// Pin:    F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7, D3, D2, D1
//

//
// Atomic PCB Rev 0 Pin Assignments
//
// Row: 0,  1,  2,  3,  4
// Pin: D0, D5, B5, B6, C6
//


Backlighting is just like the Planck PCB: on B7

To tide me over, I made some handwire layouts for the grid, MIT, and MIT + various 2U keys.

More
[1 - Grid]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

[2 - MIT]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

[3 - MIT + 2U BKSP]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

# Make 2U Backspace
MAKE_KEY(0, 13, 8, 4)
MAKE_SPACER(0, 14, 0)

[4 - MIT + 2U ALL]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

# Make 2U Backspace
MAKE_KEY(0, 13, 8, 4)
MAKE_SPACER(0, 14, 0)

# Make 2U RShift
MAKE_KEY(3, 11, 8, 4)
MAKE_SPACER(3, 12, 0)

# Make 2U Enter
MAKE_KEY(2, 12, 8, 4)
MAKE_SPACER(2, 13, 0)

Good work :thumb:
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline HydraDyne

  • Posts: 22
  • Location: Sydney, NSW, Australia
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1162 on: Sat, 22 August 2015, 18:47:58 »
Sorry if this is a stupid question, but is there a way to create a matrix layout of 12x10? I'm not sure if I am missing something obvious or what.
Not a stupid question but one that should be in the FAQ - this firmware uses a binary at the core which can't be changed and the handwire layout is setup for a max of 6x18.

If I'm counting the keys in your other thread correctly there are 103 - this could be made to work with a 6x18, but it will have to be wired in an interesting and not very easy to see/understand way.  How long 'til the project is due?

Ahh that's too bad. I don't think I have time to re-wire it, so I'll have to just find a different program. Thanks for the help mate.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1163 on: Sun, 23 August 2015, 04:21:42 »
Sorry if this is a stupid question, but is there a way to create a matrix layout of 12x10? I'm not sure if I am missing something obvious or what.
Not a stupid question but one that should be in the FAQ - this firmware uses a binary at the core which can't be changed and the handwire layout is setup for a max of 6x18.

If I'm counting the keys in your other thread correctly there are 103 - this could be made to work with a 6x18, but it will have to be wired in an interesting and not very easy to see/understand way.  How long 'til the project is due?

Ahh that's too bad. I don't think I have time to re-wire it, so I'll have to just find a different program. Thanks for the help mate.

If you need it working quickly to meet deadline I'd suggest Soarer's controller, if you want lots of features TMK.  You can always swap later :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1164 on: Sun, 23 August 2015, 21:04:16 »
Is there any chance that we can get scan codes that aren't what the program comes with? I guess it's preference that I would try to avoid using macros to type out my Scandinavian characters, but a lot of our punctuation keys look a whole lot different as well. Is this something I'm just missing, or is it possible to add it somehow?

The codes a keyboard sends for punctuation don't change for a Scandinavian board, you just tell your OS which you'd like it to output.  If you use the names of the keys in the UK layout pictured below in EasyAVR then continue to tell your OS your keyboard is Scandinavian it should work :)

No idea how the extra letters work, but unless you're making an oversize board where are you going to put them if not on a layer?  To access a layer you need to press an extra key so why not use AltGr (R_Alt) like you would on a normal board?

Y'know, that makes sense. Just to make sure I understand you correctly, placing the scan code for dot in EasyAVR (.[>]), telling my OS my layout is Scandinavian would result in my OS giving me (.[:])? I can't try it myself right now unfortunately. If that works, then I guess problem solved. Still would be great to be able to fully customize the shift - and as a fan of it, the R_Alt - layer, but maybe that would be hindered by hardware.

As for our extra vowels, they are just that, and have been put on the default layer on our QWERTY boards since the beginning of sliced bread. Doing the macro solution isn't that terrible, it'll just look pretty bad in software. With that said, I wonder if other keyboards type them out as some kind of macro'd alt-code or if they support it on a lower level.

This picture should show you what I mean with punctuation (and if you look at the numbers as well).
Show Image


EasyAVR is US and UK only.  I tried adding internationalization a long time ago but I couldn't make it happen.  I have, like, no experience with anything that's not English.  Remember that scancodes aren't the same as characters.  If you press a dot, you get the scancode for the US dot. 

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1165 on: Sun, 23 August 2015, 21:10:05 »
2 requests:
1) More total layers or a way to add/remove layers.

I need at least 8 layers to handle the following layout:
LShift+f = LAlt
LShift+d = LCtrl
LShift+OTHER = LShift+OTHER
RShift+j = LAlt
RShift+k = RCtrl
RShift+OTHER = RShift+OTHER

Together with other layers that I use, I would need at least 11 layers.

2) separate the layout from the controller

I have 3 filco's; 2 with a pegasus hoof, 1 with a hid liberation device.
Now I have to recreate my one layout for the pegasus hoof and hid.
It would be handy if I could re-use the definition and only needed to build the firmware for the 2 controllers.

Thanks

(1) Well that's tough.  The number of layers is stuck where it is because I'm bumping up against the memory limit on the microcontrollers.  I think you can probably condense the number of layers you need down a bit, if you get really creative.  Honestly I've never considered the case of adding a modifier to a shifted key..
(2) That might be possible.  I'm thinking of a re-write of the GUI that could be made to separate hardware and layouts. 

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1166 on: Sun, 23 August 2015, 21:11:08 »
Regarding the Atomic...

If the have a pcb for sale, ill add easier support. If they just sell teensy kits, handwire is most appropriate, i think

Atomic kits with the PCB are for sale and will be shipping in mid-September. Jack has posted the Matrix.c.
https://github.com/jackhumbert/tmk_keyboard/blob/master/keyboard/atomic/matrix.c

Code: [Select]
//
// Atomic PCB Rev 0 Pin Assignments
//
// Column: 0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  10, 11, 12, 13, 14
// Pin:    F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7, D3, D2, D1
//

//
// Atomic PCB Rev 0 Pin Assignments
//
// Row: 0,  1,  2,  3,  4
// Pin: D0, D5, B5, B6, C6
//


Backlighting is just like the Planck PCB: on B7

To tide me over, I made some handwire layouts for the grid, MIT, and MIT + various 2U keys.

More
[1 - Grid]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

[2 - MIT]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

[3 - MIT + 2U BKSP]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

# Make 2U Backspace
MAKE_KEY(0, 13, 8, 4)
MAKE_SPACER(0, 14, 0)

[4 - MIT + 2U ALL]
# Remove Column 16
MAKE_SPACER(0, 16, 0)
MAKE_SPACER(1, 16, 0)
MAKE_SPACER(2, 16, 0)
MAKE_SPACER(3, 16, 0)
MAKE_SPACER(4, 16, 0)
MAKE_SPACER(5, 16, 0)

# Remove Column 15
MAKE_SPACER(0, 15, 0)
MAKE_SPACER(1, 15, 0)
MAKE_SPACER(2, 15, 0)
MAKE_SPACER(3, 15, 0)
MAKE_SPACER(4, 15, 0)
MAKE_SPACER(5, 15, 0)

# Remove Row 5
MAKE_SPACER(5, 0, 0)
MAKE_SPACER(5, 1, 0)
MAKE_SPACER(5, 2, 0)
MAKE_SPACER(5, 3, 0)
MAKE_SPACER(5, 4, 0)
MAKE_SPACER(5, 5, 0)
MAKE_SPACER(5, 6, 0)
MAKE_SPACER(5, 7, 0)
MAKE_SPACER(5, 8, 0)
MAKE_SPACER(5, 9, 0)
MAKE_SPACER(5, 10, 0)
MAKE_SPACER(5, 11, 0)
MAKE_SPACER(5, 12, 0)
MAKE_SPACER(5, 13, 0)
MAKE_SPACER(5, 14, 0)

# Make 2U Spacebar
MAKE_KEY(4, 5, 8, 4)
MAKE_SPACER(4, 6, 0)

# Make 2U Backspace
MAKE_KEY(0, 13, 8, 4)
MAKE_SPACER(0, 14, 0)

# Make 2U RShift
MAKE_KEY(3, 11, 8, 4)
MAKE_SPACER(3, 12, 0)

# Make 2U Enter
MAKE_KEY(2, 12, 8, 4)
MAKE_SPACER(2, 13, 0)

Thanks!

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1167 on: Sun, 23 August 2015, 21:15:16 »


Looking for Embedded C and Python programmers to help me take this project open source.

This mostly consists of cleaning up disgusting code that is a result of the worst case of feature-creep the world has ever seen.

Git and Linux skills a plus.

Inquire within.

Thanks.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1168 on: Mon, 24 August 2015, 03:14:44 »
EasyAVR is US and UK only.  I tried adding internationalization a long time ago but I couldn't make it happen.  I have, like, no experience with anything that's not English.  Remember that scancodes aren't the same as characters.  If you press a dot, you get the scancode for the US dot.
There's not a different character for the UK ' @ compared to US ' " so are you sure the extra codes even exist?  It might be as "easy" as creating a language option which maps the UK ISO scancodes to different labels then let the OS deal with them.  Pretty much every computer in Denmark will be set to Danish already and from Torre's experimentation this seems to work.

I would like to apply to be a dev on this, I only have rusy C experience and a little Python but have plenty of spare time, Linux and general programming skills and lots of enthusiasm.  Worst case I'm useless, best case I learn something and can help :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline Kraicheck

  • Posts: 28
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1169 on: Mon, 24 August 2015, 05:08:24 »
(1) Well that's tough.  The number of layers is stuck where it is because I'm bumping up against the memory limit on the microcontrollers.  I think you can probably condense the number of layers you need down a bit, if you get really creative.  Honestly I've never considered the case of adding a modifier to a shifted key..

I could condense it down if there was an option to remove a modifier.
With that I could make all letters default shifted in the shift layer and add the "remove shift" option to my custom alt key (the j key).
That way, when e.g. pressing rshift + j + d, the controller would evaluate ((alt - shift) + (d + shift)) resulting in alt + d.
Of course, Only 1 shift should be removed so that I could also do rshift + j + l (my custom lshift) + d to send lshift + alt + d.
(((alt - shift) + (lshift) + (d + shift)) = alt + lshift + d)

How difficult do you think this would be to implement?
I have Java programming experience, so depending on how complex the source code is, I could try to add this feature myself.

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1170 on: Mon, 24 August 2015, 13:36:10 »
EasyAVR is US and UK only.  I tried adding internationalization a long time ago but I couldn't make it happen.  I have, like, no experience with anything that's not English.  Remember that scancodes aren't the same as characters.  If you press a dot, you get the scancode for the US dot.
There's not a different character for the UK ' @ compared to US ' " so are you sure the extra codes even exist?  It might be as "easy" as creating a language option which maps the UK ISO scancodes to different labels then let the OS deal with them.  Pretty much every computer in Denmark will be set to Danish already and from Torre's experimentation this seems to work.

I would like to apply to be a dev on this, I only have rusy C experience and a little Python but have plenty of spare time, Linux and general programming skills and lots of enthusiasm.  Worst case I'm useless, best case I learn something and can help :)

The scancodes are directly from the USB HID spec.  I didn't make anything up.  The only difference between US and Intl. keyboards is how the computers interpret the codes.  The code that results from pressing each key is the same.

Offline justinyhuang

  • Posts: 31
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1171 on: Fri, 28 August 2015, 00:56:33 »
this might have been covered before: is it possible to define the behavior of a key combination?
for instance, if i'd like to set ctrl+F1 to get to the bootloader mode, how can i do it with the mapper?

thanks,

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1172 on: Fri, 28 August 2015, 01:21:35 »
this might have been covered before: is it possible to define the behavior of a key combination?
for instance, if i'd like to set ctrl+F1 to get to the bootloader mode, how can i do it with the mapper?

thanks,

Four simple steps:

Edit -> copy layer
Set the key you call Ctrl to an FN with "with mods: Ctrl" ticked at the top
On the layer which matches the FN number edit -> paste layer
On the layer change F1 to be bootloader

It's a bit strange but it works :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1173 on: Fri, 28 August 2015, 11:03:54 »
So much easier to make the combo Fn+F1.

Ctrl and F1 both mean something to the computer.  The firmware doesn't try to get in the way of that.  Any extended functionality was intended to be accessed via a Fn key, which does not generate a scancode.

If you are short on available keys, you can compress the Ctrl key and the Fn key like suicidal_orange pointed out.

Another option is to use a key that you don't press very often (perhaps PrtScr, R_Win, Caps, or F10) as a Fn key in dual-use mode.  For example, holding F10 makes it a Fn, but tapping it makes it F10.


Offline justinyhuang

  • Posts: 31
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1174 on: Fri, 28 August 2015, 11:12:51 »
nice! it just works! :thumb:
no wonder people uses so many layers...
thank you for the help.

Offline TheGlow

  • Posts: 48
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1175 on: Mon, 31 August 2015, 08:17:28 »
Just wanted to say thanks for this firmware.
Just got a frosty flake and have been having some fun.
I'm new to the programmable keyboard thing, but so far the one bit I'm unsure is what is the "With Mods" section about?
So far I've just done light stuff like put a numpad on the right half of my QFR and mouse controls on arrows keys, etc.

Also I've had a few occasions where the letter H is either coming out twice, or will come out 2-3 characters later.
For instance ,  efghijhklm. Tweak the debounce? Anyone happen to know what the default is on a QFR as it was fine for the 5 months I had it before playing with this.

Offline RavenII

  • Posts: 191
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1176 on: Mon, 31 August 2015, 11:48:25 »
Just wanted to say thanks for this firmware.
Just got a frosty flake and have been having some fun.
I'm new to the programmable keyboard thing, but so far the one bit I'm unsure is what is the "With Mods" section about?
So far I've just done light stuff like put a numpad on the right half of my QFR and mouse controls on arrows keys, etc.

Also I've had a few occasions where the letter H is either coming out twice, or will come out 2-3 characters later.
For instance ,  efghijhklm. Tweak the debounce? Anyone happen to know what the default is on a QFR as it was fine for the 5 months I had it before playing with this.

My QFR does the same thing, I'm assuming it's something related to debounce as you've mentioned. I only started noticing it in the later releases of the FW. Maybe only the latest specifically, I can say that the older versions didn't exhibit this behavior, but I didn't update everytime there was a new release so I don't know when it started aside from the last release.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1177 on: Tue, 01 September 2015, 12:40:03 »
I'm new to the programmable keyboard thing, but so far the one bit I'm unsure is what is the "With Mods" section about?

Say you have a really small board like a JD40 (see pic in my signature) - if you want to type ! you'd have to press an FN key to change a letter to 1 and a shift key.  Alternately you can tick "with mods: shift" on the FN and then you only have to press FN and the key.  Another slightly strange usage was justinyhuang's request of Ctrl+F1=backlight earlier on this page.

It's a very handy feature if you need it but on a big board like your QFR you probably don't :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline Phirr

  • Posts: 58
  • Location: US
  • If you don't work you die.
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1178 on: Tue, 01 September 2015, 14:24:28 »
The with mods option also lets you assign individual keys as copy, paste, or parentheses without using the macro functions.

Offline Data

  • Posts: 2608
  • Location: Orlando, FL
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1179 on: Sat, 05 September 2015, 21:30:20 »
I used this to program a Phantom today.  Easiest setup I've ever done (granted the Phantom isn't that difficult).  Thanks for making this available.   :thumb:

Offline Phirr

  • Posts: 58
  • Location: US
  • If you don't work you die.
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1180 on: Sun, 06 September 2015, 11:28:13 »
TIFU...

20150516 on a Phantom on Windows 10. Soldered Teensy and tested by shorting with a paperclip, everything registers fine.

I go and solder switches in. Basically every key will send the keypress infinity times. (Press g once, get gggggggggggggggggggg) the exceptions are 5,9, d and f, which all work correctly.

Did I solder something wrong? Is there a setting I can change somehow to fix all this? Anyone's help would be greatly appreciated.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1181 on: Sun, 06 September 2015, 12:28:55 »
TIFU...

20150516 on a Phantom on Windows 10. Soldered Teensy and tested by shorting with a paperclip, everything registers fine.

I go and solder switches in. Basically every key will send the keypress infinity times. (Press g once, get gggggggggggggggggggg) the exceptions are 5,9, d and f, which all work correctly.

Did I solder something wrong? Is there a setting I can change somehow to fix all this? Anyone's help would be greatly appreciated.

If you want someone to check your soldering they're going to need pics :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline Phirr

  • Posts: 58
  • Location: US
  • If you don't work you die.
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1182 on: Sun, 06 September 2015, 16:19:20 »
Sorry something was wrong with the switches. Things are much better now

Offline nalui333

  • Posts: 10
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1183 on: Mon, 07 September 2015, 20:05:53 »
silly quick question (a quick search did not turn up anything)..did you get to  implement switching rows and  columns in software to compensate for diode direction with the handwired keyboard? Thanks
« Last Edit: Tue, 08 September 2015, 21:14:23 by nalui333 »

Offline angcyn

  • Posts: 1
  • Location: dianjiang,chongqing city,china
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1184 on: Tue, 08 September 2015, 02:18:05 »
thank you  so much! very god :thumb: :thumb: :thumb: :thumb:

Offline TheGlow

  • Posts: 48
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1185 on: Wed, 09 September 2015, 08:31:49 »
Just wanted to say thanks for this firmware.
Just got a frosty flake and have been having some fun.
I'm new to the programmable keyboard thing, but so far the one bit I'm unsure is what is the "With Mods" section about?
So far I've just done light stuff like put a numpad on the right half of my QFR and mouse controls on arrows keys, etc.

Also I've had a few occasions where the letter H is either coming out twice, or will come out 2-3 characters later.
For instance ,  efghijhklm. Tweak the debounce? Anyone happen to know what the default is on a QFR as it was fine for the 5 months I had it before playing with this.

My QFR does the same thing, I'm assuming it's something related to debounce as you've mentioned. I only started noticing it in the later releases of the FW. Maybe only the latest specifically, I can say that the older versions didn't exhibit this behavior, but I didn't update everytime there was a new release so I don't know when it started aside from the last release.

So far still getting it. I think default was 6ms. I was up to 40. Just raised it to 75 to see if that helps.
Very awkward getting spaces randomly in stuff in addition to repeated chars 1-3 chars later.

Anyone know the default value for a QFR? Default for Easy AVR USB was 6ms I think, but I dont have anything to compare against. What if a QFR is defaulted at 140ms? big difference.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1186 on: Wed, 09 September 2015, 18:30:56 »
Just wanted to say thanks for this firmware.
Just got a frosty flake and have been having some fun.
I'm new to the programmable keyboard thing, but so far the one bit I'm unsure is what is the "With Mods" section about?
So far I've just done light stuff like put a numpad on the right half of my QFR and mouse controls on arrows keys, etc.

Also I've had a few occasions where the letter H is either coming out twice, or will come out 2-3 characters later.
For instance ,  efghijhklm. Tweak the debounce? Anyone happen to know what the default is on a QFR as it was fine for the 5 months I had it before playing with this.

My QFR does the same thing, I'm assuming it's something related to debounce as you've mentioned. I only started noticing it in the later releases of the FW. Maybe only the latest specifically, I can say that the older versions didn't exhibit this behavior, but I didn't update everytime there was a new release so I don't know when it started aside from the last release.

So far still getting it. I think default was 6ms. I was up to 40. Just raised it to 75 to see if that helps.
Very awkward getting spaces randomly in stuff in addition to repeated chars 1-3 chars later.

Anyone know the default value for a QFR? Default for Easy AVR USB was 6ms I think, but I dont have anything to compare against. What if a QFR is defaulted at 140ms? big difference.

The main thing that makes a QFR a QFR is the controller and you've replaced that.  What's left is just a switch matrix and some cherry switches which are essentially the same across all boards so this seems a bit strange.

I have attached standard ANSI firmwares for the Frosty Flake (not V2) built from the 20150420 and 20150516 versions I have saved, the only change I made was setting boot mode on right ctrl and Esc.  Do either/both of these work correctly?  If you can find which release it went wrong in metaliqaz has more chance of working out what he changed that caused the issue :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline TheGlow

  • Posts: 48
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1187 on: Thu, 10 September 2015, 09:31:37 »
Just wanted to say thanks for this firmware.
Just got a frosty flake and have been having some fun.
I'm new to the programmable keyboard thing, but so far the one bit I'm unsure is what is the "With Mods" section about?
So far I've just done light stuff like put a numpad on the right half of my QFR and mouse controls on arrows keys, etc.

Also I've had a few occasions where the letter H is either coming out twice, or will come out 2-3 characters later.
For instance ,  efghijhklm. Tweak the debounce? Anyone happen to know what the default is on a QFR as it was fine for the 5 months I had it before playing with this.

My QFR does the same thing, I'm assuming it's something related to debounce as you've mentioned. I only started noticing it in the later releases of the FW. Maybe only the latest specifically, I can say that the older versions didn't exhibit this behavior, but I didn't update everytime there was a new release so I don't know when it started aside from the last release.

So far still getting it. I think default was 6ms. I was up to 40. Just raised it to 75 to see if that helps.
Very awkward getting spaces randomly in stuff in addition to repeated chars 1-3 chars later.

Anyone know the default value for a QFR? Default for Easy AVR USB was 6ms I think, but I dont have anything to compare against. What if a QFR is defaulted at 140ms? big difference.

The main thing that makes a QFR a QFR is the controller and you've replaced that.  What's left is just a switch matrix and some cherry switches which are essentially the same across all boards so this seems a bit strange.

I have attached standard ANSI firmwares for the Frosty Flake (not V2) built from the 20150420 and 20150516 versions I have saved, the only change I made was setting boot mode on right ctrl and Esc.  Do either/both of these work correctly?  If you can find which release it went wrong in metaliqaz has more chance of working out what he changed that caused the issue :)
Bricked! Didn't read the fine print, I have a V2. Had to pop it open and short the boot mode points.
So far with debounce at 75 it has drastically dropped. It seems space bar is the one doing it most.
99 is max, so I just set it to that and see how often it happens.
Slightly annoying as I started doing some work on Cisco switches and sometimes the command line doesnt show what you type for security and I can't tell if I'm genuinely typing wrong or its sticking extras in there.

 Edit: Ahh ok, now I see I can't spam spacebar and backspace, as it's dropping them.
Ungh. I'm going to see if it does it with with the default frosty flake hex.
I've attached the dat of the hex im currently using in case theres something odd in it.
« Last Edit: Thu, 10 September 2015, 10:50:36 by TheGlow »

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1188 on: Thu, 10 September 2015, 17:03:07 »
Edit: Ahh ok, now I see I can't spam spacebar and backspace, as it's dropping them.
Ungh. I'm going to see if it does it with with the default frosty flake hex.
I've attached the dat of the hex im currently using in case theres something odd in it.
Please find attached your .dat built with the old versions - I hope one of them works as your problem sounds rather frustrating!
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline TheGlow

  • Posts: 48
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1189 on: Fri, 11 September 2015, 10:16:12 »
Edit: Ahh ok, now I see I can't spam spacebar and backspace, as it's dropping them.
Ungh. I'm going to see if it does it with with the default frosty flake hex.
I've attached the dat of the hex im currently using in case theres something odd in it.
Please find attached your .dat built with the old versions - I hope one of them works as your problem sounds rather frustrating!
Trying this now. Just wondering what other users preferred method is.
Once its in boot mode, you cant use the keyboard. Do you plug in a secondary keyboard?
I made a batch file that erases and flashes a.hex, so i just name the one I want to a.hex first, run it, then run another batch to reload the keyboard.
I tried to make a drag and drop the hex onto the batch file, but bricked mine. I'll revisit it later.

Im on the 0516 version now. I checked the debounce timing and still on 50 which was what I last set it to. I'm guessing these are independent from the hex files. I've set it back to 6ms for now.
« Last Edit: Fri, 11 September 2015, 10:22:57 by TheGlow »

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1190 on: Fri, 11 September 2015, 15:20:24 »
If not using a Teensy with the helpful GUI to click I copy a return to the clipboard, type the flash command (I've never done an erase...) then paste the return to set it off :thumb:
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline fauxsoul

  • Posts: 16
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1191 on: Sun, 13 September 2015, 18:05:41 »
Hello, currently trying to build a hand wired Planck. First I had accidentally wired my diodes in the wrong direction, after a lengthy fix that was corrected and for the most part things are working.

I'm still having a problem though, specifically with column 9; any key on column 9 will activate multiple keys, basically all keys to the left. for example if I try to press the O (column 9, row 0) key it will not only activate O, but the i u t r e w q esc keys as well.

In order to ensure that my wiring was not a problem I tested things out by shorting the two corresponding pins on my Teensy and it had the same behavior, even after removing the wire leading to column 9.

To ensure that the specific pin that I was using for column 9 was not at fault I assigned column 9 to another pin and the exact same issue still occurs.

Current matrix and layout attached.

It's only column 9, all other columns work fine.  After inspecting the Teensy and my matrix I don't see any shorts or bad joints.

Thank you for any advice.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1192 on: Mon, 14 September 2015, 16:23:10 »
It's impossible to verify your .cfg file without a pic of the wiring, but as it nearly works and the problem happens on two different pins it sounds like you have a short (but you checked) or a diode wired backwards.  But that should only affect one row? :confused:

A pic would be very helpful to better guess what's going on :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline fauxsoul

  • Posts: 16
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1193 on: Mon, 14 September 2015, 22:58:23 »
I really think that there might be something wrong with my teensy.

I had it working for a while (with tmk firmware), but then it ****ed up again.

I'm just going to get another teensy and also replace the lead wires from the columns at a later date.

I made several posts about this and there are some pictures linked there, but unless you feel like it, don't bother (for now) I'll **** with it at a late time:

https://geekhack.org/index.php?topic=75103.msg1864212#msg1864212

https://www.reddit.com/r/olkb/comments/3kubfo/issues_with_a_column_on_a_handwired_planck/

Offline TheGlow

  • Posts: 48
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1194 on: Tue, 15 September 2015, 07:56:36 »
Edit: Ahh ok, now I see I can't spam spacebar and backspace, as it's dropping them.
Ungh. I'm going to see if it does it with with the default frosty flake hex.
I've attached the dat of the hex im currently using in case theres something odd in it.
Please find attached your .dat built with the old versions - I hope one of them works as your problem sounds rather frustrating!


Both of those still seemed to have the delayed double hits. Usually within an hour I'd notice a few.
I contacted Bpiphany and he gave me his default hex that ships with it and so far all day yesterday I hadnt hit a single issue.
Sadly I just dont have any of the custom bits I did as it is pretty much stock.
Ill look into TMK then, not sure how to create or compile it but always willing to learn something new.

Edit: to confirm it wasnt a fluke I tried your hexes again. Both in under 10 mins I had a bunch of doubled up letters.
Went back to Bpiphany stock and seems fine again.
« Last Edit: Tue, 15 September 2015, 09:49:53 by TheGlow »

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1195 on: Tue, 15 September 2015, 16:09:48 »
Hello, currently trying to build a hand wired Planck. First I had accidentally wired my diodes in the wrong direction, after a lengthy fix that was corrected and for the most part things are working.

I'm still having a problem though, specifically with column 9; any key on column 9 will activate multiple keys, basically all keys to the left. for example if I try to press the O (column 9, row 0) key it will not only activate O, but the i u t r e w q esc keys as well.

In order to ensure that my wiring was not a problem I tested things out by shorting the two corresponding pins on my Teensy and it had the same behavior, even after removing the wire leading to column 9.

To ensure that the specific pin that I was using for column 9 was not at fault I assigned column 9 to another pin and the exact same issue still occurs.

Current matrix and layout attached.

It's only column 9, all other columns work fine.  After inspecting the Teensy and my matrix I don't see any shorts or bad joints.

Thank you for any advice.

I just tried to load your layout to build but it said it was invalid in 20150625 - are you using the latest stable version rather than the beta version?  It's possible your issue is fixed in the beta so you might like to try that before getting your soldering iron out again, I'd guess it would be quicker!
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline fauxsoul

  • Posts: 16
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1196 on: Tue, 15 September 2015, 20:00:21 »
Nope, using the latest stable version (12)  20150516.

I'm able to build firmware on my PC without issue, the layout that I linked before might be old or something but here is a re-upload just in case.


I just tried to load your layout to build but it said it was invalid in 20150625 - are you using the latest stable version rather than the beta version?  It's possible your issue is fixed in the beta so you might like to try that before getting your soldering iron out again, I'd guess it would be quicker!

Offline fauxsoul

  • Posts: 16
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1197 on: Tue, 15 September 2015, 20:36:47 »
Update, I did something that should confirm that my Teensy is ****, I tried to keep things as simple as possible.



Those four wires represent the four rows on my keyboard, shorting any of those pins with the pin defined to column 9 gives me the same issue.

So it looks like it's definitely the Teensy, ****.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1198 on: Wed, 16 September 2015, 02:08:14 »
But it's the same if you move column 9 to a different pin?  That doesn't make much sense to me.

Before condemning it I would try every available pin as column 9 - perhaps unluckily both the ones you tried are broken?  The rest of it works and looks like you have some pins that have never been used, unless you've done some amazingly clean desoldering...

That or try moving column 9 to column 12 (or any higher than you've used) in the config to rule out software bugs.  The handwire is a new feature so I would have to recommend you try on the beta, sometimes it doesn't work at all which is why it's small and untempting in the OP, but the current version does :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline dragonxx21

  • Posts: 471
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #1199 on: Sat, 19 September 2015, 02:44:14 »
Was wondering if you guys could help me out. I reset my GHPad to change the firmware on it. I used the default GHPad layout on the AVR program with just added media keys on the FN layer and then flashed it to the ATMega32U4 but for some reason it's not working. I'm almost positive this is exactly how I did it the first time around so I'm not sure why it wouldn't be working now. Any ideas?
Keyboards Owned:

Realforce Topre 91 Key JIS Profile - Main
CM Quickfire Rapid Blue Switches
IBM Model M in Industrial Shell