Francois Berder's blog

Highlighting potential concurrency bugs

Running buggy firmware I recently found myself in the position of debugging a firmware written in C. This firmware was running on a ARM Cortex-M4 with a fair amount of flash and RAM for a microcontroller. The source code amounted to around 10000 lines of code. The firmware relied on FreeRTOS and spawned around a dozen of tasks after initialization. It was also spawning a few more tasks from time to time that ran for short durations.

Designing a step-down converter - part 3

This post follows Designing a step-down converter - part 2. I finally bought an AX-EL150W30A. This is a 150W electronic load, which is very useful to simulate loads and ensure that a given circuit is capable of handling large currents without resorting to resistors. In this case, I connected the output of the power supply directly to the electronic load. The power supply is powered by a 12V power supply and a multimeter is measuring the input current.

Designing a step-down converter - part 2

This post follows Designing a step-down converter - part 1. Board Layout After finishing designing the schematics, I started doing the layout based on the recommended layout found in the MCP16311 datasheet (Figure 5-1). The result is a simple 2-layer board with both step-down converters next to each other. Everything is routed on the top layer and both top and bottom layers are filled with a ground plane. Block terminals are present to connect input and output wires.

Designing a step-down converter - part 1

Context and requirements I am currently building a remote-controlled submarine: a 1/120 replica of the HMS Resolution. For this scale model, I do not plan to buy any off the shelf modules except the radio receiver and servos. Thus, I will design most of the electronics myself. As several elements such as solenoid valves, pumps or motors require 12V, I preferred having a relatively high voltage for the battery instead of designing a buck-boost power supply capable of delivering several amps.