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

0 Members and 4 Guests are viewing this topic.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2450 on: Sun, 03 February 2019, 08:33:11 »
That's bizarre, on the standard GH60 stepped and standard are in the same position in the matrix and there's not much space to do anything different.
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline hokagemadura

  • Posts: 5
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2451 on: Sun, 03 February 2019, 09:24:58 »
is there any hack or trick to make gh60 satan works with stepped caps lock in easy avr? maybe I didn't read enough, and at the github doc it stated that easy avr doesn't support stepped caps lock, but, any chance someone had done this?

Stepped caps lock is just the shape of the keycap, it doesn't required firmware support.  Are you talking about locking caps?
no, if i put my switch on normal caps lock, it's detected, i can program it. but if i put my switch on stepped caps lock, it's not detected as key.
I'll take a look

Sent from my Pixel 3 XL using Tapatalk

thank you. i'll try to check if anything wrong with my pcb

Offline nevin

  • Posts: 1646
  • Location: US
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2452 on: Sun, 03 February 2019, 09:31:53 »
possibly a short? look at the pins for the caps lock, would be easy to make a short. solder carefully. (pic is of the 1up GH60 Satan)
212098-0
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2453 on: Sun, 03 February 2019, 10:07:56 »
Yes they should be the same location in the matrix. Check for an electrical problem

Sent from my Pixel 3 XL using Tapatalk


Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2454 on: Sun, 03 February 2019, 10:50:07 »
On the official GH60 the two middle pins are shorted and the diode is connected to the outer two, doesn't mean it's the same on the Satan but should be to be friendly as they are very close.


Completely unrelated but I just tried to make a new 8x13 board in the wizzard and chose a 60% JSON with 3 extra rows (reverse engineering the matrix of an unknown 'GH60') and it used TKL not COSTAR, so wouldn't load.  Unlikely anyone's going to be crazy enough to handwire a board like this but if you're bored it is a bug to squash :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline hokagemadura

  • Posts: 5
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2455 on: Sun, 03 February 2019, 11:05:53 »
thanks all, it works now. it looks like the stepped caps lock shorted. made a jumper and now it works flawlessly. really a fool of mine.
thank you

Offline nevin

  • Posts: 1646
  • Location: US
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2456 on: Sun, 03 February 2019, 22:35:46 »
thanks all, it works now. it looks like the stepped caps lock shorted. made a jumper and now it works flawlessly. really a fool of mine.
thank you
Great. Glad you got it figured out.
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2457 on: Mon, 25 February 2019, 05:00:20 »
Hi,

Just wondering if anyone could shed some light on this.

I'm using EasyAVR + a Pegasus Hoof controller from Bpiphany on a Filco Majestouch2 TKL.

I love it, the solution is great, I am really happy!  But I have lost one bit of functionality.

Previously I was able to repeat multiple keys, so for example hold down h + a and get hahahahahahahahahahahahahaha.

Post mod I get ahhhhhhhhhhhhhhhhhhhhhhh.

I'm thinking the issue might well be a limitation on the firmware, so this would be a feature request to EasyAVR?

Or maybe it is a limitation on the controller itself?  Any thoughts?

FWIW this feature isn't just used to spam hahahaha at people!  It can be used for gaming, for example some really neat optimisations in Starcraft and similar.  There may be other use cases.
« Last Edit: Mon, 25 February 2019, 05:04:33 by -----------8<------------ »

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2458 on: Mon, 25 February 2019, 09:16:02 »
Hi,

Just wondering if anyone could shed some light on this.

I'm using EasyAVR + a Pegasus Hoof controller from Bpiphany on a Filco Majestouch2 TKL.

I love it, the solution is great, I am really happy!  But I have lost one bit of functionality.

Previously I was able to repeat multiple keys, so for example hold down h + a and get hahahahahahahahahahahahahaha.

Post mod I get ahhhhhhhhhhhhhhhhhhhhhhh.

I'm thinking the issue might well be a limitation on the firmware, so this would be a feature request to EasyAVR?

Or maybe it is a limitation on the controller itself?  Any thoughts?

FWIW this feature isn't just used to spam hahahaha at people!  It can be used for gaming, for example some really neat optimisations in Starcraft and similar.  There may be other use cases.

Okay so what you are describing a complicated issue.  The keyboard's only job is to tell the PC that the user is pressing the 'a' key and the 'h' key.  What the PC does with that information is up to the PC.  On every PC I've ever used, holding down both keys will produce "ahhhhhhhhhhhhhhhhhhh".

Now, EasyAVR follows USB HID keyboard standards.  Therefore, "ahhhhhhhhhhh" is correct.  I don't know what the Filco is doing by default, but I assume it is using a standard 6KRO USB keyboard interface.

So, you can try two things:

1) if your PC is somehow configured to produce "ahahahahahahah" when you hold down both keys on a normal keyboard, then you can configure EasyAVR to work as a basic USB keyboard.  (turn off NKRO in the USB features tab)

2) You can configure EasyAVR to rapidly toggle the 'a' and 'h' keys (or any keys you want) by turning on "rapid fire" for those keys.  Then, instead of telling your PC that you're holding the keys, it will continually re-press the keys.


Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2459 on: Mon, 25 February 2019, 11:15:43 »
Quote
Okay so what you are describing a complicated issue.  The keyboard's only job is to tell the PC that the user is pressing the 'a' key and the 'h' key.  What the PC does with that information is up to the PC.  On every PC I've ever used, holding down both keys will produce "ahhhhhhhhhhhhhhhhhhh".

