TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Launch HN: Memfault (YC W19) – Crashlytics for Firmware

134 点作者 fra超过 5 年前
Hi everyone!<p>We&#x27;re Chris, François, and Tyler, founders of Memfault (<a href="https:&#x2F;&#x2F;memfault.com" rel="nofollow">https:&#x2F;&#x2F;memfault.com</a>). Memfault helps firmware teams find and fix issues before customers start calling (or worse, tweeting!) by providing a small &lt;3kB SDK to include in the firmware and a web dashboard to manage releases, monitor devices, and view crashes. In the software world, Crashlytics, Sentry, and other error monitoring systems have been offering similar solutions for years. Memfault is the first such solution for firmware.<p>Embedded devices today are very different from ones built 10 years ago. Then, a device would run a small piece of firmware in a while() loop, capture input, compute some logic, write to a small 7-segment display, and that was about it.<p>Today, new products have a wireless connection to the internet, a bright 320x320 full color LCD, a high quality microphone and speaker for Alexa integration, and sometimes even run machine learning or computer vision algorithms on device! Building hardware products in 2019 is a significant software project, it requires software tools.<p>The three of us met at Pebble in 2013, where we shipped 4 watches together. Chris and Tyler went on to work at Fitbit, while François went to Oculus. Each time, we found ourselves building all of our tools from scratch which slowed us down tremendously. Imagine having to build a log collection solution every time you want to build a new web app!<p>As a result of the effort required to build them, the tools available to firmware engineers are not up to the task. For example, the state of the art in debugging requires connecting a physical debugger to your board. To investigate an error report from the field, customers must be contacted, devices shipped back, and enclosures disassembled. By the time this is all done, flash logs have rolled over, variables have reset, and developers are left scraping together raw data from flash to debug the issue. It can take weeks to get to the bottom of an issue that would be root caused in minutes with reasonable tools.<p>We&#x27;ve long wanted to show people what Memfault can do without the hurdle of integrating our SDK into their code. Today, we are launching a zero code, try-it-at-your-desk version of our tool available at <a href="https:&#x2F;&#x2F;memfault.com" rel="nofollow">https:&#x2F;&#x2F;memfault.com</a> (click on the &quot;Try Memfault&quot; button&quot;). In about 5 minutes, you should be able to connect a ARM Cortex-M based development board and upload an error report using a GDB script. If you do not have a board, you&#x27;ll be able to interact with an example error report.<p>We could go in at length about the implementations (ask us questions in the comments!). One thing we&#x27;re especially proud of is the &quot;Globals &amp; Statics&quot; tab which lets you query the state of any static or global variable in your system. To get this to work, we cross compiled libdwarf to wasm via emscripten and used it to implement parts of an in-browser debugger which can be used to look up values for a known symbol given an elf file and a Memfault core file.<p>We&#x27;d love to hear what you think, and find out what other tools you&#x27;ve found helpful in this space. Looking forward to the discussion!

14 条评论

redfern314超过 5 年前
1. Any concerns about privacy? Even if Memfault is one-way (as you mentioned in a different comment), that doesn&#x27;t mean that important user information is not exposed. Battery SOC and last-seen stats aren&#x27;t completely harmless.<p>2. Maybe this will be clearer when you release docs on the SDK - do you provide interfaces for normal logging in addition to just crash logging? <i>Ideally</i>, firmware applications should never crash, but unexpected logic states or invalid user input happen all the time.<p>3. How are you expecting licensing to work? Per device? Monthly subscription fee? Flat fee software purchase?<p>4. Are your libraries ASIL or FDA certified to allow use in the automotive or medical industries? What are the reliability&#x2F;safety implications of wrapping your main binary in Memfault&#x27;s monitoring interface?
评论 #20802153 未加载
borgel超过 5 年前
Hi! I write firmware professionally and this looks pretty amazing. I&#x27;ve already signed up to play with the tool and submitted a demo request :)<p>That being said, the thing I&#x27;m most interested in here is how to integrate Memfault with my codebase, and that&#x27;s the only thing I can&#x27;t figure out! Your docs pages are quite pretty, but don&#x27;t include the interesting bits! Clicking thought into the demo doesn&#x27;t really help.<p>Any chance you&#x27;d consider publishing that to the site?
评论 #20802349 未加载
ccamrobertson超过 5 年前
Congratulations! We rebuilt our diagnostics and firmware updating tools multiple times over the years for Lockitron, it was a massive pain each time.<p>How do you handle log caching and retrieval for offline devices (i.e Bluetooth)?
评论 #20801910 未加载
inglor超过 5 年前
This looka great and like it solves a big real problem people have. Congrats on doing this!<p>How do you deal with security? IoT devices are infamous and having one with a debugger open to the world terrifies me.
评论 #20801933 未加载
tehlike超过 5 年前
Add experimentation, canarying, rollbacks and monitoring (any metrics relevant) and you have a winner.
评论 #20801815 未加载
ryanworl超过 5 年前
What data warehouse or other analytics system are you storing the data in?
评论 #20802725 未加载
cushychicken超过 5 年前
Ha, I&#x27;ve been waiting to see this pop up on HN after seeing all the blog posts on &#x2F;r&#x2F;embedded.<p>Best of luck with the launch!
评论 #20804722 未加载
kaycebasques超过 5 年前
One of those &quot;obvious in retrospect&quot; ideas. The IoT startup I worked at probably would have used this.
fest超过 5 年前
I did browse the site, but couldn&#x27;t find in what way exactly the mechanism telemetry&#x2F;faults get passed from microcontroller to their backend.<p>For the last products I have touched, this would probably be the toughest part- abstracting&#x2F;reimplementing whatever mechanism the device is already using to communicate with something that may have internet access (USB, UART, Bluetooth, LoRa) and tying in that end (mobile&#x2F;desktop&#x2F;connected device).
评论 #20803882 未加载
qntty超过 5 年前
Any plans to support x86 CPUs?
评论 #20801821 未加载
评论 #20802024 未加载
ggregoire超过 5 年前
&gt; In the software world, Crashlytics, Sentry, and other error monitoring systems have been offering similar solutions for years. Memfault is the first such solution for firmware.<p>Just curious, why can&#x27;t Sentry be used in a firmware? (I don&#x27;t do firmware dev)
评论 #20803454 未加载
bibabaloo超过 5 年前
Do you have any plans to support embedded Linux IoT devices? Or are you strictly focussing on tiny devices running without an OS or with a RTOS ?
评论 #20811703 未加载
rkul超过 5 年前
Any plans on adding Qualcomm (Bluetooth) chips?
评论 #20801984 未加载
person_of_color超过 5 年前
Are you hiring?
评论 #20805077 未加载