Home Blog About Authors Code of Conduct Contributing Tags Jobs Events Github About Memfault
Interrupt Logo

Interrupt

by Memfault


RSS      Subscribe     Contribute     Tags   Slack      Jobs     Events    
  • Get the most out of the linker map file

    09 Jul 2019 by Cyril Fougeray

    In this article, I want to highlight how simple linker map files are and how much they can teach you about the program you are working on.

  • Automate Debugging with GDB Python API

    02 Jul 2019 by Chris Coleman

    Previously we discussed how a significant portion of developer time is spent debugging firmware and how GDB can be a powerful utility for this. In this article we will discuss how to become more efficient at debugging by leveraging GDB’s Python API.

  • From Zero to main(): Demystifying Firmware Linker Scripts

    25 Jun 2019 by François Baldassari

    Last time, we talked about bootstrapping a C environment on an MCU before invoking our main function. One thing we took for granted was the fact that functions and data end up in the right place in our binary. Today, we’re going to dig into how that happens by learning about memory regions and linker scripts.

  • Tools for Firmware Code Size Optimization

    06 Jun 2019 by François Baldassari

    Every firmware engineer has run out of code space at some point or another. Whether they are trying to cram in another feature, or to make enough space for A/B firmware updates more code space is always better.

    In this series of posts, we’ll explore ways to save code space and ways not to do it. We will cover compiler options, coding style, logging, as well as desperate hacks when all you need is another 24 bytes.

    But first, let’s talk about measuring code size.

  • GNU Build IDs for Firmware

    29 May 2019 by François Baldassari

    In this post, we demonstrate how to use the GNU Build ID to uniquely identify a build. We explain what the GNU build ID is, how it is enabled, and how it is used in a firmware context.

  • Debugging Firmware with GDB

    21 May 2019 by Mohammad Afaneh

    If I had to choose one significant aspect that I was not aware of before starting my career as a firmware developer, it would be how much time is spent not actually developing, and instead debugging firmware!

  • From Zero to main(): Bare metal C

    14 May 2019 by François Baldassari

    Throughout the Zero to main() series of posts, we demystify what happens between when power is applied and your main function is called. In the process, we’ll learn how to bootstrap a C environment, implement a bootloader, relocate code, and more!

  • Programming the ATSAMD21 with IBDAP

    25 Apr 2019 by François Baldassari

    In the process of porting a blog post from the retired Arduino M0 Pro to Adafruit’s excellent Metro M0 Express, I ran into a few issues and scant amount of documentation. I’m writing this for the next poor soul wrestling with these systems.

Embedded Events

Discover embedded events online and around the world or share your own.

View all events

Sandbox Demo

Explore Memfault firsthand with real data, guided product tours, and no SDK integration needed!

Try the Sandbox

Brought to you with ❤️ by Memfault.
Learn more

Share on:

« 1 ... 19 20 21 »
RSS      Slack      Subscribe     Contribute     Community     Memfault.com    
© 2024 - Memfault, Inc.