Now, EasyAVR follows USB HID keyboard standards.  Therefore, "ahhhhhhhhhhh" is correct.  I don't know what the Filco is doing by default, but I assume it is using a standard 6KRO USB keyboard interface.

So, you can try two things:

1) if your PC is somehow configured to produce "ahahahahahahah" when you hold down both keys on a normal keyboard, then you can configure EasyAVR to work as a basic USB keyboard.  (turn off NKRO in the USB features tab)

2) You can configure EasyAVR to rapidly toggle the 'a' and 'h' keys (or any keys you want) by turning on "rapid fire" for those keys.  Then, instead of telling your PC that you're holding the keys, it will continually re-press the keys.

That's really interesting cheers.

Given what you've said I just dropped my  previous controller back into the Filco and retested.

I don't think I have any special configuration but holding any two keys I can easily get multi-key repeat, ie


hahahahahahahahahahahahahahahahahahahahahahahahahahahahahahahahah
vyvyvyvyvyvyvyvyvyvyvyvyvyvyvyvyvyvyvy
emememememememememememememememememememem

even with shift in the equation

%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@

looks like I can even do n-key multi-repeat :p

qwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetryqwetry.


.......

Just dropped back to the Pegasus + EasyAVR

And retesting there it almost looks like I am able to do multi-repeat, but it is just very very hard to acheive :

So for example on maybe the 3rd attempt I can get : enenenenenenenenenenenenenenen  (I'm on Colemak these keys are adjactent so easier to hit together).

ahhhhhhhhhhhhhhhhh
haaaaaaaaaaaaa
haaaaaaaaaaa
ahhhhhhhhhhhh
ahhhhhhhh

the ha variation seems next to impossible though, either because they are far apart and so difficult to hit precisely together, or some technical limitation.

Doing a 5 key repeat tho would be completely out of the question, at least in daily use. (I have no idea why you'd want to!)

Could this be something to do with debounce code or anything like that?  There are algorithms that are in place to handles various nuances of keypresses I assume?

I would also say I'm not sure this ability to multi-key repeat is that rare, I know it's recommended on a channel I visit by a few users who don't own Filcos.  And this technique in Starcraft requires it (about 1 min in) :


Tried disabling NKRO in the usb tab, no change it seems.

On (2), this made me wonder if it's what my Filco (and others) are doing out of the box,  I tested with the key repeat setting in Windows, switching that from slow to fast and vice versa shows a clear difference, which to me says key repeat is not being managed in the controller and it is being done OS side.
« Last Edit: Mon, 25 February 2019, 11:39:35 by -----------8<------------ »

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2460 on: Mon, 25 February 2019, 11:38:39 »
The reason it's so much harder to hit it correctly on EasyAVR is because EasyAVR uses a 1000Hz refresh rate and standard keyboards use 125Hz.

Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2461 on: Mon, 25 February 2019, 12:59:12 »
By refresh rate, is that Polling rate, ie this : https://mechanicalkeyboards.com/terms.php?t=Polling%20Rate

If so is it possible to lower it at all do you know?  If it is indeed what's preventing multikey repeat (I could test) then I'd be happy to drop the rate in exchange for the extra functionality.

Offline vvp

  • Posts: 886
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2462 on: Mon, 25 February 2019, 13:35:01 »
Notice that the web page claims that polling rate below 5 ms does not make sense since Cherry MX debounces in 5 ms. That is wrong. 5 ms polling rate will add 2.5 ms to the latency on average regardless of the switch debounce time. I.e. if you care about every millisecond then it makes sense to have shorter polling rate than 5 ms.

That being said, hardly anybody cares about 2.5 ms of added latency. You will lose much more because of long travel time of Cherry MX (pressing about 2 mm till actuation talkes a lot of miliseconds).

I just could not resist to comment on an obviously wrong info on the internet ... this time. Blame me :)

Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2463 on: Mon, 25 February 2019, 14:12:17 »
Personally I welcome pedantry.

FWIW I tried the rapid keys option in Easy AVR, with this I can get multikey repeat.

I didn't want to do every single key (not sure if there are any side-effects) so only the two keys I plan to use for the SC2 hotkeys (as in the video) are now set to rapid key, this essentially moves key repeat management into the controller firmware.

o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o :)


The multikey repeat thing (via firmware rapid fire) is interesting actually, so I can hold down one key for a bit, then a second and they still alternate :

oooooooooooooooooooo6ooooooo6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6
66666666666666666666666o666666o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o6o

Which I don't think is possible normally, even on keyboards that do multi-key repeat.

Essentially normally you have to press both keys at close to the same time to get it to alternate, but with rapid fire if you miss the timing a bit, say in the heat of a game, then it still works, which is actually slightly better. :)

So although we could argue the rapid keys option is a bit of a workaround for functionality that (for whatever reason) is not availble in EasyAVR/Pegasus combo, there are actually some extra benefits to using this workaround anyway.

Thanks for the awesome work on EasyAVR btw metalliqaz, it is really great, and being able to program a keyboard is so awesome.  :thumb:
« Last Edit: Mon, 25 February 2019, 14:26:14 by -----------8<------------ »

