Category: HMI

Dark Theme in C#

Many modern applications use custom theme/styles, but this is actually far more difficult to implement than you would expect on Windows. Windows have a lot of standard GUI components where you can control most, but not all colors and styles. So, if you want dark theme you either need to buy a library or start…

Read the full article

BasicPI Designers

UML is a well accepted standard for modeling complex software solutions, but it has never reached executable accuracy. The standard lack a technique that allow executable logic, which is exactly what PLD does. This is key to having a tool with 1:1 between diagrams and code. I started modeling with Entity-Relationship Diagrams years ago, and…

Read the full article

UML State Diagram

UML State Diagram is a standard, but I find it’s implementation into tools to be wage. So, I implement my own adaption because I intend to have a 1:1 with actual source code. This is not uncommon as most automation tools will have to make adaption in areas where executable accuracy is weak. I was…

Read the full article

UML Designer

Just showing a test diagram on the UML State Engine Designer I am making. It is stoll lots of work and details left, but progress is actually going fast the days I work on it. As for now this is just an experiment. A state engine can visualize some top level flow, but the details…

Read the full article

BasicPI Firmware Stack

This illustrates the BasicPI Firmware Stack in progress. What I always do in embedded applications is to make a “standard” main.cpp as follows: void AppInit() {    // wire hardware } int main() {    AppInit();    // start OS } A team I worked in years ago agreed on this standard so we should…

Read the full article

Raster Graphics Integer Errors

A common problem with plotting lines in raster graphics is visualization errors as we display the graphics. Most times we can just ignore these, but as I am drawing scrolling real-time plots I also receive the side effect of an integer error. This show a line that due to integer rounding is a straight line…

Read the full article