I've got 4 services with 15 characteristics between them. Trying to add any more than that results in sd_ble_gatts_characteristic_add() returning NRF_ERROR_NO_MEM.
All characteristics longer than 4 bytes are BLE_GATTS_VLOC_USER, all user descriptions are also in user space.
I've already tried increasing attribute table size to the (theoretical) maximum with .attr_tab_size = 0x6000.
I don't understand what exactly is the limitation I'm running into. I'm using nRF51422_xxAC.
What else is there that I can try?
EDIT:
My hack for the time being is to remove characteristic descriptions.