Offline vvp

  • Posts: 886
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2464 on: Mon, 25 February 2019, 14:22:28 »
Chris' firmware has programs (stored in eeprom and interpreted by firmware) and one can upload whatever kind of rapid fire sequences one wants up to the frequency of USP polling rate. No clue about Easy AVR. I do not use it.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2465 on: Tue, 26 February 2019, 05:19:59 »
I didn't want to do every single key (not sure if there are any side-effects)
What I would do (assuming you have a spare layer) is copy the default layer to a new layer with these keys (and any others that may be helpful) set to rapid-fire and switch to that layer for gaming.  You never know what a program is going to do with keypresses and this avoids any and all side effects plus it will give the Scroll Lock LED something to do :))
« Last Edit: Tue, 26 February 2019, 05:22:14 by suicidal_orange »
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline Nlight

  • Posts: 57
  • Location: France
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2466 on: Wed, 13 March 2019, 20:15:37 »
Hey, I'm facing an error I'm not so sure about the cause :

I've gone through the wizard to create a new board, edited the python script accordingly (see the hidden part of this post), and when I restart EasyAVR, an error pops up saying :
Quote
Error loading keyboard definition 'nonmboard.py': (num_rows, num_cols) mudt fit in (5,15) for the SIXTY firmware.

What I can say, is that the srip was all mixed up of the number of rows, columns, and so, the keyboard_definition too. Which is why I corrected it, but.... Tough luck.
Do you know what's wrong.

NB : for my first edit of the script, I said there was 4 rows, 16 columns. I changed the number of columns to 17, and increase column number of som keys in keyboard_definition, I thought that maybe the the presence of a "column_spacer" may had to count as a column after all...

More
Code: [Select]
#
# READ THIS
#
# This file contains a description of the various parameters that
# must be defined in order to completely describe the new keyboard.
# This file must be correct for the firmware to work, however if
# if is incorrect reprogramming the board won't cause any damage.
#
# This tool that created this file did not have all the information
# needed to make a perfect config.  Check over all the data for
# correctness.  Definitely make sure to fix the matix rows/columns in
# keyboard_definition, which are almost certainly wrong.
#
# This file uses two helper functions to make the configuration
# easier.  For more complicated hardware, it may be necessary to
# set the parameters by hand.  Look at other configs, such as
# boards/sigma.py, for examples if you want to try it.
#

# The first decision you have to make is to choose a hardware
# build.  A handwire board using a Teensy2.0 will probably want
# ATmega32U4_16MHz_TKL or ATmega32U4_16MHz_SIXTY.  The sizes are
# defined in the templates/__init__.py file of the keymapper.
# Leave the rest of the imports like they are here.

import easykeymap.templates.ATmega32U4_16MHz_SIXTY as firmware
from easykeymap.ioports import *
from easykeymap.helper import make_matrix_config, make_led_config


# The name of the board in the "New" dialog

description = "NoNameBoard"

# Unique string to identify THIS exact hardware layout.  If you change
# this file after saving layouts in the GUI, bump the unique_id to
# tell the tool that the old save files should not be used.  (prevents
# corrupted builds)

unique_id = "NONMBOARD_001"

# The name of the .cfg file the system will try to find for altered
# layout options.  See the configs subdir of the keymapper.

cfg_name = "nonmboard"


# Hand-wired boards usually use Teensy controllers.  Set this to
# True to make sure that the bootloader works.

teensy = True

# If your board has an exposed switch for going into the bootloader,
# you can set this to True and the system won't prompt you to add a
# BOOT key to your layout.

hw_boot_key = True


# The number of rows and columns in the matrix.  In a hand-wired board
# each of these will correspond to a single pin.

num_rows = 4
num_cols = 17


# Keyboards work by scanning a matrix to check each key.  The scan
# works by setting an active row/column (strobing) and then reading
# the status of every switch that crosses it (sensing).
# strobe_cols tells the firmware which direction you have your diodes
# installed.  If diodes go from column to row, then strobe_cols must
# be False.  If diodes go from row to column, then strobe_cols must be
# True.

strobe_cols = False

# strobe_low tells the firmware if a row/column should be activated
# by pulling the pin high or low.  Hand-wired boards will almost always
# use strobe_low = True

strobe_low = True


# The matrix_hardware, matrix_strobe, matrix_sense parameters tell
# the firmware how to initialize the ports, what pins must be set
# for each row/column, and what order to strobe/sense.  These are
# complicated and are explained fully elsewhere.  It is easiest to
# configure the matrix by using the make_matrix_config function as
# shown below.  Just customize 'rows' and 'cols' for your project.

matrix_hardware, matrix_strobe, matrix_sense = make_matrix_config(
    strobe_cols=strobe_cols,
    strobe_low=strobe_low,
    rows=[D3, C6, D7, B4],
    cols=[B0, B1, B2, B3, B7, D0, D1, D2, B5, B6, F7, F6, F5, F4, F1, F0],
    device=firmware.device
)


