<?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>Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/89963/grove-lcd---grove-lcd-device-not-ready</link><description>Hi, 
 I am running the standard Grove LCD code, as below but am getting an error, &amp;quot; Grove LCD: Device not ready.&amp;#39; 
 the code is 
 
 
 my overlay file is 
 
 
 and my proj file 
 
 I think I&amp;#39;m missing something obvious but can&amp;#39;t see it :-( 
 Rod</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 19 Jul 2022 12:42:37 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/89963/grove-lcd---grove-lcd-device-not-ready" /><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377629?ContentTypeID=1</link><pubDate>Tue, 19 Jul 2022 12:42:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7403aac6-06fe-407c-8779-188f38c6cddf</guid><dc:creator>RodWatt</dc:creator><description>&lt;p&gt;Sorry, just found my mistake. I was comparing your code to mine I realised I made an error in the overlay file.&lt;/p&gt;
&lt;p&gt;I had defined the group as&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;i2c1_default_alt: i2c1_default_alt&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;but then when I called it, i used&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;pinctrl-0 = &amp;lt;&amp;amp;i2c1_default&amp;gt;;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;and missed off the _alt. Dooh!, my mistake, sorry.&lt;/p&gt;
&lt;p&gt;The code is now running, &amp;nbsp;It is not running as previously, the characters are jumping around and it is not running as it did in older versions, although the source code does look the same. So, Im guessing there is something else hidden in there.&lt;/p&gt;
&lt;p&gt;I will close this now, thanks for your help and sorry again for the mistake&lt;/p&gt;
&lt;p&gt;Rod&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377554?ContentTypeID=1</link><pubDate>Tue, 19 Jul 2022 09:01:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a3657887-0aae-4724-96d1-adbfc21610f6</guid><dc:creator>RodWatt</dc:creator><description>&lt;p&gt;Yes, it does but before I do that, I want to cross check the I2C scanner code you sent me in case I spot something in there, that may point to the problem. Its a long shot, but worth a try.&lt;/p&gt;
&lt;p&gt;If no joy, I will open a ticket on GitHub, put &amp;nbsp;link here and close this one.&lt;/p&gt;
&lt;p&gt;Rod&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377551?ContentTypeID=1</link><pubDate>Tue, 19 Jul 2022 08:59:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9165a114-d772-459b-bc84-884915a6c9e4</guid><dc:creator>RodWatt</dc:creator><description>&lt;p&gt;Thanks, yes this worked, I only had to add the following to my config to get serial output.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_CONSOLE=y&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;But this shows all my I2C devices, thanks. I also have a BME280 and SSD1306 on the bus and I can communicate with them fine.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Rod&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377538?ContentTypeID=1</link><pubDate>Tue, 19 Jul 2022 08:16:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8ecd4a27-aa58-4ec1-8884-9211ee6a5c16</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Since the Grove driver is a sample in the zephyr project, I suggest that you create an &lt;a href="https://github.com/zephyrproject-rtos/zephyr/issues/"&gt;issue on their github&lt;/a&gt;. &lt;br /&gt;This way, the problem is documented and someone can work on it.&lt;/p&gt;
&lt;p&gt;If you do this, I can create an internal ticket in our system linking to your issue, which will increase the chances that someone works with your issue.&lt;/p&gt;
&lt;p&gt;How does that sound to you?&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377528?ContentTypeID=1</link><pubDate>Tue, 19 Jul 2022 07:46:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0b66d6e9-aa54-43a4-a2dd-40497d12e0b3</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi Rod,&lt;/p&gt;
&lt;p&gt;I took an &lt;a href="https://github.com/crfosse/ncs_projects/tree/main/peripheral_zephyr/i2c"&gt;unofficial I2C scanner sample&lt;/a&gt; by crfosse I know worked for earlier versions of the nRF Connect SDK, and changed its overlay file to work with nrf52840dk with pinctrl, so it should work with v2.0.0.&lt;/p&gt;
&lt;p&gt;I do not have an I2C sensor handy at the moment, so I have not tested it yet. &lt;br /&gt;Can you try it first, and I will have another look at the sample if it does not work for you.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/1258.i2c_5F00_scanner.zip"&gt;devzone.nordicsemi.com/.../1258.i2c_5F00_scanner.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377450?ContentTypeID=1</link><pubDate>Mon, 18 Jul 2022 14:28:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:09f61ff2-f09a-4aa9-b022-2c54d610142c</guid><dc:creator>RodWatt</dc:creator><description>&lt;p&gt;Thanks&lt;span&gt;&amp;nbsp;Sigurd,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I will look&amp;nbsp;forward to their up&lt;/span&gt;date. As an aside, do you have a !2C scanner example that works out of the box? I found links to some examples, but &amp;nbsp;nothing that seems to work with the new SDK.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Rod&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377439?ContentTypeID=1</link><pubDate>Mon, 18 Jul 2022 13:37:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:43408fc0-9615-4ea0-a227-ab05cc148c6f</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi Rod,&lt;/p&gt;
&lt;p&gt;Since it seems to be an issue with the SDK, I have asked our developers if they have any advise. I will let you know when I hear from them.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377273?ContentTypeID=1</link><pubDate>Sat, 16 Jul 2022 12:25:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b5b2a205-ef87-40d2-aeaa-e863f5b39573</guid><dc:creator>RodWatt</dc:creator><description>&lt;p&gt;&lt;span&gt;Hi Sigurd,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I went back to v1.3.0 of the SDK and can confirm that the LCD works as expected. I wanted to double check my pinout, my&amp;nbsp;pull-ups and&amp;nbsp;basic&amp;nbsp;connectivity were all good which this test has done. So, this confirms the hardware is all good and the something had&amp;nbsp;changed in moving to v2.0.0 in the SDK.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;So, Im guessing this point to a configuration error&amp;nbsp;either&amp;nbsp;in my overlay file or my&amp;nbsp;pro file.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I changed my overlay file to use I2C1 and I explicitly disabled some other peripherals.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;/ {
        chosen {
		zephyr,display = &amp;amp;glcd;
        };
};

