<?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>High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/83893/high-current-state-that-persists-across-sw-reset</link><description>I&amp;#39;m experiencing a strange issue that I can&amp;#39;t seem to figure out. We&amp;#39;ve built a location system based around the nrf52833, and we&amp;#39;re currently running this system in a pilot installation at a customer site. Tags (consisting of a nrf52833, a LIS3DH accelerometer</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 31 Jan 2022 09:57:37 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/83893/high-current-state-that-persists-across-sw-reset" /><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/350378?ContentTypeID=1</link><pubDate>Mon, 31 Jan 2022 09:57:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a4e85bd8-82ca-4289-aa06-63bb1923e870</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi Mark,&lt;/p&gt;
&lt;p&gt;I appreciate you taking the time to post this update! It&amp;#39;s good hear you found the problem, and that it turned out to be something you could resolve through a FW update.&lt;/p&gt;
[quote user="bloecmo1"] I implemented the C_DEBUGEN check, and on the board I tried it on at least the bit did clear without a power-cycle after I disconnected the debugger.[/quote]
&lt;p&gt;The ARM documentation stated that it is not reset on a system reset, but by a power-on-reset. However, when testing it here, I observe that pinreset had the same effect. Maybe you used pinreset when disconnecting the debugger, and not a soft reset (i.e. debug reset). &lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/350297?ContentTypeID=1</link><pubDate>Sat, 29 Jan 2022 02:23:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b0c9cc12-c368-4dfe-a77f-5e8934810bba</guid><dc:creator>Mark</dc:creator><description>&lt;p&gt;Hi Vidar,&lt;/p&gt;
&lt;p&gt;It looks like we&amp;#39;ve found the culprit: the malfunctioning tags came from an&amp;nbsp;early prototype run, which had an external flash IC that we&amp;#39;ve since not been populating.&amp;nbsp; The firmware wasn&amp;#39;t doing anything with the pins--they were floating, in fact--and it appears that under certain circumstances the flash is entering into a high current state.&amp;nbsp; I&amp;#39;m not 100% sure of the mechanism, since it primarily occurs in a couple of locations--maybe it is something with the magnets.&amp;nbsp; In any case, we FOTA&amp;#39;d a version of code that sets the pins for the flash properly and the&amp;nbsp;batteries on the affected tags&amp;nbsp;are recovering.&amp;nbsp;&lt;br /&gt;Thanks so much for your assistance; I&amp;#39;m planning on keeping some of&amp;nbsp;your suggestions in the code (e.g. having the tags report the time spent in idle).&amp;nbsp;&amp;nbsp;&lt;br /&gt;One random thing to report: I implemented the C_DEBUGEN check, and on the board I tried it on at least the bit did clear without a power-cycle after I disconnected the debugger.&lt;/p&gt;
&lt;p&gt;Thanks again!&lt;br /&gt;Mark&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/349644?ContentTypeID=1</link><pubDate>Tue, 25 Jan 2022 20:28:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ff07e008-96cd-457e-aeb5-c0e418a7de61</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi Mark,&lt;/p&gt;
&lt;p&gt;It&amp;#39;s good to have confirmed that it does indeed enter sleep. Then there shouldn&amp;#39;t be any unhanded interrupts/events sources in your code as you said.&lt;/p&gt;
&lt;p&gt;Regarding magnetic fields, I have not been able to find other reports where strong fields have been shown to have had adverse effects on 52 series devices. Martin answered a somewhat related question in this thread: &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/33295/does-the-nrf52832-have-ferromagnetic-components"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/33295/does-the-nrf52832-have-ferromagnetic-components&lt;/a&gt;.&lt;/p&gt;
[quote user="bloecmo1"]if somehow the debug port was activated I think the tag could still sleep, so if there is a way for the application to tell that debug is active--or a way for the application to preemptively clear it even without checking--I&amp;#39;d still like to know[/quote]
&lt;p&gt;Yes, the device will be able to enter sleep (System ON mode) in debug mode, but with an elevated sleep current. I just measured it to around 1.5 mA here on my desk with a nRF52833DK. So maybe a bit low to fully explain discharge curve?&lt;/p&gt;
&lt;p&gt;It can be difficult to check have the FW determine whether the chip is in debug interface mode or not. You have the C_DEBUGEN bit in CoreDebug-&amp;gt;DHCSR (&lt;a href="https://developer.arm.com/documentation/ddi0337/e/CEGCJAHJ"&gt;link&lt;/a&gt;), but this register is only reset after a power-on reset (i.e. it will remain set after the debugger has exited debug mode), so it only makes sense to check this status bit if your devices have been power-cycled after they where programmed.&amp;nbsp; And It&amp;#39;s not possible to exit debug interface mode programmatically.&lt;/p&gt;
&lt;p&gt;I have been discussing this case with some of my colleagues to try come up with ideas. Will let you know if we can think of anything else to try.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/349622?ContentTypeID=1</link><pubDate>Tue, 25 Jan 2022 16:52:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9ff7ac1f-a1ee-4e9c-b9e2-cd0f84563399</guid><dc:creator>Mark</dc:creator><description>&lt;p&gt;Hi Vidar,&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve ID&amp;#39;d two tags that started exhibiting the issue last night.&amp;nbsp; This morning we&amp;nbsp;FOTA&amp;#39;d both tags to a version that tracks and uplinks the percentage of time they spend in the sleep state.&amp;nbsp; Both tags are reporting that they&amp;#39;re spending &amp;gt;99% of their time asleep (I realized too late that my code truncates the decimal instead of rounding, so I&amp;#39;m guessing it&amp;#39;s closer to 100% than 99%).&amp;nbsp; So I don&amp;#39;t think there&amp;#39;s a rogue or unhandled interrupt keeping the processor awake.&amp;nbsp; Notably, the error state also persisted through the FOTA process,&amp;nbsp;which entails&amp;nbsp;several resets.&amp;nbsp;&amp;nbsp;&lt;br /&gt;If you can think of any other register values that might help inform what&amp;#39;s going on, please let me know ASAP and we can program the tag to uplink them before it dies--which will probably be in the next week or so.&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;span style="text-decoration:line-through;"&gt;I think this obviates my question about polling the state of the debug interface&lt;/span&gt;, but I am still curious about any possible effects from&amp;nbsp;cutting through&amp;nbsp;strong magnetic fields.&amp;nbsp; I think both tags got into this state when they were placed in a rack with other tags (which are mounted to the flags&amp;nbsp;that have strong magnetic bases).&lt;br /&gt;&lt;br /&gt;EDIT: if somehow the debug port was activated I think the tag could still sleep, so if there is a way for the application to tell that debug is active--or a way for the application to preemptively clear it even without checking--I&amp;#39;d still like to know&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Thanks!&lt;br /&gt;Mark&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/349378?ContentTypeID=1</link><pubDate>Mon, 24 Jan 2022 21:01:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:94801030-fa25-4868-9676-cd010742857d</guid><dc:creator>Mark</dc:creator><description>&lt;p&gt;Hi Vidar,&lt;/p&gt;
&lt;p&gt;Two other questions I just thought of:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Is there a way for the application firmware to know if the debug interface is active?&amp;nbsp; E.g.&amp;nbsp;a status register?&lt;/li&gt;
&lt;li&gt;We were brainstorming here and one question that came up: it&amp;#39;s possible this issue manifests when the flags and tags are placed on a rack of other flags.&amp;nbsp; When that occurs, the tag may&amp;nbsp;cut through some relatively strong magnetic fields--do you know if it&amp;#39;s possible for that to cause unexpected behavior on the processor?&amp;nbsp; I&amp;#39;ve tried replicating it here and haven&amp;#39;t seen anything.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Thanks!&lt;/p&gt;
&lt;p&gt;Mark&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/349369?ContentTypeID=1</link><pubDate>Mon, 24 Jan 2022 19:30:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cbd1def3-946d-4997-bf78-928c6a4c7c37</guid><dc:creator>Mark</dc:creator><description>&lt;p&gt;Hi Vidar,&lt;/p&gt;
&lt;p&gt;Yes, I think I can have them report idle time.&amp;nbsp; As soon as I catch one malfunctioning I&amp;#39;ll FOTA it with a version that uplinks that.&lt;/p&gt;
&lt;p&gt;Thanks!&lt;br /&gt;Mark&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/349339?ContentTypeID=1</link><pubDate>Mon, 24 Jan 2022 15:42:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b9871b0b-59db-45a8-aa61-6f3f6c5dd460</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/members/hmolesworth"&gt;hmolesworth&lt;/a&gt;&amp;nbsp;has a good point regarding FPU. But the problem is that should not have triggered again after reset, not by itself at least. The interrupt pending register in NVIC&amp;nbsp; is&amp;nbsp; (i.e. NVIC-&amp;gt;ICPR[n])&amp;nbsp; cleared on reset:&amp;nbsp;&lt;a href="https://developer.arm.com/documentation/ddi0439/b/Nested-Vectored-Interrupt-Controller/NVIC-programmers-model"&gt;https://developer.arm.com/documentation/ddi0439/b/Nested-Vectored-Interrupt-Controller/NVIC-programmers-model&lt;/a&gt; so there would have to be an event source (e.g. FPU) that triggers the same interrupt again on every reboot until the next power on reset.&lt;/p&gt;
[quote userid="42643" url="~/f/nordic-q-a/83893/high-current-state-that-persists-across-sw-reset/349325#349325"]I don&amp;#39;t have the __DSB() instructions though--are they required?[/quote]
&lt;p&gt;I believe the dummy read (&amp;quot;(void) __get_FPSCR();) will have the same effect as the __DSB() instruction here. If not, it should at least become cleared on the next iteration.&lt;/p&gt;
&lt;p&gt;Here is how we clear FPU events in in our &lt;span class="item"&gt;&lt;a title="Power Management library" href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_pwr_mgmt.html?cp=8_1_3_36"&gt;Power Management library&lt;/a&gt;&lt;/span&gt;:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;#if (NRF_PWR_MGMT_CONFIG_FPU_SUPPORT_ENABLED &amp;amp;&amp;amp; __FPU_PRESENT)
    #define PWR_MGMT_FPU_SLEEP_PREPARE()     pwr_mgmt_fpu_sleep_prepare()

     __STATIC_INLINE void pwr_mgmt_fpu_sleep_prepare(void)
     {
        uint32_t original_fpscr;

        CRITICAL_REGION_ENTER();
        original_fpscr = __get_FPSCR();
        /*
         * Clear FPU exceptions.
         * Without this step, the FPU interrupt is marked as pending,
         * preventing system from sleeping. Exceptions cleared:
         * - IOC - Invalid Operation cumulative exception bit.
         * - DZC - Division by Zero cumulative exception bit.
         * - OFC - Overflow cumulative exception bit.
         * - UFC - Underflow cumulative exception bit.
         * - IXC - Inexact cumulative exception bit.
         * - IDC - Input Denormal cumulative exception bit.
         */
        __set_FPSCR(original_fpscr &amp;amp; ~0x9Fu);
        __DMB();
        NVIC_ClearPendingIRQ(FPU_IRQn);
        CRITICAL_REGION_EXIT();

        /*
         * The last chance to indicate an error in FPU to the user 
         * as the FPSCR is now cleared
         *
         * This assert is related to previous FPU operations 
         * and not power management.
         *
         * Critical FPU exceptions signaled:
         * - IOC - Invalid Operation cumulative exception bit.
         * - DZC - Division by Zero cumulative exception bit.
         * - OFC - Overflow cumulative exception bit.
         */
        &lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Would it be possible to get the devices to report the idle time similar to how you are getting the voltage and distance readings?&lt;/p&gt;
&lt;p&gt;Edit: &lt;a href="https://devzone.nordicsemi.com/members/hmolesworth"&gt;hmolesworth&lt;/a&gt;, I&amp;#39;m not sure what MPU is in this context. Did you mean NVIC? Thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/349325?ContentTypeID=1</link><pubDate>Mon, 24 Jan 2022 14:58:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:52b0c9e6-ae66-4c80-9454-401ee76823d3</guid><dc:creator>Mark</dc:creator><description>&lt;p&gt;Thanks for the suggestions!&amp;nbsp; I do have the fpu irq clear before __WFE()&amp;nbsp;in there already:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;void _fpu_irq_clr(void)
{
    uint32_t fpscr_reg = __get_FPSCR();

    __set_FPSCR(fpscr_reg &amp;amp; ~(0x0000009F));
    (void) __get_FPSCR();
    NVIC_ClearPendingIRQ(FPU_IRQn);
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t have the __DSB() instructions though--are they required?&lt;br /&gt;The MPU reset/event clear register you mentioned would be great--I can add it and FOTA a tag when it malfunctions, and if that recovers it that would be an indicator that an unhandled event is keeping the processor awake.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/349065?ContentTypeID=1</link><pubDate>Sat, 22 Jan 2022 19:02:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1fbd04e6-a775-47a1-bbe3-b61e9832fa15</guid><dc:creator>hmolesworth</dc:creator><description>&lt;p&gt;Longshot: the symptoms are identical to those of an unhandled event, typically caused by the FPU which are not necessarily cleared by a software reset. The effect is that the call to&amp;nbsp;&lt;em&gt;sd_app_evt_wait()&lt;/em&gt; returns immediately so the CPU never sleeps. This can be confirmed by putting a port pin driven low on entry to&amp;nbsp;&lt;em&gt;sd_app_evt_wait()&lt;/em&gt; and high on return; if it is mostly high it shows a pending event is preventing sleep. 3mA is suspiciously close to the MPU 5mA or so assuming the DC-DC convertor is running so battery consumption is approx 5mA * (1.3/3). Trouble is that assumes you can recreate the problem in the lab.&lt;/p&gt;
&lt;p&gt;There is a secret power on/off register for the MPU (I forget the address but could find it if needed), which clears the pending events, or the pending events can just be cleared on entry to sleep (can check if set or just don&amp;#39;t care, clear anyway). Quite how the pending event got set is irrelevant, though if you are using the hardware floating point it may be some extreme calculation caused by physical shock on the accelerometer. If not using the h/w FPU then some other peripheral could do the same, though most peripherals are cleared by a soft reset (not FPU).&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;// Floating-point Status Control Register - Cortex-M4 FPU
// ======================================
// 7 - IDC Input Denormal cumulative exception bit, see bits [4:0].
// 6 - Reserved
// 5 - Reserved
//   IXC Cumulative exception bits for floating-point exceptions, see also bit [7]. Each of these bits is
//   set to 1 to indicate that the corresponding exception has occurred since 0 was last written to it
// 4 - IXC Inexact cumulative exception
// 3 - UFC Underflow cumulative exception
// 2 - OFC Overflow cumulative exception
// 1 - DZC Division by Zero cumulative exception
// 0 - IOC Invalid Operation cumulative exception
// Set bit 7 and bits 4..0 in the mask to one (0x ...00 1001 1111)
#define FPU_EXCEPTION_MASK 0x0000009F

    // Clear any exceptions and PendingIRQ from the FPU unit
    __set_FPSCR(__get_FPSCR()  &amp;amp; ~(FPU_EXCEPTION_MASK));
    __DSB();
    NVIC_ClearPendingIRQ(FPU_IRQn);
    __DSB();
    sd_app_evt_wait();&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Edit: There is a sdk_config.h setting which might do this handling for you, if needed (I haven&amp;#39;t tried it):&lt;/p&gt;
&lt;p&gt;NRF_PWR_MGMT_CONFIG_FPU_SUPPORT_ENABLED&amp;nbsp; - Enables FPU event cleaning&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/348995?ContentTypeID=1</link><pubDate>Fri, 21 Jan 2022 15:20:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5cc2117-1cf1-4e7f-bf98-bd8dca04a9fb</guid><dc:creator>Mark</dc:creator><description>&lt;p&gt;On the battery position:&amp;nbsp;the bad luck I was referring to was that I received some malfunctioning tags, but they were dropped off late and sat on my porch overnight in very cold weather, which caused the batteries to droop to 1.5V.&amp;nbsp; After&amp;nbsp;I brought them in the voltage rose to 2.6V on some, but they didn&amp;#39;t kick back on.&amp;nbsp; I don&amp;#39;t have access to the reset lines, so I very briefly shorted the battery--&lt;em&gt;without shifting its position&lt;/em&gt;--and they came back and the current looked OK (evidenced by the battery voltage continuing to rise over time).&amp;nbsp; So if it is something related to battery position, it seems to be a transient event that in turn causes a persistent state.&lt;br /&gt;We&amp;#39;re not using system OFF.&lt;br /&gt;The persistence across reset is really stumping me too.&amp;nbsp; That and the fact that the tag appears to be running perfectly normal otherwise--timing, location updates, etc.--makes me feel like it&amp;#39;s not just a bug keeping the processor awake.&amp;nbsp; And while I wouldn&amp;#39;t say the issue is common, it&amp;#39;s also not exceptionally rare--out of the 40 or so active tags there&amp;#39;s anywhere from 1-5 that are exhibiting it at any given moment.&amp;nbsp; Also interesting: I don&amp;#39;t think we&amp;#39;ve seen any tags that have had the issue recur after replacing the batteries, which again would imply some transient triggering event.&lt;br /&gt;We do have the ability to remotely FOTA these tags, so if there&amp;#39;s anything we can try let me know.&amp;nbsp; &amp;nbsp;&lt;br /&gt;One thought: is there a way to&amp;nbsp;&lt;em&gt;&lt;/em&gt;emulate a power down reset in terms of register clearing/device state?&amp;nbsp; It might help narrow down the problem, and until we figure out the issue it would at least be nice to be able to recover tags without having to physically touch them.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/348959?ContentTypeID=1</link><pubDate>Fri, 21 Jan 2022 14:20:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5b08f0a-139b-4006-bef0-79cffec80cc6</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;This is pretty strange - the device is operating normally, does not use the I2C, and also does not recover through a soft reset. Maybe it could be the position of the battery even though it seems unlikely.&lt;/p&gt;
&lt;p&gt;As you indicated, peripherals and interrupt states will generally not persist across soft resets. One exception is the debug interface (see &lt;span&gt;&lt;a title="Debug Interface mode" href="https://infocenter.nordicsemi.com/topic/ps_nrf52833/dif.html?cp=4_1_0_3_7_3#debuginterfacemode"&gt;Debug Interface mode&lt;/a&gt;&lt;/span&gt;), but I think you have to be quite unlucky to get it enabled by some random clock pulses ( assuming the bottom side of the coincell can come into contact with the pads - the SWD lines have internal pull-ups).&lt;/p&gt;
&lt;p&gt;Do you use System OFF mode in your application? I&amp;#39;m asking because it&amp;#39;s not possible to enter this mode while the debug interface is enabled.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current state that persists across SW reset?</title><link>https://devzone.nordicsemi.com/thread/348810?ContentTypeID=1</link><pubDate>Thu, 20 Jan 2022 22:17:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bad92d20-ac98-4ad7-8251-862a749cbbf7</guid><dc:creator>Mark</dc:creator><description>&lt;p&gt;One other note: in the units I&amp;#39;ve looked at, the battery&amp;nbsp;&lt;em&gt;is&lt;/em&gt; shifted&amp;nbsp;to some extent from the holder, but there&amp;#39;s a foam block that prevents it from moving too far.&amp;nbsp; It does imply that the tags are seeing some kind of shock--enough to shift the battery, at least.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>