# The num_leds, num_ind, led_hardware, backlighting, num_bl_enab,
# and bl_modes parameters tell the firmware how to operate the LEDs
# for indicators (for example, Caps Lock) and for backlighting.  In
# order to fine-tune the configs, these may have to be defined manually
# but it is easiest to use make_led_config.
# LED_DRIVER_PULLUP is used when the pin is connected to the anode of
# the LED and the cathode is connected to ground.
# LED_DRIVER_PULLDOWN is used when the pin is connected to the cathode
# of the LED and the anode is connected to the power supply.
# Hand-wired boards will usually want to use LED_DRIVER_PULLDOWN.
# If there are no backlights, just leave the list empty (ie. just []).

num_leds, num_ind, led_hardware, backlighting, num_bl_enab, bl_modes = make_led_config(
    led_pins = [],
    led_dir=LED_DRIVER_PULLDOWN,
    backlight_pins = [],
    backlight_dir=LED_DRIVER_PULLDOWN
)


# Define the default assignments of the indicator LEDs.  The length
# of this list must equal the length of led_pins.  For each LED, the
# first string is the description of the key shown in the GUI.  The
# second string is the default function assigned to that LED.  LED
# functions must be strings as defined in led_assignments of gui.py.
# Choices are 'Num Lock', 'Caps Lock', 'Scroll Lock', 'Compose', 'Kana',
# 'Win Lock', 'Fn1 Active', 'Fn2 Active', 'Fn3 Active', 'Fn4 Active',
# 'Fn5 Active', 'Fn6 Active', 'Fn7 Active', 'Fn8 Active', 'Fn9 Active',
# 'Any Fn Active', 'Recording', 'USB Init', 'USB Error', 'USB Suspend',
# 'USB Normal', 'Backlight', and 'Unassigned'.

led_definition = []


# Define your layout.  This is a list of rows.  Each row is a list
# of keys.  Each key is a tuple of three items.  First item is a tuple
# defining the width,height of the key.  If it is just a number, it
# will be a space instead of a key.  All units are in quarter key lengths,
# so a standard key would be (4,4).  Second item is a tuple defining the
# row,column in the matrix for that key.  Third item is the default scancode
# for that key, from scancodes.py.  If a row is a number instead of a list,
# it will just make a vertical spacer.
# ((key width, key height), (matrix row, matrix column), 'default mapping')

keyboard_definition = [
  [
    ((4, 4), (0, 0), '0'),
    ((4, 4), (0, 1), '0'),
    ((4, 4), (0, 2), '0'),
    ((4, 4), (0, 3), '0'),
    ((4, 4), (0, 4), '0'),
    ((4, 4), (0, 5), '0'),
    (20, None, '0'),
    ((4, 4), (0, 11), '0'),
    ((4, 4), (0, 12), '0'),
    ((4, 4), (0, 13), '0'),
    ((4, 4), (0, 14), '0'),
    ((4, 4), (0, 15), '0'),
    ((4, 4), (0, 16), '0')
  ],
  [
    ((4, 4), (1, 0), '0'),
    ((4, 4), (1, 1), '0'),
    ((4, 4), (1, 2), '0'),
    ((4, 4), (1, 3), '0'),
    ((4, 4), (1, 4), '0'),
    ((4, 4), (1, 5), '0'),
    (20, None, '0'),
    ((4, 4), (1, 11), '0'),
    ((4, 4), (1, 12), '0'),
    ((4, 4), (1, 13), '0'),
    ((4, 4), (1, 14), '0'),
    ((4, 4), (1, 15), '0'),
    ((4, 4), (1, 16), '0')
  ],
  [
    ((4, 4), (2, 0), '0'),
    ((4, 4), (2, 1), '0'),
    ((4, 4), (2, 2), '0'),
    ((4, 4), (2, 3), '0'),
    ((4, 4), (2, 4), '0'),
    ((4, 4), (2, 5), '0'),
    (20, None, '0'),
    ((4, 4), (2, 11), '0'),
    ((4, 4), (2, 12), '0'),
    ((4, 4), (2, 13), '0'),
    ((4, 4), (2, 14), '0'),
    ((4, 4), (2, 15), '0'),
    ((4, 4), (2, 16), '0')
  ],
  [
    (16, None, '0'),
    ((4, 4), (3, 4), '0'),
    ((4, 4), (3, 5), '0'),
    ((4, 4), (3, 6), '0'),
    ((4, 4), (3, 7), '0'),
    (4, None, '0'),
    ((4, 4), (3, 9), '0'),
    ((4, 4), (3, 10), '0'),
    ((4, 4), (3, 11), '0'),
    ((4, 4), (3, 12), '0'),
    (16, None, '0')
  ]
]

# Just leave this here as-is.
KMAC_key = None
« Last Edit: Wed, 13 March 2019, 20:28:10 by Nlight »

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2467 on: Wed, 13 March 2019, 21:27:07 »
The Sixty sized firmware only supports 15 columns. You need a larger sized firmware. Try TKL

Sent from my Pixel 3 XL using Tapatalk