&amp;amp;pinctrl {
	uart0_default_alt: uart0_default_alt {
		group0 {
			psels = &amp;lt;NRF_PSEL(UART_TX, 0, 24)&amp;gt;, &amp;lt;NRF_PSEL(UART_RX, 0, 22)&amp;gt;;
		};
	};

	uart0_sleep_alt: uart0_sleep_alt {
		group1 {
			psels = &amp;lt;NRF_PSEL(UART_TX, 0, 24)&amp;gt;, &amp;lt;NRF_PSEL(UART_RX, 0, 22)&amp;gt;;
			low-power-enable;
		};
	};

	i2c1_default_alt: i2c1_default_alt {
       		group2 {
          		psels = &amp;lt;NRF_PSEL(TWIM_SDA, 0, 17)&amp;gt;,
                  		&amp;lt;NRF_PSEL(TWIM_SCL, 0, 20)&amp;gt;;
       			};
    		};
};

&amp;amp;uart0 {
	pinctrl-0 = &amp;lt;&amp;amp;uart0_default_alt&amp;gt;;
	pinctrl-1 = &amp;lt;&amp;amp;uart0_sleep_alt&amp;gt;;	
	pinctrl-names = &amp;quot;default&amp;quot;, &amp;quot;sleep&amp;quot;;

	compatible = &amp;quot;nordic,nrf-uart&amp;quot;;
	current-speed = &amp;lt;115200&amp;gt;;
	status = &amp;quot;okay&amp;quot;;
};

&amp;amp;i2c1 {
	status = &amp;quot;okay&amp;quot;;
	compatible = &amp;quot;nordic,nrf-twim&amp;quot;;	
	pinctrl-0 = &amp;lt;&amp;amp;i2c1_default&amp;gt;;
	pinctrl-1 = &amp;lt;&amp;amp;i2c1_sleep&amp;gt;;
	pinctrl-names = &amp;quot;default&amp;quot;, &amp;quot;sleep&amp;quot;;
//    	clock-frequency = &amp;lt;I2C_BITRATE_STANDARD&amp;gt;;  
	clock-frequency = &amp;lt;I2C_BITRATE_FAST&amp;gt;;  
	zephyr,concat-buf-size = &amp;lt;520&amp;gt;;

	bme680@77 {
		compatible = &amp;quot;bosch,bme680&amp;quot;;
		reg = &amp;lt;0x77&amp;gt;;
		label = &amp;quot;BME680&amp;quot;;
	};

	glcd: glcd@3e {
		compatible = &amp;quot;seeed,grove-lcd-rgb&amp;quot;;
		label = &amp;quot;GLCD&amp;quot;;
		reg = &amp;lt;0x3e&amp;gt;;
	};
};

