<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>How to add System ID characteristic (0x2A23) using Kconfig</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/94077/how-to-add-system-id-characteristic-0x2a23-using-kconfig</link><description>Hi, 
 How do I add the System ID characteristic (UUID 0x2A23) from the Device Information Service (DIS) using Kconfig commands in the prj.conf file? 
 For example, I can add the Manufacturer Name String Characteristic (UUID 0x2A29) using the following</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Sun, 26 Jan 2025 03:13:17 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/94077/how-to-add-system-id-characteristic-0x2a23-using-kconfig" /><item><title>RE: How to add System ID characteristic (0x2A23) using Kconfig</title><link>https://devzone.nordicsemi.com/thread/520089?ContentTypeID=1</link><pubDate>Sun, 26 Jan 2025 03:13:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7777d21b-f064-499a-aa01-4c5fbb07d07d</guid><dc:creator>LLLWJ</dc:creator><description>&lt;p&gt;&lt;strong&gt;Value: (0x) 35-35-2D-34-34-2D-33-33-2D-32-32-2D-31-31-2D-38-38-2D-37-37-00.&amp;nbsp;&lt;/strong&gt;&lt;span&gt;Any idea why this is happening?&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I&amp;#39;m also having the same problem, how can I solve it in the end?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to add System ID characteristic (0x2A23) using Kconfig</title><link>https://devzone.nordicsemi.com/thread/520088?ContentTypeID=1</link><pubDate>Sun, 26 Jan 2025 03:12:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6ad7d394-1e7c-4144-959e-0ab9a82abeba</guid><dc:creator>LLLWJ</dc:creator><description>&lt;p&gt;&lt;span&gt;I&amp;#39;m also having the same problem, how can I solve it in the end?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to add System ID characteristic (0x2A23) using Kconfig</title><link>https://devzone.nordicsemi.com/thread/397147?ContentTypeID=1</link><pubDate>Wed, 23 Nov 2022 11:36:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e538903c-d3e8-4463-9207-1a739b4e0d25</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Is this what you added to the&amp;nbsp;dis.c file? Could you post the whole file?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to add System ID characteristic (0x2A23) using Kconfig</title><link>https://devzone.nordicsemi.com/thread/397029?ContentTypeID=1</link><pubDate>Wed, 23 Nov 2022 00:00:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ade97b0c-9131-4ad5-a064-2b56b673bdfc</guid><dc:creator>adam_atmo</dc:creator><description>&lt;p&gt;Hi Sigurd,&lt;/p&gt;
&lt;p&gt;Thank you for sharing the link - I have actually used that link to create numerous custom services and to implement SIG services.&lt;/p&gt;
&lt;p&gt;I have now created a file for the Device Information Service and have succesfully implemented the characteristics including the System ID (this is a characteristic according to &lt;a href="https://www.bluetooth.com/specifications/specs/device-information-service-1-1/"&gt;this SIG specification&lt;/a&gt;). However, the System ID characteristic is behaving weirdly. It does not print out the data on my smartphone that I entered into the firmware code - I imagine this is because the data format for the SIG characteristic is different to what I expect... I have added the relevant code below. On line 6, I define the system ID. However, this is what I see on my smartphone (client):&amp;nbsp;&lt;strong&gt;Value: (0x) 35-35-2D-34-34-2D-33-33-2D-32-32-2D-31-31-2D-38-38-2D-37-37-00.&amp;nbsp;&lt;/strong&gt;Any idea why this is happening?&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Adam&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/* System ID characteristic read callback function */
static ssize_t read_system_ID(struct bt_conn *conn,
				   const struct bt_gatt_attr *attr, void *buf,
				   uint16_t len, uint16_t offset)
{
	char system_ID[] = &amp;quot;55-44-33-22-11-88-77&amp;quot;;

	if (offset) {
		return BT_GATT_ERR(BT_ATT_ERR_INVALID_OFFSET);
	}

	LOG_INF(&amp;quot;System ID read: %s\n&amp;quot;, system_ID);

	return bt_gatt_attr_read(conn, attr, buf, len, offset,
				 &amp;amp;system_ID,
				 sizeof(system_ID));
}


/*Service Declaration and Registration */
BT_GATT_SERVICE_DEFINE(dis_service,
BT_GATT_PRIMARY_SERVICE(BT_UUID_DIS),

    BT_GATT_CHARACTERISTIC(BT_UUID_DIS_MANUFACTURER_NAME,
			        BT_GATT_CHRC_READ,
                    BT_GATT_PERM_READ,
                    read_manufacturer_name, NULL, NULL),

    BT_GATT_CHARACTERISTIC(BT_UUID_DIS_MODEL_NUMBER,
			        BT_GATT_CHRC_READ,
                    BT_GATT_PERM_READ,
                    read_model_number, NULL, NULL),

    BT_GATT_CHARACTERISTIC(BT_UUID_DIS_SERIAL_NUMBER,
			        BT_GATT_CHRC_READ,
                    BT_GATT_PERM_READ,
                    read_serial_number, NULL, NULL),

    BT_GATT_CHARACTERISTIC(BT_UUID_DIS_SYSTEM_ID,
			        BT_GATT_CHRC_READ,
                    BT_GATT_PERM_READ,
                    read_system_ID, NULL, NULL),
);&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to add System ID characteristic (0x2A23) using Kconfig</title><link>https://devzone.nordicsemi.com/thread/396833?ContentTypeID=1</link><pubDate>Tue, 22 Nov 2022 09:26:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9bfdb283-3681-4d40-a516-3e6d59db1397</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;DIS is a Bluetooth SIG defined service, with defined characteristics that belong to that service. If you want to add a custom characteristic, I recommend adding that to a custom service. See e.g. this guide on how to do that:&amp;nbsp;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/guides/nrf-connect-sdk-guides/b/getting-started/posts/ncs-ble-tutorial-part-1-custom-service-in-peripheral-role"&gt;nRF Connect SDK Bluetooth Low Energy tutorial part 1: Custom Service in Peripheral role&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to add System ID characteristic (0x2A23) using Kconfig</title><link>https://devzone.nordicsemi.com/thread/396818?ContentTypeID=1</link><pubDate>Tue, 22 Nov 2022 08:50:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f4e0f25f-6ddd-41f1-8aa7-290a3ea1b8c7</guid><dc:creator>adam_atmo</dc:creator><description>&lt;p&gt;Thank you,&lt;/p&gt;
&lt;p&gt;How can I go about adding a custom characteristic to the DIS service even though I am implementing the other characteristics using Kconfig commands in the prj.conf file?&lt;/p&gt;
&lt;p&gt;Adam&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to add System ID characteristic (0x2A23) using Kconfig</title><link>https://devzone.nordicsemi.com/thread/396652?ContentTypeID=1</link><pubDate>Mon, 21 Nov 2022 12:44:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:713f7560-f1ce-4441-8357-66596f2db560</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Looks like the DIS service does not implement this&amp;nbsp;characteristic. The service is located in the upstream Zephyr repo. If you would like this &lt;span&gt;characteristic&amp;nbsp;&lt;/span&gt;implemented, I suggest adding a request for it here:&amp;nbsp;&lt;a href="https://github.com/zephyrproject-rtos/zephyr/issues/new?assignees=&amp;amp;labels=Feature+Request&amp;amp;template=feature_request.md&amp;amp;title="&gt;https://github.com/zephyrproject-rtos/zephyr/issues/new?assignees=&amp;amp;labels=Feature+Request&amp;amp;template=feature_request.md&amp;amp;title=&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>