{"id":5092,"date":"2026-02-25T14:00:20","date_gmt":"2026-02-25T13:00:20","guid":{"rendered":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/?p=5092"},"modified":"2026-05-05T20:08:53","modified_gmt":"2026-05-05T18:08:53","slug":"clock-drifts-oscillator-tolerances-in-embedded-systems","status":"publish","type":"post","link":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/","title":{"rendered":"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems"},"content":{"rendered":"\n<p>When sampling data from multiple physically disconnected devices, their internal clocks inevitably drift apart\u00a0\u2013 much like two wristwatches that gradually lose synchronization. This drift creates timing mismatches that complicate the alignment of recorded measurements across devices (learn more in the first part our series on <a href=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-synchronization-in-wireless-sensor-networks\/\" type=\"link\" id=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-synchronization-in-wireless-sensor-networks\/\">Clock Drifts and Synchronization<\/a>).<\/p>\n\n\n\n<p>In this post, we\u2019ll put some numbers on that drift.&nbsp;We will look at the typical tolerances of microcontroller clock sources and calculate how far two independent devices can drift apart over a one-minute interval.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Hardware timer sources: RC- vs. crystal oscillators<\/h2>\n\n\n\n<p>For our wireless sensor network <a href=\"http:\/\/www.maphera.com\">maphera<sup>\u00ae<\/sup><\/a>, we use &nbsp;the BL654 module from Ezurio, which packages Nordic Semiconductor\u2019s nRF52840 SoC.&nbsp;On this Bluetooth module, hardware timers run off the high-frequency clock (HFCLK), which you can source from either:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>HFINT <\/strong>\u2013 based on an internal RC oscillator (resistor capacitor relaxation oscillator). Convenient because it\u2019s on-chip, but relatively loose: its tolerance is typically \u00b11.5 % (see nRF52840 datasheet, section 5.4.4.1).<\/li>\n\n\n\n<li><strong>HFXO <\/strong>\u2013 an external crystal oscillator. More accurate by design: the BL654\u2019s 32 MHz crystal guarantees \u00b110 ppm.<\/li>\n<\/ul>\n\n\n\n<p>These two options translate to different drift behaviors, even across supposedly identical boards.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"285\" src=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-1024x285.png\" alt=\"\" class=\"wp-image-5102\" srcset=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-1024x285.png 1024w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-300x83.png 300w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-768x214.png 768w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-1536x427.png 1536w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-370x103.png 370w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-270x75.png 270w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-570x159.png 570w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik-740x206.png 740w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/grafik.png 1621w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-text-align-center has-small-font-size\">Source: Nordic Semiconductor, nRF52840 Product Specification v1.11, Figure 22: Clock Control<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Percent vs. ppm: What does tolerance actually mean?<\/h2>\n\n\n\n<p>The tolerance found in datasheets for oscillators is often specified in parts per million (ppm) or percentage. Both emphasize different orders of magnitude but can be used interchangeably: 1 ppm = 1\/1e6 = 0.0001 %. <\/p>\n\n\n\n<p>So when a datasheet lists:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>1.5 % tolerance = 0.015 = 15,000 ppm, or<\/li>\n\n\n\n<li>10 ppm tolerance<\/li>\n<\/ul>\n\n\n\n<p>&#8230; it&#8217;s telling you how much the <em>actual frequency<\/em> <math data-latex=\"f_{act}\"><semantics><msub><mi>f<\/mi><mrow><mi>a<\/mi><mi>c<\/mi><mi>t<\/mi><\/mrow><\/msub><annotation encoding=\"application\/x-tex\">f_{act}<\/annotation><\/semantics><\/math> of the oscillator can deviate from its <em>nominal frequency<\/em> <math data-latex=\"f_{nom}\"><semantics><msub><mi>f<\/mi><mrow><mi>n<\/mi><mi>o<\/mi><mi>m<\/mi><\/mrow><\/msub><annotation encoding=\"application\/x-tex\">f_{nom}<\/annotation><\/semantics><\/math> :<br><\/p>\n\n\n\n<div class=\"wp-block-math\"><math display=\"block\"><semantics><mrow><msub><mi>f<\/mi><mi>a<\/mi><\/msub><mo>=<\/mo><msub><mi>f<\/mi><mi>n<\/mi><\/msub><mo>\u2217<\/mo><mo form=\"prefix\" stretchy=\"false\">(<\/mo><mn>1<\/mn><mo>\u00b1<\/mo><mi>t<\/mi><mi>o<\/mi><mi>l<\/mi><mi>e<\/mi><mi>r<\/mi><mi>a<\/mi><mi>n<\/mi><mi>c<\/mi><mi>e<\/mi><mo form=\"postfix\" stretchy=\"false\">)<\/mo><\/mrow><annotation encoding=\"application\/x-tex\">f_a = f_n * (1 \\pm tolerance )<\/annotation><\/semantics><\/math><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>By looking at the tolerance, you get a measure of how \u201coff\u201d your clock can be\u2014essential when you\u2019re syncing multiple devices.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">From tolerance to drifts<\/h2>\n\n\n\n<p>Each clock can deviate from its nominal frequency by up to its specified tolerance. In the worst case, two independent devices drift in opposite directions, so their relative error <math data-latex=\"\\epsilon_r\"><semantics><msub><mi>\u03f5<\/mi><mi>r<\/mi><\/msub><annotation encoding=\"application\/x-tex\">\\epsilon_r<\/annotation><\/semantics><\/math> is twice the tolerance:<\/p>\n\n\n\n<div class=\"wp-block-math\"><math display=\"block\"><semantics><mrow><msub><mi>\u03f5<\/mi><mi>r<\/mi><\/msub><mo>=<\/mo><mn>2<\/mn><mo>\u2217<\/mo><mi>t<\/mi><mi>o<\/mi><mi>l<\/mi><mi>e<\/mi><mi>r<\/mi><mi>a<\/mi><mi>n<\/mi><mi>c<\/mi><mi>e<\/mi><\/mrow><annotation encoding=\"application\/x-tex\">\\epsilon_r = 2 * tolerance<\/annotation><\/semantics><\/math><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>That translates directly into a maximum time delta after any elapsed time <math data-latex=\"t\"><semantics><mi>t<\/mi><annotation encoding=\"application\/x-tex\">t<\/annotation><\/semantics><\/math>:<\/p>\n\n\n\n<div class=\"wp-block-math\"><math display=\"block\"><semantics><mrow><mrow><mi mathvariant=\"normal\">\u0394<\/mi><\/mrow><msub><mi>t<\/mi><mrow><mi>m<\/mi><mi>a<\/mi><mi>x<\/mi><\/mrow><\/msub><mo>=<\/mo><mi>t<\/mi><mo>\u2217<\/mo><msub><mi>\u03f5<\/mi><mi>r<\/mi><\/msub><\/mrow><annotation encoding=\"application\/x-tex\">\\Delta t_{max} = t * \\epsilon_r<\/annotation><\/semantics><\/math><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-1024x1024.png\" alt=\"\" class=\"wp-image-5155\" style=\"width:412px;height:auto\" srcset=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-1024x1024.png 1024w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-300x300.png 300w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-150x150.png 150w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-768x768.png 768w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-1536x1536.png 1536w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-2048x2048.png 2048w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-370x370.png 370w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-270x270.png 270w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-570x570.png 570w, https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/clock_drifts-1-740x740.png 740w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">Comparing HFINT and HFXO: Tolerance and worst-case drift<\/h2>\n\n\n\n<p>Using these few equations, we can estimate how much two independent devices&nbsp;\u2013 one running at the positive tolerance limit, the other at the negative&nbsp;\u2013 can drift apart.&nbsp;This will give us an overview of how HFINT and HFXO compare against each other with respect to their expected deviations. The table below summarizes nominal frequency, tolerance, and the worst-case drift per second and per minute.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">Source<\/td><td class=\"has-text-align-center\" data-align=\"center\">Tolerance<\/td><td class=\"has-text-align-center\" data-align=\"center\">Max relative error <math data-latex=\"\\epsilon_r\"><semantics><msub><mi>\u03f5<\/mi><mi>r<\/mi><\/msub><annotation encoding=\"application\/x-tex\">\\epsilon_r<\/annotation><\/semantics><\/math><\/td><td class=\"has-text-align-center\" data-align=\"center\">Max drift (per sec)<\/td><td class=\"has-text-align-center\" data-align=\"center\">Max drift (per min)<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">HFINT<\/td><td class=\"has-text-align-center\" data-align=\"center\">1.5 %<\/td><td class=\"has-text-align-center\" data-align=\"center\">3 %<\/td><td class=\"has-text-align-center\" data-align=\"center\">30 msec \/ sec<\/td><td class=\"has-text-align-center\" data-align=\"center\">1.80 sec \/ min<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">HFXO<\/td><td class=\"has-text-align-center\" data-align=\"center\">10 ppm<\/td><td class=\"has-text-align-center\" data-align=\"center\">20 ppm<\/td><td class=\"has-text-align-center\" data-align=\"center\">20 \u00b5sec \/ sec<\/td><td class=\"has-text-align-center\" data-align=\"center\">1.2 msec \/ min<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>The table shows that the external crystal oscillator (HFXO) on the BL654 module is orders of magnitude more stable than the on-chip RC oscillator (HFINT). This stability is crucial for BLE and other time-critical wireless protocols. Nevertheless, even a 10 ppm crystal will accumulate over a millisecond of drift each minute if left unsynchronized.<\/p>\n\n\n\n<p>It\u2019s important to remember that tolerance isn\u2019t the only factor when choosing an oscillator. Temperature, aging and other environmental influences can widen the tolerance range. Additionall numbers like current consumption and startup time need to be look at as well to see the full picture.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Summary<\/h2>\n\n\n\n<p>Selecting the right HFCLK source is crucial for precise timing in embedded systems. The oscillator tolerance provides boundaries for the expected drift. An external crystal oscillator delivers far better stability than an on-chip RC source. However, even the more accurate crystal accumulates drift over time&nbsp;\u2013 so without proper synchronization, data inconsistencies will still occur.<\/p>\n\n\n\n<p>Next, we will share measurement data from our wireless sensor network to compare these numbers against real-world performance. See you in the next post!<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>When sampling data from multiple physically disconnected devices, their internal clocks inevitably drift apart\u00a0\u2013 much like two wristwatches that gradually lose synchronization. This drift creates timing mismatches that complicate the alignment of recorded measurements across devices (learn more in the first part our series on Clock Drifts and Synchronization). In this post, we\u2019ll put some [&hellip;]<\/p>\n","protected":false},"author":21,"featured_media":5104,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[39,93],"tags":[94,115,81,95,67],"coauthors":[92],"class_list":["post-5092","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-digital-health","category-medical-sensing","tag-maphera","tag-maphera-synchronization","tag-sensor","tag-synchronization","tag-wearables"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems - SMART SENSING insights<\/title>\n<meta name=\"description\" content=\"Clock drifts between RC and crystal oscillators can skew timing in wireless sensor networks. Learn more about tolerances and sync strategies.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems - SMART SENSING insights\" \/>\n<meta property=\"og:description\" content=\"Clock drifts between RC and crystal oscillators can skew timing in wireless sensor networks. Learn more about tolerances and sync strategies.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/\" \/>\n<meta property=\"og:site_name\" content=\"SMART SENSING insights\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/FraunhoferIIS\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-25T13:00:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-05T18:08:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/IMG_3764-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1920\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Markus Jechow\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Markus Jechow\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/\"},\"author\":{\"name\":\"Markus Jechow\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#\\\/schema\\\/person\\\/f5407477b48b8dd7a79991f609cef14a\"},\"headline\":\"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems\",\"datePublished\":\"2026-02-25T13:00:20+00:00\",\"dateModified\":\"2026-05-05T18:08:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/\"},\"wordCount\":688,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/IMG_3764-scaled.jpg\",\"keywords\":[\"maphera\u00ae\",\"maphera\u00ae synchronization series\",\"Sensor\",\"Synchronization\",\"Wearables\"],\"articleSection\":[\"Digital Health\",\"Medical Sensing\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/\",\"url\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/\",\"name\":\"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems - SMART SENSING insights\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/IMG_3764-scaled.jpg\",\"datePublished\":\"2026-02-25T13:00:20+00:00\",\"dateModified\":\"2026-05-05T18:08:53+00:00\",\"description\":\"Clock drifts between RC and crystal oscillators can skew timing in wireless sensor networks. Learn more about tolerances and sync strategies.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/#primaryimage\",\"url\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/IMG_3764-scaled.jpg\",\"contentUrl\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/IMG_3764-scaled.jpg\",\"width\":2560,\"height\":1920},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/clock-drifts-oscillator-tolerances-in-embedded-systems\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#website\",\"url\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/\",\"name\":\"SMART SENSING insights\",\"description\":\"learn more about our focus research areas sensor technology, electronics, and artificial intelligence\",\"publisher\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#organization\",\"name\":\"Fraunhofer IIS\",\"url\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2023\\\/06\\\/Fraunhofer-IIS-1.png\",\"contentUrl\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2023\\\/06\\\/Fraunhofer-IIS-1.png\",\"width\":826,\"height\":299,\"caption\":\"Fraunhofer IIS\"},\"image\":{\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/FraunhoferIIS\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/fraunhofer-iis\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/#\\\/schema\\\/person\\\/f5407477b48b8dd7a79991f609cef14a\",\"name\":\"Markus Jechow\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/Markus-Jechow_avatar_1729836529-96x96.jpg9804f8cc285dcc010b996cc8275cb9a6\",\"url\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/Markus-Jechow_avatar_1729836529-96x96.jpg\",\"contentUrl\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/Markus-Jechow_avatar_1729836529-96x96.jpg\",\"caption\":\"Markus Jechow\"},\"description\":\"Markus is an Embedded Software Engineer in the Medical Sensor Systems group at Fraunhofer IIS. He contributes to the development of innovative medical wearables and embedded medical applications.\",\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/markus-jechow-504241165\\\/\"],\"url\":\"https:\\\/\\\/websites.fraunhofer.de\\\/smart-sensing-insights\\\/author\\\/markus-jechow\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems - SMART SENSING insights","description":"Clock drifts between RC and crystal oscillators can skew timing in wireless sensor networks. Learn more about tolerances and sync strategies.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/","og_locale":"en_US","og_type":"article","og_title":"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems - SMART SENSING insights","og_description":"Clock drifts between RC and crystal oscillators can skew timing in wireless sensor networks. Learn more about tolerances and sync strategies.","og_url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/","og_site_name":"SMART SENSING insights","article_publisher":"https:\/\/www.facebook.com\/FraunhoferIIS","article_published_time":"2026-02-25T13:00:20+00:00","article_modified_time":"2026-05-05T18:08:53+00:00","og_image":[{"width":2560,"height":1920,"url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/IMG_3764-scaled.jpg","type":"image\/jpeg"}],"author":"Markus Jechow","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Markus Jechow","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/#article","isPartOf":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/"},"author":{"name":"Markus Jechow","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#\/schema\/person\/f5407477b48b8dd7a79991f609cef14a"},"headline":"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems","datePublished":"2026-02-25T13:00:20+00:00","dateModified":"2026-05-05T18:08:53+00:00","mainEntityOfPage":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/"},"wordCount":688,"commentCount":0,"publisher":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#organization"},"image":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/#primaryimage"},"thumbnailUrl":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/IMG_3764-scaled.jpg","keywords":["maphera\u00ae","maphera\u00ae synchronization series","Sensor","Synchronization","Wearables"],"articleSection":["Digital Health","Medical Sensing"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/","url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/","name":"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems - SMART SENSING insights","isPartOf":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#website"},"primaryImageOfPage":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/#primaryimage"},"image":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/#primaryimage"},"thumbnailUrl":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/IMG_3764-scaled.jpg","datePublished":"2026-02-25T13:00:20+00:00","dateModified":"2026-05-05T18:08:53+00:00","description":"Clock drifts between RC and crystal oscillators can skew timing in wireless sensor networks. Learn more about tolerances and sync strategies.","breadcrumb":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/#primaryimage","url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/IMG_3764-scaled.jpg","contentUrl":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2026\/02\/IMG_3764-scaled.jpg","width":2560,"height":1920},{"@type":"BreadcrumbList","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/clock-drifts-oscillator-tolerances-in-embedded-systems\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/"},{"@type":"ListItem","position":2,"name":"Clock Drifts\u00a0\u2013 Oscillator Tolerances in Embedded Systems"}]},{"@type":"WebSite","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#website","url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/","name":"SMART SENSING insights","description":"learn more about our focus research areas sensor technology, electronics, and artificial intelligence","publisher":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#organization","name":"Fraunhofer IIS","url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#\/schema\/logo\/image\/","url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2023\/06\/Fraunhofer-IIS-1.png","contentUrl":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2023\/06\/Fraunhofer-IIS-1.png","width":826,"height":299,"caption":"Fraunhofer IIS"},"image":{"@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/FraunhoferIIS","https:\/\/www.linkedin.com\/company\/fraunhofer-iis"]},{"@type":"Person","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/#\/schema\/person\/f5407477b48b8dd7a79991f609cef14a","name":"Markus Jechow","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2024\/10\/Markus-Jechow_avatar_1729836529-96x96.jpg9804f8cc285dcc010b996cc8275cb9a6","url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2024\/10\/Markus-Jechow_avatar_1729836529-96x96.jpg","contentUrl":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-content\/uploads\/2024\/10\/Markus-Jechow_avatar_1729836529-96x96.jpg","caption":"Markus Jechow"},"description":"Markus is an Embedded Software Engineer in the Medical Sensor Systems group at Fraunhofer IIS. He contributes to the development of innovative medical wearables and embedded medical applications.","sameAs":["https:\/\/www.linkedin.com\/in\/markus-jechow-504241165\/"],"url":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/author\/markus-jechow\/"}]}},"_links":{"self":[{"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/posts\/5092","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/comments?post=5092"}],"version-history":[{"count":24,"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/posts\/5092\/revisions"}],"predecessor-version":[{"id":5165,"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/posts\/5092\/revisions\/5165"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/media\/5104"}],"wp:attachment":[{"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/media?parent=5092"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/categories?post=5092"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/tags?post=5092"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/websites.fraunhofer.de\/smart-sensing-insights\/wp-json\/wp\/v2\/coauthors?post=5092"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}