&amp;amp;i2c1 {
/delete-property/sda-gpios;
/delete-property/scl-gpios;
};

&amp;amp;uart1 {
    status = &amp;quot;disabled&amp;quot;;
};

&amp;amp;spi0 {
    status = &amp;quot;disabled&amp;quot;;
};

&amp;amp;spi1 {
    status = &amp;quot;disabled&amp;quot;;
};

&amp;amp;spi2 {
    status = &amp;quot;disabled&amp;quot;;
};

&amp;amp;spi3 {
    status = &amp;quot;disabled&amp;quot;;
};
&lt;/pre&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This got rid of the&amp;nbsp;0x0BAE0001 error I was seeing above but I am still seeing errors.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;[00:00:00.295,135] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: initialize called
[00:00:00.295,166] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: Check if Device is Ready
[00:00:00.295,196] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: Device is Ready
[00:00:00.295,196] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: delay 50 ms while the VDD powers on
[00:00:00.845,397] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error on I2C line occurred for message 0
[00:00:00.845,489] &amp;lt;dbg&amp;gt; grove_lcd: glcd_function_set: set function options, delay 5 ms
[00:00:01.350,646] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error on I2C line occurred for message 0
[00:00:01.350,677] &amp;lt;dbg&amp;gt; grove_lcd: glcd_display_state_set: set display_state options, delay 5 ms&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Rod&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377162?ContentTypeID=1</link><pubDate>Fri, 15 Jul 2022 10:51:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a940c946-653b-418c-b22c-4a9d2af2db03</guid><dc:creator>RodWatt</dc:creator><description>&lt;p&gt;I am pretty sure I have had this working previously on this board with an older version of the SDK which makes me this its &amp;nbsp;a software config error. I will check&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Rod&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377137?ContentTypeID=1</link><pubDate>Fri, 15 Jul 2022 09:19:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f2f9665c-a576-4017-a9ea-1cb0c6bbe42f</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;The grove init function uses CONFIG_KERNEL_INIT_PRIORITY_DEVICE, so as long as I2C has higher priority than this, I guess it should be fine.&lt;/p&gt;
&lt;p&gt;To debug your I2C errors, I suggest that you use an oscilloscope or logic analyzer to have a look at the I2C lines and see if the communication makes sense.&lt;/p&gt;
&lt;p&gt;Also see &lt;a href="https://github.com/nrfconnect/sdk-hal_nordic/blob/main/nrfx/drivers/nrfx_errors.h"&gt;nrfx_errors.h&lt;/a&gt; for error codes.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377113?ContentTypeID=1</link><pubDate>Fri, 15 Jul 2022 08:39:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:853b1778-c4de-4668-bd51-635fc3090465</guid><dc:creator>RodWatt</dc:creator><description>&lt;p&gt;Hi Sigurd,&lt;/p&gt;
&lt;p&gt;I added the following line to my config file&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_I2C_INIT_PRIORITY = 30&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I tried 60 but this didn&amp;#39;t make any difference . Any suggestions for which value I should use?&lt;/p&gt;
&lt;p&gt;This moves it a bit further..&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;[00:00:00.309,020] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: initialize called
[00:00:00.309,051] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: Check if Device is Ready
[00:00:00.309,051] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: Device is Ready
[00:00:00.309,082] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: delay 50 ms while the VDD powers on
[00:00:00.359,375] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.359,436] &amp;lt;dbg&amp;gt; grove_lcd: glcd_function_set: set function options, delay 5 ms
[00:00:00.364,715] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.364,746] &amp;lt;dbg&amp;gt; grove_lcd: glcd_display_state_set: set display_state options, delay 5 ms
[00:00:00.370,025] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.370,056] &amp;lt;dbg&amp;gt; grove_lcd: glcd_clear: clear, delay 20 ms
[00:00:00.390,380] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.390,411] &amp;lt;dbg&amp;gt; grove_lcd: glcd_input_state_set: set the input_set, no delay
[00:00:00.390,441] &amp;lt;inf&amp;gt; grove_lcd: configuring the RGB background
[00:00:00.390,655] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.390,869] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.391,082] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.391,113] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: background set to white
[00:00:00.391,296] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.391,510] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.391,723] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.391,937] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.391,967] &amp;lt;dbg&amp;gt; grove_lcd: glcd_function_set: set function options, delay 5 ms
[00:00:00.397,308] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.397,338] &amp;lt;dbg&amp;gt; grove_lcd: glcd_display_state_set: set display_state options, delay 5 ms
[00:00:00.402,648] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
[00:00:00.402,893] &amp;lt;err&amp;gt; i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 0
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Rod&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377106?ContentTypeID=1</link><pubDate>Fri, 15 Jul 2022 08:18:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7975912d-7a88-4dad-be08-83f7272f16b6</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;Disregard my previous comment. &lt;br /&gt;It seems that you can fix the order of I2C initialization by changing CONFIG_I2C_INIT_PRIORITY.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377099?ContentTypeID=1</link><pubDate>Fri, 15 Jul 2022 08:05:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2d554adc-a625-4bda-92ce-2f5a193490b6</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi Rod,&lt;/p&gt;
&lt;p&gt;Try to move&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;add_subdirectory(misc)&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;to below&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;add_subdirectory_ifdef(CONFIG_I2C i2c)&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;in &lt;a href="https://github.com/nrfconnect/sdk-zephyr/blob/v2.7.99-ncs1/drivers/CMakeLists.txt"&gt;zephyr/drivers/CMakeLists.txt&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Does this fix your issue?&lt;/p&gt;
&lt;p&gt;In which case, the problem might look like a bug.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377050?ContentTypeID=1</link><pubDate>Thu, 14 Jul 2022 21:16:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:efe56a28-bf03-4ea6-8b6f-c174b36342d0</guid><dc:creator>RodWatt</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;span&gt;Sigurd,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I have&amp;nbsp;enabled debug and added a couple of debug&amp;nbsp;statements shown below.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;static int glcd_initialize(const struct device *dev)
{
	const struct glcd_config *config = dev-&amp;gt;config;
	uint8_t cmd;

	LOG_DBG(&amp;quot;initialize called&amp;quot;);

	LOG_DBG(&amp;quot;Check if Device is Ready&amp;quot;);

	if (!device_is_ready(config-&amp;gt;bus.bus)) {
	LOG_DBG(&amp;quot;Check if Device is Ready Failed&amp;quot;);
		return -ENODEV;
	}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;This is what I see&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;uart:~$ Grove LCD: Device not ready.

[00:00:00.311,798] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: initialize called
[00:00:00.311,798] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: Check if Device is Ready
[00:00:00.311,828] &amp;lt;dbg&amp;gt; grove_lcd: glcd_initialize: Check if Device is Ready Failed
uart:~$ 
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Rod&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Grove LCD - Grove LCD: Device not ready.</title><link>https://devzone.nordicsemi.com/thread/377011?ContentTypeID=1</link><pubDate>Thu, 14 Jul 2022 14:09:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0d567498-ff69-4d91-b438-8369d089fedf</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi Rod&lt;/p&gt;
&lt;p&gt;To debug, add the following to your prj.conf:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_LOG=y
CONFIG_GROVE_LCD_RGB_LOG_LEVEL_DBG=y

&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Then you can add some custom debugging log to &lt;a href="https://github.com/nrfconnect/sdk-zephyr/blob/0a904d0c176acf67ab10285e42f4d1924bc5bb79/drivers/misc/grove_lcd_rgb/grove_lcd_rgb.c#L217"&gt;glcd_initialize&lt;/a&gt;(), which will be called automatically on startup.&lt;/p&gt;
&lt;p&gt;I guess this function does not finish somehow, and therefore your code reports that it is not ready yet.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>