Offline Nlight

  • Posts: 57
  • Location: France
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2468 on: Thu, 14 March 2019, 08:07:43 »
Well thanks  :thumb:, and damn   :mad: ! I was sure to have red all the comments in the script.... obviously not. In these cases, I'd love to shout at myself something like RTFM. Sorry about that, and thanks again.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2469 on: Thu, 14 March 2019, 09:46:18 »
4x17?  Sounds like an interesting layout...
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline Nlight

  • Posts: 57
  • Location: France
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2470 on: Thu, 14 March 2019, 11:40:02 »
Well, this is in fact a 4x16 grid (but only 44 keys), the project has already been completed (with qmk via kbfirmware), never updated the thread though. To be honest, as a keyboard, it may be really nice and effective (concept), however it asks too many layers to learn, which can be learned far more easily with leds and labels on the caps, which I don't have (plus full split on the lap is...obvioiusly a bad idea). So, instead, I removed some caps, and currently use it as a hitbox for Mortal Kombat 9, which hitbox is far better than a console pad or a regular keyboard for this situation.

Offline i5ar

  • Posts: 2
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2471 on: Wed, 03 April 2019, 02:57:36 »
Hello and thank you for Easy AVR. I've been playing with it for a while now and I wonder if there is a way to build the .hex file just from a  .json file, without using the GUI? I'm looking at the  build_firmware method but it seems a little inconvenient for this purpose.
« Last Edit: Thu, 25 April 2019, 06:38:43 by i5ar »

