Featured Articles

  • 10 Embedded Firmware Practices That Prevent Painful Bugs

    10 Embedded Firmware Practices That Prevent Painful Bugs

    Ten firmware habits that make bring-up easier, expose faults earlier, and keep common embedded failures from hiding in drivers, interrupts, buffers, or timing code.

  • Keeping Instrument GUIs Responsive with Qt

    Keeping Instrument GUIs Responsive with Qt

    How to structure Qt instrument GUIs so serial, USB, TCP, and SCPI hardware failures do not freeze widgets, hide stale data, or leave operators guessing.

  • Writing Drivers for I2C Chips in Embedded Systems

    Writing Drivers for I2C Chips in Embedded Systems

    How to build maintainable I2C chip drivers for sensors, ADCs, EEPROMs, GPIO expanders, and other peripheral devices without leaking bus details into application code.

  • Writing Drivers for SPI Chips in Embedded Systems

    Writing Drivers for SPI Chips in Embedded Systems

    A practical reference for embedded SPI drivers for ADCs, sensors, DACs, and other peripheral chips, covering datasheets, timing, testing, and bring-up.

Explore Embedded Systems Topics

Start with focused guides on embedded systems projects, embedded C and C++, electronics and PCB design, and programming guides. Popular paths include the SPI chip driver series, I2C chip driver series, embedded firmware best practices, and responsive Qt instrument GUI guide.

Latest Articles

  • windows-10-no-internet-access

    How to fix Windows 10 no internet on WiFi problem

    Are you frustrated by getting “no internet” or “limited access” messages on your Windows 10 machine, while you are actually connected to your home/work/public WiFi point? Are you getting ERR_NETWORK_CHANGED message in Chrome? Try the following steps…

  • opencv logo

    Installing OpenCV 3.1.0 on Ubuntu

    Itseez has finally released the first stable version of OpenCV in the 3.x series. It promises many new features over the 2.x version and many bug fixes over version 3.0. So if you want to install this…

  • raspberry-pi-tux for Emulating Raspberry Pi on Linux

    Emulating Raspberry Pi on Linux

    Raspberry Pi has gained a lot of fame over the past years since it’s introduction. Being dirt cheap while powerful enough to run your home multimedia center is the key selling point of Raspberry Pi. But when…

  • STM8 Linux for Setting up development and programming for STM8 on Linux

    Setting up development and programming for STM8 on Linux

    STM8 Series of micro-controllers by ST Microelectronics are dirt cheap and powerful at the same time. Their processing power is nothing short as of Arduino, while at the same time their power consumption is much less. These…

  • mechanical push button for Getting started with STM8 Development – Part 2 – Input handling

    Getting started with STM8 Development – Part 2 – Input handling

    Now that you learned how to configure one of the pins of a STM8 micro-controller as output to blink a LED in the first part of STM8 basic tutorials, it is time to learn how to configure…

  • stm8s003f3 LED blinking board

    Getting started with STM8 Development – Part 1 – Blinking a LED

    Usually the first step toward learning development on a micro-controller is  simply blinking a LED, as an analog to “Hello, world!” example used on PC programming languages. This time we will have a look into how to start…

  • HDD v.s. SSD

    Replacing Laptop’s Hard Disk with a SSD Drive

    The performance benefit when going from a good old mechanical hard drive to a solid state drive is huge! If you are planning to do this for your laptop, hopefully this video can show you how to…

  • Good Bad Ugly Capacitors

    Repairing bad capacitors in a monitor’s power supply

    A very common problem with power supply boards, motherboards and generally all PCs and TVs  which are produced between 1999 and 2007 is the premature defect on some Taiwanese made electrolyte capacitors with bad electrolyte formula. Although this…