<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:webfeeds="http://webfeeds.org/rss/1.0">
    <channel>
        <title><![CDATA[Bosch Sensortec Community]]></title>
        <description><![CDATA[Bosch Sensortec Community]]></description>
        <link>https://community.bosch-sensortec.com</link>
        <generator>Bettermode RSS Generator</generator>
        <lastBuildDate>Sun, 25 Oct 2026 08:31:23 GMT</lastBuildDate>
        <atom:link href="https://community.bosch-sensortec.com/rss/feed" rel="self" type="application/rss+xml"/>
        <pubDate>Sun, 25 Oct 2026 08:31:23 GMT</pubDate>
        <copyright><![CDATA[2026 Bosch Sensortec Community]]></copyright>
        <language><![CDATA[en-US]]></language>
        <ttl>60</ttl>
        <webfeeds:icon></webfeeds:icon>
        <webfeeds:related layout="card" target="browser"/>
        <item>
            <title><![CDATA[BME690 humidity compensation: datasheet vs. SensorAPI formula]]></title>
            <description><![CDATA[Hello Bosch Sensortec team,

We noticed a difference between the humidity compensation formula in the BME690 datasheet (revision 1.4, page 26) and the floating-point calc_humidity() implementation in ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bme690-humidity-compensation-datasheet-vs-sensorapi-formula-rls26SixyKJM7WB</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bme690-humidity-compensation-datasheet-vs-sensorapi-formula-rls26SixyKJM7WB</guid>
            <dc:creator><![CDATA[mr-dannyk]]></dc:creator>
            <pubDate>Fri, 23 Oct 2026 17:43:25 GMT</pubDate>
            <content:encoded><![CDATA[<p>Hello Bosch Sensortec team,</p><p>We noticed a difference between the humidity compensation formula in the BME690 datasheet (revision 1.4, page 26) and the floating-point <code>calc_humidity()</code> implementation in SensorAPI v1.1.0.</p><p>Expanding the datasheet formula appears to produce an additional <code>tk2sh * temp_comp</code> term that is absent from the driver.</p><p>We documented the equations and source reference in <a href="https://github.com/boschsensortec/BME690_SensorAPI/issues/8" rel="noopener noreferrer nofollow" class="text-interactive hover:text-interactive-hovered">GitHub issue #8</a>. Could you confirm which formula we should use?</p><p>Thank you.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BMI270 gyroscope zero-rate offset steps versus temperature]]></title>
            <description><![CDATA[Hello,

We are using a BMI270 for attitude and heading-hold work where the gyro is integrated for tens of minutes, and we see a deterministic staircase in the gyro zero-rate offset as the die ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bmi270-gyroscope-zero-rate-offset-steps-versus-temperature-w5OJh1pNpXuOVGz</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bmi270-gyroscope-zero-rate-offset-steps-versus-temperature-w5OJh1pNpXuOVGz</guid>
            <category><![CDATA[BMI270]]></category>
            <dc:creator><![CDATA[rtlongdon]]></dc:creator>
            <pubDate>Fri, 23 Oct 2026 04:55:16 GMT</pubDate>
            <content:encoded><![CDATA[<p>Hello,</p><p>We are using a BMI270 for attitude and heading-hold work where the gyro is integrated for tens of minutes, and we see a deterministic staircase in the gyro zero-rate offset as the die temperature changes. We would like to understand what the part is doing, and whether it is documented or controllable.</p><p><strong>Setup.</strong> BMI270 on a SparkFun breakout for eval, SPI, Bosch BMI270 Sensor API (config blob loaded normally). Gyro 800 Hz ODR, +-500 dps, normal filter mode, performance mode on, noise performance optimised, advanced power save off. Board still on a bench, X axis vertical (the offset behaviour does not depend on orientation within about 0.01 dps/g on Z only). In-use offset compensation (IOC) is <strong>off</strong>: GYR_OFF_X/Y/Z read 0 and OFFSET_6.gyr_off_en = 0 (OFFSET_6 = 0x80, gain compensation bit set) throughout. Die temperature from the TEMPERATURE register, resolution 1/512 K. Heating was a lamp (0.2 to 0.5 K/min) and natural cooling.</p><p><strong>Observation.</strong> Stationary gyro zero (1 s to 30 s means) is flat or slides smoothly with temperature, then jumps by a nearly constant amount at fixed die temperatures. Steps repeat on cooling at the same temperature (within 0.01 to 0.09 K), repeated on a second warm-up, and are reversible to about 0.003 dps:</p><p>| axis | step temperature (die, C) | direction on warming | size (dps) |</p><p>|---|---|---|---|</p><p>| X | 25.775, 28.46, 34.25, 38.15 | up | +0.05 to +0.065 |</p><p>| Y | 25.45, 31.43, 37.4 | down | -0.055 to -0.06 |</p><p>| Z | none from 24.8 to 39.5 C | | |</p><p>Between steps the zero slides smoothly (X about -0.01 to -0.02 dps/K, Y about +0.01 to +0.02 dps/K). The step size (about 0.059 dps) is within 5 % of one LSB of the GYR_OFF registers (0.061 dps). Each step takes about 100 s when the die moves at 0.04 K/min, 10 to 15 s at 0.3 K/min and about 10 s at 3 K/min. Raw gyro noise (0.10 to 0.11 dps per sample at 800 Hz), the accelerometer and the other axes do not change at a step. A 40 minute heading hold is therefore wrong by several degrees whenever the die crosses one of these temperatures.</p><p><strong>Questions.</strong></p><p>1. Is this the documented behavior of the internal gyro offset temperature compensation? Is the correction quantized to the offset DAC LSB (0.061 dps), and how is the temperature input to it filtered or updated (which would explain the rate-dependent transition width)?</p><p>2. Are the temperature thresholds and step table per device (OTP-trimmed) or common to all BMI270s? Can they be read out?</p><p>3. Can the compensation be disabled, bypassed or supplemented (e.g., through a register, the config file, or the NVM), so that we can apply our own compensation? Why do the GYR_OFF registers stay at 0 while this happens?</p><p>4. How should this behavior be counted in the datasheet specification (zero-rate offset +-0.5 dps, TCO)? Does the datasheet TCO include these steps?</p><p>5. Is there a BMI270 configuration or a different part (BMI323, BMI085/BMI088, BMI160) that avoids these steps for long gyro integration? Is there an application note on temperature calibration for heading-hold use?<br><br>Thank you. </p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BMV080 failing bmv080_serve_interrupt when obstructed]]></title>
            <description><![CDATA[Hello,

We're using BMV080 with this measurement loop, called once per minute:

start continuous measurements

wait 4 seconds

serve interrupt

stop measurement



Measurement algorithm is set to fast response.

We'...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bmv080-failing-bmv080-serve-interrupt-when-obstructed-o5bbjwfx0kGWytY</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bmv080-failing-bmv080-serve-interrupt-when-obstructed-o5bbjwfx0kGWytY</guid>
            <category><![CDATA[BMV080]]></category>
            <dc:creator><![CDATA[Victor]]></dc:creator>
            <pubDate>Tue, 20 Oct 2026 15:46:34 GMT</pubDate>
            <content:encoded><![CDATA[<p>Hello,</p><p>We're using BMV080 with this measurement loop, called once per minute: </p><p>start continuous measurements</p><p>wait 4 seconds</p><p>serve interrupt</p><p>stop measurement</p><p></p><p>Measurement algorithm is set to fast response.</p><p>We're using I²C communication with a TI CC26x2 host MCU.</p><p>It works correctly and we get measurements as wanted.</p><p></p><p>When a sheet of paper is put in front of the sensor (~10 cm), we can see the "obstruction" status bit as expected.</p><p>When approaching the sheet of paper to around 2 cm in front of the sensor, the bmv080_serve_interrupt function fails (returns E_BMV080_ERROR_HW_READ).</p><p>What could cause this behavior ?</p><p></p><p>Thank you</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BME690 + application board 3.1 - how to make it work]]></title>
            <description><![CDATA[Hi,

I am looking for a clear, step-by-step guide on how to properly set up and use the Application Board 3.1 together with the Shuttle Board 8x 690, as I have been searching everywhere and cannot find ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bme690-application-board-3-1---how-to-make-it-work-9bD4jMkswEf89Lm</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bme690-application-board-3-1---how-to-make-it-work-9bD4jMkswEf89Lm</guid>
            <category><![CDATA[APPLICATION BOARD 3.1]]></category>
            <category><![CDATA[BME690]]></category>
            <category><![CDATA[BME690, configuration files, AI Studio input data format]]></category>
            <category><![CDATA[BME690 SHUTTLE BOARD]]></category>
            <category><![CDATA[BME690 X8]]></category>
            <dc:creator><![CDATA[Ania]]></dc:creator>
            <pubDate>Sun, 18 Oct 2026 21:48:05 GMT</pubDate>
            <content:encoded><![CDATA[<p>Hi,</p><p>I am looking for a clear, step-by-step guide on how to properly set up and use the Application Board 3.1 together with the Shuttle Board 8x 690, as I have been searching everywhere and cannot find an easy-to-understand tutorial for this setup.</p><p>I am trying to make it work, but i have run itno some problems. I run into an issue where the LED on the board is flashing red with a hint of green and I am not sure what that indicates.</p><p>While flashing the boards using the instructions and firmware from the bme690_development_kit_software_v3-1-3 package makes everything work (for a little bit), trying to convert data files following Bosch website instructions causes a problem where the files convert partialy. When i click run_me in the release_bin/tools/converter/data it does something, but i don't think it work.  Files .labelinfo and .udf convert only into file .bmelabelinfo, which BME AI-Studio doesn't even recoginize and i am unable to import data into BME AI-Studio. </p><p>Could someone please point me toward a reliable guide or explain what I might be doing wrong during this conversion process?</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BMV080 measurement every minute]]></title>
            <description><![CDATA[Hello,

We want to take a BMV080 measurement every minute.

What would be the better way to do it ?

Start continuous measurement, wait for only 1 (using interrupt line or waiting a certain timing ?) and ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bmv080-measurement-every-minute-iI6wVMNWeBuItWD</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bmv080-measurement-every-minute-iI6wVMNWeBuItWD</guid>
            <category><![CDATA[BMV080]]></category>
            <dc:creator><![CDATA[Victor]]></dc:creator>
            <pubDate>Fri, 16 Oct 2026 16:02:04 GMT</pubDate>
            <content:encoded><![CDATA[<p>Hello,</p><p>We want to take a BMV080 measurement every minute.</p><p>What would be the better way to do it ? </p><p>Start continuous measurement, wait for only 1 (using interrupt line or waiting a certain timing ?) and stop measurement ?</p><p>Or other solution ?</p><p>We would like to optimize the system for reliability and energy consumption.</p><p>Thank you</p><p></p><p>Best regards.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BSEC binary compatibility with ESP32-C5]]></title>
            <description><![CDATA[Hello,

I am developing an embedded application using the BME690 sensor with an ESP32-C5 and ESP-IDF v6.0.2.

I would like to use BSEC for IAQ calculation and VOC/odor classification.

The BSEC v3.3.0.1 ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bsec-binary-compatibility-with-esp32-c5-VyPm421jYl3vY6R</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bsec-binary-compatibility-with-esp32-c5-VyPm421jYl3vY6R</guid>
            <category><![CDATA[BME690]]></category>
            <category><![CDATA[ESP32C5]]></category>
            <dc:creator><![CDATA[Jenny]]></dc:creator>
            <pubDate>Fri, 16 Oct 2026 07:40:47 GMT</pubDate>
            <content:encoded><![CDATA[<p>Hello,</p><p>I am developing an embedded application using the BME690 sensor with an ESP32-C5 and ESP-IDF v6.0.2.</p><p>I would like to use BSEC for IAQ calculation and VOC/odor classification.</p><p>The BSEC v3.3.0.1 Supported Platforms document lists ESP32-C2/C3 for riscv32-esp-elf-gcc, but does not explicitly list ESP32-C5.</p><p>Could you please confirm:</p><p>Is there a BSEC binary compatible with ESP32-C5 and ESP-IDF v6.0.2?</p><p>If not, is an ESP32-C5-compatible binary or source-code build available?</p><p>Which BSEC version and BME AI-Studio version should be used for BME690 IAQ and gas classification?</p><p>Thank you.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BME690 Parallel Mode displays no new data during second step.]]></title>
            <description><![CDATA[static int32_t run_step(uint8_t mode, bme690_sample_t *out)
{
	char str[35];
	int err;
    memset(out, 0, 10 * sizeof(*out));
    out->sensor_id  = s_sensor_id;
//    out->step_index = step;
    s_heatr.enable = ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bme690-parallel-mode-displays-no-new-data-during-second-step-paLu7ea86pchU2Q</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bme690-parallel-mode-displays-no-new-data-during-second-step-paLu7ea86pchU2Q</guid>
            <category><![CDATA[BME690]]></category>
            <category><![CDATA[GAS SENSOR]]></category>
            <dc:creator><![CDATA[Bgin]]></dc:creator>
            <pubDate>Thu, 15 Oct 2026 11:43:59 GMT</pubDate>
            <content:encoded><![CDATA[<pre class="language-c"><code class="language-c">static int32_t run_step(uint8_t mode, bme690_sample_t *out)
{
	char str[35];
	int err;
    memset(out, 0, 10 * sizeof(*out));
    out-&gt;sensor_id  = s_sensor_id;
//    out-&gt;step_index = step;
    s_heatr.enable = BME69X_ENABLE;
    s_heatr.profile_len = s_profile.num_steps;
    s_heatr.heatr_temp = s_profile.temperature[0];
    s_heatr.heatr_dur  = s_profile.duration_ms[0];
    s_heatr.heatr_temp_prof = s_profile.temperature;
    s_heatr.heatr_dur_prof = s_profile.duration_ms;
    struct bme69x_conf conf;


    if ((err = bme69x_get_conf(&amp;conf, &amp;s_dev)) != BME69X_OK){
    	snprintf(str, sizeof(str) - 1, "BME conf Err: %d", err);
    	ui_terminal_write(str, ST7789_COLOR_RED);
    	return -1;
    }
    s_heatr.shared_heatr_dur = (uint16_t)(140 - (bme69x_get_meas_dur(mode, &amp;conf, &amp;s_dev) / 1000));

    if ((err = bme69x_set_heatr_conf(mode, &amp;s_heatr, &amp;s_dev)) != BME69X_OK) {
    	snprintf(str, sizeof(str) - 1, "Htr conf Err: %d", err);
    	ui_terminal_write(str, ST7789_COLOR_RED);
        out-&gt;err = 1; return -1;
    }

    uint8_t regs[11];
    int len = 0;

    for (uint8_t i = 0; i &lt; 10; i++) {
        regs[i] = 0;
        if(bme69x_get_regs(0x64 + i, &amp;regs[i], 1, &amp;s_dev) != BME69X_OK){
        	snprintf(str, sizeof(str), "%02X error", regs[i]);
        	ui_terminal_write(str, ST7789_COLOR_RED);
        }
    }

    regs[10] = 0;
    bme69x_get_regs(0x71, &amp;regs[10], 1, &amp;s_dev);

    for (uint8_t i = 0; i &lt; 10; i++) {
        snprintf(str, sizeof(str),
                        "%02X: %02u", 0x64 + i, (unsigned int) regs[i]);

        ui_terminal_write(str, ST7789_COLOR_LIGHTGREEN);
    }

    snprintf(str, sizeof(str) - len,
             "71: %02X", regs[10]);
    ui_terminal_write(str, ST7789_COLOR_LIGHTGREEN);

    struct bme69x_data d[10];
    uint8_t n_fields = 0;

    if(mode == BME69X_FORCED_MODE){
	    if ((err = bme69x_set_op_mode(mode, &amp;s_dev)) != BME69X_OK) {
	    	snprintf(str, sizeof(str) - 1, "Op Mode Err: %d", err);
	    	ui_terminal_write(str, ST7789_COLOR_RED);
	        out-&gt;err = 2; return -2;
	    }

    	err = bme69x_get_data(mode, d, &amp;n_fields, &amp;s_dev);
    	if (err != BME69X_OK) {
    		snprintf(str, sizeof(str) - 1, "Get Data Error: %d", err);
    		ui_terminal_write(str, ST7789_COLOR_RED);
    		out-&gt;err = 3;
    		return -3;
    	}
    	if (n_fields == 0)     {
    		ui_terminal_write("Error: n fields is zero", ST7789_COLOR_RED);
    		out-&gt;err = 4;
    		return -4;
    	}

    	out-&gt;tick_ms        = app_get_millis();
    	out-&gt;temperature    = d[0].temperature;
    	out-&gt;pressure       = d[0].pressure;
    	out-&gt;humidity       = d[0].humidity;
    	out-&gt;gas_resistance = d[0].gas_resistance;

        /* heat_stab_r: check the dedicated status register if you want this bit.
         * bme69x_data.status is the driver's own validity flag, not a raw
         * register value — do not mask it with register-bit constants. */
        out-&gt;heat_stab = 0;

        out-&gt;err = 0;

    }
    else if(mode == BME69X_PARALLEL_MODE){
	    if ((err = bme69x_set_op_mode(mode, &amp;s_dev)) != BME69X_OK) {
	    	snprintf(str, sizeof(str) - 1, "Op Mode Err: %d", err);
	    	ui_terminal_write(str, ST7789_COLOR_RED);
	        out-&gt;err = 2; return -2;
	    }

	    uint32_t start_ms = app_get_millis();

	    uint8_t op_mode = 0;

	    err = bme69x_get_op_mode(&amp;op_mode, &amp;s_dev);

	    bool step_collected[10] = { false };
    	uint8_t collected = 0;
    	uint8_t succ_fields = 0;
    	while (collected &lt; s_profile.num_steps){
    		uint32_t dur_us = 3 * (bme69x_get_meas_dur(BME69X_PARALLEL_MODE, &amp;conf, &amp;s_dev) + ((uint32_t)s_heatr.shared_heatr_dur * 1000));
    		uint8_t count = 0;
    		do{
    			s_dev.delay_us(dur_us, NULL);

    			err = bme69x_get_data(mode, d, &amp;n_fields, &amp;s_dev);

    			count++;

    		} while (err == BME69X_W_NO_NEW_DATA &amp;&amp; count &lt; 3);

    	    snprintf(str, sizeof(str),
    	             "t:%lu err:%d n:%u c:%u",
    	             (unsigned long)(app_get_millis() - start_ms),
    	             err, n_fields, collected);

    	    ui_terminal_write(str,
    	        err == BME69X_OK ? ST7789_COLOR_LIGHTGREEN
    	                         : ST7789_COLOR_RED);

    		if (err != BME69X_OK) {
        		snprintf(str, sizeof(str) - 1, "Get Data Error: %d", err);
        		ui_terminal_write(str, ST7789_COLOR_RED);
        		snprintf(str, sizeof(str) - 1, "Successful reads: %d", succ_fields);
        		ui_terminal_write(str, ST7789_COLOR_YELLOW);

    		    out-&gt;err = 3;
    		    return -5;
    		}
    		succ_fields += n_fields;

        	for (uint8_t j = 0; j &lt; n_fields; j++) {
        		if((d[j].status &amp; BME69X_NEW_DATA_MSK) &amp;&amp; (d[j].status &amp; BME69X_GASM_VALID_MSK)){
        			uint8_t idx = d[j].gas_index;
        			if (idx &gt;= s_profile.num_steps) continue;

        			out[idx].tick_ms        = app_get_millis();
        			out[idx].rtc 			= app_get_unix_time();
        			out[idx].sensor_id      = s_sensor_id;
        			out[idx].temperature    = d[j].temperature;
        			out[idx].pressure       = d[j].pressure;
        			out[idx].humidity       = d[j].humidity;
        			out[idx].gas_resistance = d[j].gas_resistance;
        			if (!step_collected[idx])
        			{
        			    step_collected[idx] = true;
        			    collected++;
        			}
        		}
    		}

    		if (n_fields == 0) {
        		ui_terminal_write("Error: n fields is zero", ST7789_COLOR_RED);
    		    out-&gt;err = 4;
    		    return -6;
    		}
    	}
    }
    return 0;
}</code></pre><p>The above code is a function that is supposed to manage the data collection mode from a given heater profile. The run step waits for approximately the time for the 3 field registers to fill, and then retrieves the data, and filters for the ones with valid gas measurements. The issue is that the BME690 stops recording new data during the second step, as shown from the LCD terminal:<br></p><pre><code>64: 02
65: 41
66: 02
67: 14
68: 14
69: 14
6A: 02
6B: 14
6C: 14
6D: 14
71: 2A
t:430 err:0 n:3 c:0
t:860 err:0 n:3 c:1
t:1290 err:0 n:3 c:1
t:1719 err:0 n:3 c:1
t:3004 err:0 n:3 c:1
Get Data Error: 2
Successful reads: 12</code></pre><p>The heater profile used to test used is based on HP-301 from the AI studio as such:<br></p><pre class="language-python"><code class="language-python">    p1 = build_profile(1, now,
                       steps=[(100, 280/140), (100, (6020-280)/140), (200, (6300-6020)/140),
                                (200, (8260-6300)/140), (200, (10220-8260)/140),
                                (200, (12180-10220)/140), (320, (12460-12180)/140),
                                (320, (14420-12460)/140), (320, (16380-14420)/140),
                                (320, (18340-16380)/140)],
                       shared_heater=140, duty_scan=1, duty_sleep=4)
</code></pre><p>But that is likely irrelevant, as the register values reflect that the proper times are included.</p><p></p><p></p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BHI360 PCB Layout Example]]></title>
            <description><![CDATA[I want to replace the TDK ICM-20948 because of EOL. I am currently in layout and am having trouble making the right decision for getting out the signals of the center pads of the BHI360. I have two ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bhi360-pcb-layout-example-ZNFF9DcJSyKoYRZ</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/bhi360-pcb-layout-example-ZNFF9DcJSyKoYRZ</guid>
            <category><![CDATA[BHI360]]></category>
            <dc:creator><![CDATA[jrlitzenberger]]></dc:creator>
            <pubDate>Wed, 14 Oct 2026 22:27:25 GMT</pubDate>
            <content:encoded><![CDATA[<p>I want to replace the TDK ICM-20948 because of EOL.  I am currently in layout and am having trouble making the right decision for getting out the signals of the center pads of the BHI360.  I have two options.</p><ol><li><p>Via-in-Pad.  I would need to increase the internal pads to fit the capabilities of my PCB manufacturer to allow a via in pad 6 mil drill, 12 mil annular ring.</p></li><li><p>3mil trace/3mil spacing.</p><p></p><p>I purchased the BHI360 Shuttle Board for evaluation purposes but can't interface to it without spinning a carrier board due to the non standard pitch of the header pins.  I decided to just build a board with the actual parts on the board and evaluate it that way.</p><p>I am interested in the PCB layout files of the Shuttle Board to assist me in my design decisions and/or any guidance from Bosch.</p></li></ol><p>Thank you for your time.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Fast Mode Plus at 1 MHz support]]></title>
            <description><![CDATA[Could you confirm which I²C modes the BME680 supports—particularly whether it supports Fast-mode Plus at 1 MHz, or whether operation above 400 kHz requires the High-speed mode entry sequence? The ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/fast-mode-plus-at-1-mhz-support-3f2wCmQCYBMtaZ5</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/fast-mode-plus-at-1-mhz-support-3f2wCmQCYBMtaZ5</guid>
            <category><![CDATA[BME680]]></category>
            <dc:creator><![CDATA[JustinM]]></dc:creator>
            <pubDate>Wed, 14 Oct 2026 14:32:20 GMT</pubDate>
            <content:encoded><![CDATA[<p>Could you confirm which I²C modes the BME680 supports—particularly whether it supports <strong>Fast-mode Plus at 1 MHz</strong>, or whether operation above 400 kHz requires the <strong>High-speed mode entry sequence</strong>? The datasheet lists Standard, Fast, and High-speed modes but does not explicitly mention Fast-mode Plus. We’re seeing questionable ACK signal quality at 1 MHz and want to confirm the supported mode and required setup before troubleshooting further.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Inquiry on Long-Term Availability and EOL Status of Bosch Sensors]]></title>
            <description><![CDATA[Hello Bosch Community,

We are evaluating the following sensors for our drone flight controller:

 1. BMI088

 2. BMI270

 3. BMP390

Could you please confirm their current lifecycle status, expected market availability, ...]]></description>
            <link>https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/inquiry-on-long-term-availability-and-eol-status-of-bosch-sensors-sdKjXrkVCDosNQ5</link>
            <guid isPermaLink="true">https://community.bosch-sensortec.com/mems-sensors-forum-jrmujtaw/post/inquiry-on-long-term-availability-and-eol-status-of-bosch-sensors-sdKjXrkVCDosNQ5</guid>
            <category><![CDATA[BMI088]]></category>
            <category><![CDATA[BMI270]]></category>
            <category><![CDATA[BMP390]]></category>
            <dc:creator><![CDATA[Dinesh]]></dc:creator>
            <pubDate>Wed, 14 Oct 2026 09:58:22 GMT</pubDate>
            <content:encoded><![CDATA[<p>Hello Bosch Community,</p><p>We are evaluating the following sensors for our drone flight controller:</p><ol><li><p>BMI088</p></li><li><p>BMI270</p></li><li><p>BMP390</p></li></ol><p>Could you please confirm their current lifecycle status, expected market availability, and long-term supply commitment?</p><p>We want to ensure these components remain available for production for several years and avoid obsolescence that could require PCB redesign. Please also clarify the advance notice period in case of planned discontinuation.</p>]]></content:encoded>
        </item>
    </channel>
</rss>