Offline socratisator

  • Posts: 41
  • Location: France
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2472 on: Sat, 23 November 2019, 04:06:14 »
Hello everyone,
On the advice of Suicidal_orange, I'm posting here to try to figure out the mystery of the behaviour of my teensy++2 clone.
To sum up the whole thread (here https://geekhack.org/index.php?topic=102719.msg2835760#msg2835760), I try to repair my Cooler Master CM Storm (full size + macro key column) using the aforementioned board (photos visible on post #8 on the dedicated thread) and EasyAVR, but up till now all key press result in the sequence : ALT + WIN + SHIFT (right) + CTRL (right), the two last keys stay pressed. This behaviour was observed with AquaKeyTest.
The PYTHON file used for configuration of EasyAVR and the HEX file résulting are attached.
I'd really appreciate any lead as for now, I'm completly stuck.


Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2473 on: Sat, 23 November 2019, 12:10:20 »
Hello everyone,
On the advice of Suicidal_orange, I'm posting here to try to figure out the mystery of the behaviour of my teensy++2 clone.
To sum up the whole thread (here https://geekhack.org/index.php?topic=102719.msg2835760#msg2835760), I try to repair my Cooler Master CM Storm (full size + macro key column) using the aforementioned board (photos visible on post #8 on the dedicated thread) and EasyAVR, but up till now all key press result in the sequence : ALT + WIN + SHIFT (right) + CTRL (right), the two last keys stay pressed. This behaviour was observed with AquaKeyTest.
The PYTHON file used for configuration of EasyAVR and the HEX file résulting are attached.
I'd really appreciate any lead as for now, I'm completly stuck.

Hello and Bonjour!

I am very rusty when it comes to supporting this software.  I have kids now and just don't have the time anymore to get real deep into development.

It sounds like your matrix is getting all screwed up during the build, but I don't see evidence of that in the .hex file you shared.  The ACTIONS array is empty, so it shouldn't be triggering any automods.  Perhaps it is screwing up the USB transmissions.  Unfortunately I don't have much of an idea here.

I did a quick pass of your config file and it looks sound.

Perhaps you could try a partial implementation of your matrix in one of the other builds?  Such as SQUARE or FULLSIZE?  If those worked but the COSTAR size doesn't work, that would give us a clue.

Sorry I'm not more helpful.

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2474 on: Sat, 23 November 2019, 13:09:06 »
I've tested the hex on a genuine Teensy 2.0++ and it works fine.  The keys aren't connected in the matrix so it makes no sense for them to activate at the same time - it's almost like it's reading part of the bootloader rather than the stored keys so always finds the same codes, though I don't really know what goes on behind the scenes on these chips to know if that's possible.
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 #2475 on: Sat, 23 November 2019, 21:50:26 »
I've tested the hex on a genuine Teensy 2.0++ and it works fine.  The keys aren't connected in the matrix so it makes no sense for them to activate at the same time - it's almost like it's reading part of the bootloader rather than the stored keys so always finds the same codes, though I don't really know what goes on behind the scenes on these chips to know if that's possible.

I guess I should have read the linked thread to catch up.  But if the hex works on a genuine Teensy and he's using a knockoff... that kinda answers the question doesn't it?

Offline socratisator

  • Posts: 41
  • Location: France
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2476 on: Sun, 24 November 2019, 01:15:20 »
Thanks for the warm welcome  :)
Quote
But if the hex works on a genuine Teensy and he's using a knockoff... that kinda answers the question doesn't it
That's what I feared for some times now, as suggested by suicuidal_orange first. But, correct me if I'm wrong, the tools that load the binary into the chip (arduino-1.8.10\hardware\tools\teensy.exe) is supposed to check the integrity once uploaded ? Is it possible to say "Ok" when it's not ?
Anyway, thanks for the lead, I'll check what's happen with a SQUARE or FULLSIZE !

Quote
it's almost like it's reading part of the bootloader rather than the stored keys so always finds the same codes
I really hate not understanding things, but your explanation makes perfect sense !

Offline socratisator

  • Posts: 41
  • Location: France
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2477 on: Sun, 24 November 2019, 01:52:08 »
Here the result with "standard" builds found in Easy AVR\easykeymap_windows_3_01_10\builds :
AT90USB1286_8MHz_FULLSIZE.hex => led ON, message from Windows "USB Device not recognized", no key works
AT90USB1286_16MHz_COSTAR.hex => led OFF, no message, no key works
AT90USB1286_16MHz_FULLSIZE.hex => led OFF, no message, no key works
AT90USB1286_16MHz_JUMBO.hex => led OFF, no message, no key works
 :(

Offline socratisator

  • Posts: 41
  • Location: France
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2478 on: Tue, 26 November 2019, 11:51:36 »
One quick question : you said you check the HEX file I provided, can you just tell me how you did that ?
(was about to install Atmel Studio 7 to see if I can learn something about my knockoff but the installer weight 700 Mo  :eek:)

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2479 on: Tue, 26 November 2019, 12:58:57 »
It's just a text file. I know the layout of memory so I can check that data is in the right spot.

Sent from my Pixel 3 XL using Tapatalk


Offline socratisator

  • Posts: 41
  • Location: France
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2480 on: Sun, 05 January 2020, 01:39:34 »
Hello, Just to let you know guys, the new board works fine with EasyAVR and the HEX file provided by Suicidal_orange  :thumb:
Next step soon in the dedicated thread https://geekhack.org/index.php?topic=102719.0 :cool:

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2481 on: Sun, 05 January 2020, 07:02:08 »
Hello, Just to let you know guys, the new board works fine with EasyAVR and the HEX file provided by Suicidal_orange  :thumb:
Next step soon in the dedicated thread https://geekhack.org/index.php?topic=102719.0 :cool:

Nice!

Offline iceman358

  • Posts: 7
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2482 on: Fri, 31 January 2020, 18:52:05 »
Hello there.

I am writing from a handwired keyboard that uses the EasyAVR on a Teensy 2++.
However, I am trying to implement the SCANCODE_BOOT and it is not working. I googled it and found that somebody else had this problem in the past but it was not solved (https://github.com/dhowland/EasyAVR/issues/72). I am having the same issue. When the SCANCODE_BOOT is pressed the keyboard stops working but it does not appear at the Teensy Loader in order to reprogram it.

Has anyone encountered it before?
(sorry of this is the wrong thread)

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2483 on: Fri, 31 January 2020, 19:15:25 »
Hello there.

I am writing from a handwired keyboard that uses the EasyAVR on a Teensy 2++.
However, I am trying to implement the SCANCODE_BOOT and it is not working. I googled it and found that somebody else had this problem in the past but it was not solved (https://github.com/dhowland/EasyAVR/issues/72). I am having the same issue. When the SCANCODE_BOOT is pressed the keyboard stops working but it does not appear at the Teensy Loader in order to reprogram it.

Has anyone encountered it before?
(sorry of this is the wrong thread)

This is the right thread.

It is a known issue with the Teensy++.  With the previous user I double and triple checked the Teensy documentation and still could not find a reason for this issue.  Of course I didn't have a Teensy++ board so I couldn't really try it for myself.

I'm willing to give it another shot if you are willing to load some test builds on your board.

I think this time I'll try and contact the Teensy people for suggestions.

Offline iceman358

  • Posts: 7
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2484 on: Fri, 31 January 2020, 20:15:22 »
Hello there.

I am writing from a handwired keyboard that uses the EasyAVR on a Teensy 2++.
However, I am trying to implement the SCANCODE_BOOT and it is not working. I googled it and found that somebody else had this problem in the past but it was not solved (https://github.com/dhowland/EasyAVR/issues/72). I am having the same issue. When the SCANCODE_BOOT is pressed the keyboard stops working but it does not appear at the Teensy Loader in order to reprogram it.

Has anyone encountered it before?
(sorry of this is the wrong thread)

This is the right thread.

It is a known issue with the Teensy++.  With the previous user I double and triple checked the Teensy documentation and still could not find a reason for this issue.  Of course I didn't have a Teensy++ board so I couldn't really try it for myself.

I'm willing to give it another shot if you are willing to load some test builds on your board.

I think this time I'll try and contact the Teensy people for suggestions.

Of course. Also, the wiring at the Teensy is done with dupont connectors, so I can disconnect it easily if you think it would help somehow.

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2485 on: Fri, 31 January 2020, 20:27:23 »
Hello there.

I am writing from a handwired keyboard that uses the EasyAVR on a Teensy 2++.
However, I am trying to implement the SCANCODE_BOOT and it is not working. I googled it and found that somebody else had this problem in the past but it was not solved (https://github.com/dhowland/EasyAVR/issues/72). I am having the same issue. When the SCANCODE_BOOT is pressed the keyboard stops working but it does not appear at the Teensy Loader in order to reprogram it.

Has anyone encountered it before?
(sorry of this is the wrong thread)

This is the right thread.

It is a known issue with the Teensy++.  With the previous user I double and triple checked the Teensy documentation and still could not find a reason for this issue.  Of course I didn't have a Teensy++ board so I couldn't really try it for myself.

I'm willing to give it another shot if you are willing to load some test builds on your board.

I think this time I'll try and contact the Teensy people for suggestions.

Of course. Also, the wiring at the Teensy is done with dupont connectors, so I can disconnect it easily if you think it would help somehow.

Okay I'll take a look this weekend.  Keep in mind I have kids so it might take a few days.

Offline iceman358

  • Posts: 7
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2486 on: Fri, 31 January 2020, 20:42:40 »
Hello there.

I am writing from a handwired keyboard that uses the EasyAVR on a Teensy 2++.
However, I am trying to implement the SCANCODE_BOOT and it is not working. I googled it and found that somebody else had this problem in the past but it was not solved (https://github.com/dhowland/EasyAVR/issues/72). I am having the same issue. When the SCANCODE_BOOT is pressed the keyboard stops working but it does not appear at the Teensy Loader in order to reprogram it.

Has anyone encountered it before?
(sorry of this is the wrong thread)

This is the right thread.

It is a known issue with the Teensy++.  With the previous user I double and triple checked the Teensy documentation and still could not find a reason for this issue.  Of course I didn't have a Teensy++ board so I couldn't really try it for myself.

I'm willing to give it another shot if you are willing to load some test builds on your board.

I think this time I'll try and contact the Teensy people for suggestions.

Of course. Also, the wiring at the Teensy is done with dupont connectors, so I can disconnect it easily if you think it would help somehow.

Okay I'll take a look this weekend.  Keep in mind I have kids so it might take a few days.

No rush. Thanks for helping out.

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2487 on: Sat, 01 February 2020, 14:52:11 »
Hello there.

I am writing from a handwired keyboard that uses the EasyAVR on a Teensy 2++.
However, I am trying to implement the SCANCODE_BOOT and it is not working. I googled it and found that somebody else had this problem in the past but it was not solved (https://github.com/dhowland/EasyAVR/issues/72). I am having the same issue. When the SCANCODE_BOOT is pressed the keyboard stops working but it does not appear at the Teensy Loader in order to reprogram it.

Has anyone encountered it before?
(sorry of this is the wrong thread)

This is the right thread.

It is a known issue with the Teensy++.  With the previous user I double and triple checked the Teensy documentation and still could not find a reason for this issue.  Of course I didn't have a Teensy++ board so I couldn't really try it for myself.

I'm willing to give it another shot if you are willing to load some test builds on your board.

I think this time I'll try and contact the Teensy people for suggestions.

Of course. Also, the wiring at the Teensy is done with dupont connectors, so I can disconnect it easily if you think it would help somehow.

Okay I'll take a look this weekend.  Keep in mind I have kids so it might take a few days.

No rush. Thanks for helping out.

I just realized that the PM I sent you didn't actually include the build link.  Oops!

Here is a test build: https://www.dropbox.com/s/bxda7wckoh926t9/teensyplusplus_test1.zip?dl=0

Hopefully you are using Windows.

Offline iceman358

  • Posts: 7
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2488 on: Sat, 01 February 2020, 15:19:23 »
Hello there.

I am writing from a handwired keyboard that uses the EasyAVR on a Teensy 2++.
However, I am trying to implement the SCANCODE_BOOT and it is not working. I googled it and found that somebody else had this problem in the past but it was not solved (https://github.com/dhowland/EasyAVR/issues/72). I am having the same issue. When the SCANCODE_BOOT is pressed the keyboard stops working but it does not appear at the Teensy Loader in order to reprogram it.

Has anyone encountered it before?
(sorry of this is the wrong thread)

This is the right thread.

It is a known issue with the Teensy++.  With the previous user I double and triple checked the Teensy documentation and still could not find a reason for this issue.  Of course I didn't have a Teensy++ board so I couldn't really try it for myself.

I'm willing to give it another shot if you are willing to load some test builds on your board.

I think this time I'll try and contact the Teensy people for suggestions.

Of course. Also, the wiring at the Teensy is done with dupont connectors, so I can disconnect it easily if you think it would help somehow.

Okay I'll take a look this weekend.  Keep in mind I have kids so it might take a few days.

No rush. Thanks for helping out.

I just realized that the PM I sent you didn't actually include the build link.  Oops!

Here is a test build: https://www.dropbox.com/s/bxda7wckoh926t9/teensyplusplus_test1.zip?dl=0

Hopefully you are using Windows.

Just saw this. I am using Linux. I have not opened the link, will do tomorrow. Is it a program to test the teensy? I could format a drive with windows in order to test it. Is 7 ok?

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2489 on: Sat, 01 February 2020, 16:28:01 »

Just saw this. I am using Linux. I have not opened the link, will do tomorrow. Is it a program to test the teensy? I could format a drive with windows in order to test it. Is 7 ok?

I had only built the windows package.

here's the multiplatform one:  https://www.dropbox.com/s/ajbv6ji3mjcwxqn/teensyplusplus_test1.tar.gz?dl=0

Offline iceman358

  • Posts: 7
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2490 on: Mon, 03 February 2020, 12:31:08 »

Just saw this. I am using Linux. I have not opened the link, will do tomorrow. Is it a program to test the teensy? I could format a drive with windows in order to test it. Is 7 ok?

I had only built the windows package.

here's the multiplatform one:  https://www.dropbox.com/s/ajbv6ji3mjcwxqn/teensyplusplus_test1.tar.gz?dl=0

I tried it with the same *.py that I had created and just used this version to build it again. I had the same result.

Should I create a new keyboard from the start?

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2491 on: Tue, 04 February 2020, 08:51:32 »

Just saw this. I am using Linux. I have not opened the link, will do tomorrow. Is it a program to test the teensy? I could format a drive with windows in order to test it. Is 7 ok?

I had only built the windows package.

here's the multiplatform one:  https://www.dropbox.com/s/ajbv6ji3mjcwxqn/teensyplusplus_test1.tar.gz?dl=0

I tried it with the same *.py that I had created and just used this version to build it again. I had the same result.

Should I create a new keyboard from the start?

That should have worked.  Man, this is killing me.  I literally copied the code from the Teensy website.

Let me ask you this.  When you hit the BOOT key, and the keyboard stops working, does it disconnect from USB or does it remain detected as a keyboard?


Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2492 on: Tue, 04 February 2020, 16:15:39 »

Just saw this. I am using Linux. I have not opened the link, will do tomorrow. Is it a program to test the teensy? I could format a drive with windows in order to test it. Is 7 ok?

I had only built the windows package.

here's the multiplatform one:  https://www.dropbox.com/s/ajbv6ji3mjcwxqn/teensyplusplus_test1.tar.gz?dl=0

I tried it with the same *.py that I had created and just used this version to build it again. I had the same result.

Should I create a new keyboard from the start?

Two more builds to try:

https://www.dropbox.com/s/k1f93ss6d2n04yv/teensyplusplus_test2.tar.gz?dl=0

https://www.dropbox.com/s/u5x****w09q6rou/teensyplusplus_test3.tar.gz?dl=0


Offline iceman358

  • Posts: 7
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2493 on: Fri, 07 February 2020, 12:01:20 »

Just saw this. I am using Linux. I have not opened the link, will do tomorrow. Is it a program to test the teensy? I could format a drive with windows in order to test it. Is 7 ok?

I had only built the windows package.

here's the multiplatform one:  https://www.dropbox.com/s/ajbv6ji3mjcwxqn/teensyplusplus_test1.tar.gz?dl=0

I tried it with the same *.py that I had created and just used this version to build it again. I had the same result.

Should I create a new keyboard from the start?

Two more builds to try:

https://www.dropbox.com/s/k1f93ss6d2n04yv/teensyplusplus_test2.tar.gz?dl=0

https://www.dropbox.com/s/u5x****w09q6rou/teensyplusplus_test3.tar.gz?dl=0

The test2 build resulted in the same behavior. The test3 could not be found at dropbox. Could it be the asterisks?

Offline nickheller

  • Cherry ML life
  • * Destiny Supporter
  • Posts: 1647
  • Location: US
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2494 on: Fri, 07 February 2020, 12:05:59 »


Two more builds to try:

https://www.dropbox.com/s/k1f93ss6d2n04yv/teensyplusplus_test2.tar.gz?dl=0

https://www.dropbox.com/s/u5x****w09q6rou/teensyplusplus_test3.tar.gz?dl=0

The test2 build resulted in the same behavior. The test3 could not be found at dropbox. Could it be the asterisks?

The asterisks are the result of geekhacks profanity filter which is on by default. To change this go here https://geekhack.org/index.php?action=profile;area=forumprofile and select modify profile, then look and layout, then check the "leave words uncensored" box. You could also replace the asterisks with the "f word"  :)
« Last Edit: Fri, 07 February 2020, 12:07:50 by nickheller »

Offline iceman358

  • Posts: 7
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2495 on: Sat, 08 February 2020, 05:59:34 »


Two more builds to try:

https://www.dropbox.com/s/k1f93ss6d2n04yv/teensyplusplus_test2.tar.gz?dl=0

https://www.dropbox.com/s/u5x****w09q6rou/teensyplusplus_test3.tar.gz?dl=0

The test2 build resulted in the same behavior. The test3 could not be found at dropbox. Could it be the asterisks?

The asterisks are the result of geekhacks profanity filter which is on by default. To change this go here https://geekhack.org/index.php?action=profile;area=forumprofile and select modify profile, then look and layout, then check the "leave words uncensored" box. You could also replace the asterisks with the "f word"  :)

****
THAT WORKED

It boots in boot mode! Thank you very very much. :)

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2496 on: Sun, 09 February 2020, 06:45:55 »
A working boot key on the 2.0++ is excellent news, I'll have to upgrade.

Thanks metalliqaz :thumb:
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 #2497 on: Sun, 09 February 2020, 10:37:13 »
A working boot key on the 2.0++ is excellent news, I'll have to upgrade.

Thanks metalliqaz :thumb:

Be careful with that test build.  It's a perfectly normal build but it only works on Teensy++ 2.0.  If you load it on an AT90USB128 that doesn't have the Teensy bootloader, it won't work.

I still haven't figured out why my normal code won't work and it's pissing me off.  Not sure how I will incorporate this into a normal release.  I will continue making a few test builds, most likely.
« Last Edit: Sun, 09 February 2020, 10:42:46 by metalliqaz »

Offline metalliqaz

  • * Maker
  • Thread Starter
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2498 on: Sun, 09 February 2020, 15:42:07 »

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Easy AVR USB Keyboard Firmware and Keymapper
« Reply #2499 on: Mon, 10 February 2020, 04:26:08 »
First release in a long time:

https://github.com/dhowland/EasyAVR/releases/tag/v3.01.11

So just the one extra 'if' to bodge in the alternate working code?  GUI has tabs instead of needing to use menus in the last version I have, a good improvement all round :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod