Are there any mandatory services for BLE devices?

Answer

Anytime BLE is acting as a GATT Server, you must implement the BT SIG official Generic Access service which is also known as GAP or Generic Access Profile. The GAP service includes two mandatory characteristics: Device Name and Appearance.