There are several Build Options commonly configured in the Makefile. If you build a custom keymap with your own keymap.c and Makefile, you will need to determine which of these should be enabled.
Various of these will cause the firmware to be substantially larger; enabling all of them is probably not possible as the aggregate consumes more memory than is available on the Atmel32U4 used on the Planck.
This controls whether or not Virtual DIP switch configuration is supported. (+1000 bytes)
Seldom used (only in one Planck keymap)
Should some keys simulate mouse activity? (+4700 bytes)
Frequently used in Planck keymaps.
Controls whether keys for audio and system control are supported. (+450 bytes)
Frequently used in Planck keymaps.
Is a debugging console enabled? (+400 bytes)
Infrequently used in Planck keymaps.
Support commands for debug and configuration
Frequently used
Nkey Rollover - if this doesn't work, see here: TMK FAQ on NKRO
Nearly always enabled.
Enable keyboard backlight functionality
Often enabled
MIDI controls
Seldom enabled.
Support audio output on port C6
Enabled fairly often
Enable direct generation of Unicode output
Rarely enabled
Enable Bluetooth with the Adafruit EZ-Key HID
Only supported on GH60 keyboards with additional Bluetooth HID addon.
Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
Rarely enabled.
Enable SYSEX API (+5390 bytes)
This may be useful eventually to enable having events published between keyboard and desktop.
Breathing sleep LED during USB suspend
It is recommended to not enable SLEEP_LED_ENABLE as it uses the same timer as BACKLIGHT_ENABLE