<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sricharan Srikrishna</title>
    <description>The latest articles on DEV Community by Sricharan Srikrishna (@sricharan_srikrishna_04ef).</description>
    <link>https://dev.to/sricharan_srikrishna_04ef</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4087058%2Ffe6cb621-dcbd-43e8-ae36-81f8c865030e.jpg</url>
      <title>DEV Community: Sricharan Srikrishna</title>
      <link>https://dev.to/sricharan_srikrishna_04ef</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sricharan_srikrishna_04ef"/>
    <language>en</language>
    <item>
      <title>I lost 4 days to a firmware bug that cost twelve rupees to fix. So I built HardcoreAI.</title>
      <dc:creator>Sricharan Srikrishna</dc:creator>
      <pubDate>Thu, 20 Aug 2026 17:47:11 +0000</pubDate>
      <link>https://dev.to/sricharan_srikrishna_04ef/i-lost-4-days-to-a-firmware-bug-that-cost-twelve-rupees-to-fix-so-i-built-hardcoreai-402o</link>
      <guid>https://dev.to/sricharan_srikrishna_04ef/i-lost-4-days-to-a-firmware-bug-that-cost-twelve-rupees-to-fix-so-i-built-hardcoreai-402o</guid>
      <description>&lt;p&gt;Four days debugging a hard fault on an STM32F4.&lt;/p&gt;

&lt;p&gt;Root cause: UART clock not enabled before peripheral init. Documented on page 247 of the reference manual. Fix took 30 seconds once I found it.&lt;/p&gt;

&lt;p&gt;That same week, the software engineer next to me shipped three features with Copilot. Same hours. His tools understood his code. Mine understood nothing about my chip.&lt;/p&gt;

&lt;p&gt;I tried every AI tool available. All of them hallucinated register addresses. In embedded systems, a wrong address does not produce a catchable exception — it produces a hard fault, a silent reset, or a bricked board.&lt;/p&gt;

&lt;p&gt;The problem is not AI capability. No AI tool has actually read your datasheet.&lt;/p&gt;

&lt;p&gt;So I built HardcoreAI&lt;/p&gt;

&lt;p&gt;The workflow is different from asking an AI to write embedded C:&lt;/p&gt;

&lt;p&gt;Research first. Generate second. Flash last.&lt;/p&gt;

&lt;p&gt;Select your board — STM32F1/F4/H7, ESP32, 1,500+ via PlatformIO&lt;br&gt;
Feed it your reference manual and errata before generating anything&lt;br&gt;
Get firmware where every line cites the exact page and register it came from&lt;br&gt;
Build, flash via OpenOCD, test&lt;br&gt;
On fault — reads CFSR, HFSR, BFAR, MMFAR, identifies the violation, corrects, reflashes automatically&lt;/p&gt;

&lt;p&gt;The fault decoder is fully deterministic — 500+ hand-written rules, zero LLM in that path. We caught a clock tree conflict on STM32H7 where the grounding layer returned correct output but the fault decoder flagged it as physically impossible on that silicon revision. Grounding alone would not have caught it.&lt;/p&gt;

&lt;p&gt;Try it free&lt;/p&gt;

&lt;p&gt;First complete project is free. No signup. No credit card. No waitlist.&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://www.hardcoreai.in/" rel="noopener noreferrer"&gt;https://www.hardcoreai.in/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>iot</category>
      <category>esp32</category>
      <category>stm</category>
    </item>
  </channel>
</rss>
