qmk_firmware icon indicating copy to clipboard operation
qmk_firmware copied to clipboard

Enable Auto Shift makes the firmware too big, but C18 have enough memory?

Open bazitov opened this issue 3 years ago • 2 comments

I was trying to enable the Auto Shift functionality, but the compiler complains that there is not enough space on the microcontroller: /Applications/ARM/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: region `flash0' overflowed by 13408 bytes

I looked into keyboards/annepro2/boards/ANNEPRO2_C18/board.h - where the board is specified as 64kb board, where on the HW revision section on the website I can see that C18 should have 128kb memory.

All my current efforts are leaving me with the firmware upload progress hanging like this: [INFO] Wrote 48 bytes, at 0x00ffd0, total: 49152 bytes written (but at least then I can upload a smaller firmware without bricking the board)

Is there an option to upload this bigger firmware to C18?

Thank you, Miro

bazitov avatar Sep 01 '21 10:09 bazitov

Consider trying limited auto shift functionality, with the following definition in your config.h:

#define AUTO_SHIFT_NO_SETUP

If the link succeeds (it did for me), auto shift itself will work, but you have to determine the timing without the special keys KC_ASDN, KC_ASUP and KC_ASRP.

bitoj avatar Oct 03 '21 09:10 bitoj

I ran into the same thing. Questioning if the C18 really has 128kb of storage...

At any rate, @bitoj you are a lifesaver!!! I spent hours trying to figure out why auto shift was adding 30kb+ to my build. After adding the AUTO_SHIFT_NO_SETUP option I'm only seeing an additional 1kb added. Thank you!!!

mattrcullum avatar May 09 '22 20:05 mattrcullum