Single Port BMS MOSFETs Explained

Tags: Electronics, Solar

I'm writing this post since it seems there seems to be some confusion on why both MOSFETs in a typical single port BMS (Battery Management System) are controlled individually and why/how this works when they're in the same series circuit. It will hopefully also show why just controlling both MOSFETs at the same time to try and accomplish this is not a good idea.

Low Cost 10kW Solar System - One Year Later

Tags: Electronics, Finland, Hardware, Solar

A little over a year ago I published an overview of my off-grid solar system consisting of 10kW of panels and 28kWh LiFePo4 battery. The set-up consisted of all the components to run this solar system - including charge controllers, inverter, BMS, etc. The target goal was a cost of under €10K, which I managed to achieve with some cash to spare. Now that it has been in operation for a year, let's see how well the system held up, any issues that were encountered, and what the current price of the system would be were we to build it again today.

Panel Ground Mount

 

Partial Solar Eclipse over Finland Today

Tags: Other

Eclipse 2021

Building an off-grid 10kW solar system with 28kWh LiFePO4 battery, inverter, BMS and charge controllers for under €10K

Tags: Electronics, Finland, Hardware, Solar

Over the past decade or so I've been working on off-grid solar installations big enough to power a house, even during the long, cold (and dark) winter months here in Finland. While November, December and January remain challenging, it can actually be done - and pretty well. The issue in the past has been that doing this was quite expensive. The first implementations I built for this ran in the multiple tens of thousands of Euro and required quite some attention to keep going. These first systems relied on expensive components and difficult to manage and heavy lead-acid batteries. Over the past few years however, the landscape has changed and there are possibilities that I could only dream of even as little as a year ago. The post below details the components, where to get them, requirements, and the cost to get an off-grid solar system with several days of autonomy running for under 10K Euro. 

Solar Power

STM32 Minimal Development Environment

Tags: ARM, Embedded, Programming

In the past I have written on the advantages of minimal development environments (read: Makefiles and GCC, no IDE, minimal abstraction layers) for ARM processors. One of the advantages of working this way is easy integration with existing processes such as build systems, production line, testing, etc. Using this in a virtualized environment also allows one to make sure every developer uses the same tools, and that the tools are tested and qualified for the intended project with a ready made virtual image available for each developer. They can then add their favorite editor and user interface, but the underlying build environment is fixed for everyone and archived as such on a per-project basis. This means that if a customer comes back a year or two later and wants to make a change, all the tools are there as we left them ready to make the change. In this blog post I'll write down a possible scenario for a typical STM32 project, in this case using a NUCLEO-L152RE board as a target. It should be easy to adapt to other STM32 boards/chips, and in general other ARM microcontrollers as well.

Programmer on chair

Standard Peripherals Library vs CMSIS vs HAL vs Low Level Library

Tags: ARM, C, Electronics, Embedded, Programming

The STM32 line of microcontrollers offer a bunch of features in a nice package at reasonable cost, something I like. What I don't like as much are the development libraries around it provided by ST. For this reason, most of the time I stick to writing code using the 'Cortex Microcontroller Software Interface Standard' (CMSIS) and the datasheet, and this works nicely but can be slow to develop. While it's still my personal favorite, I recently checked out the other options to see where things are going to do the prep work for some ports of older projects built using the 'Standard Peripherals Library' to newer processors such as the STM32L4.

 

Microcontroller

 

Anyone Can Code...

Tags: Other, Programming

Every time I hear the "everybody can/should/has to code" line...

Anyone Can Code

Flashing STM32L15X EEPROM with STLink under Linux

Tags: Embedded, Linux, Programming

For a while now I've been evaluating some 32-bit micro controllers for a future product. One of them was the STM32L15x series. There are some handy development boards available such as the Nucleo boards. Since we need to have the ability to program processors from Linux for our small production line, tool support is one of the checkboxes that need to be ticked.

For the STM32 series, flashing the microcontroller can be done through GDB, OpenOCD, and the STLink tool. One issue that arose however was the need to program the EEPROM available on the STM32L series. This requirement comes from need to generate and program different EEPROM content on a per board basis at the production line. Doing that requires a few tweaks that are documented below...

Solutions

 

On Processes and Threads

Tags: C, Computer Architecture, Linux, Programming

Some time ago I followed an interesting discussion on a board where people were discussing multi-core software development. During the course of the discussion it became apparent that there is a lot of confusion and misconceptions about a 'process' and a 'thread' as they exist on e.g., a Linux system. Both are applicable to make use of multi-core systems, but they do so in different ways. Even though the exact distinction while compared to early definitions of the terms has perhaps become somewhat blurred, the two remain separate entities which can complement each other perfectly. In this post I'm going to try and illustrate the similarities and differences, and show you some real life scenarios of both. Keep in mind that we will be making some generalizations - and there are lots of examples where these generalizations do not directly apply, or where there are other possible implementations of the cited examples. Going into these would turn this blog entry into an entire book...

Multiprocess

Web Proxy

Tags: Network, Security

We just launched a free web proxy service: https://www.unblock-everything.com/. Not only will it help you get around firewalls and sites blocked by your ISP, it does so without logging user data. Oh, and we're 'Not Subject to American Law' - in reference to the recent NSA surveillance debacle ;-)

 

Syndicate content