Author Archive

The life of ELMG Digital Power Engineers

Wednesday, May 4th, 2022

This is the life of ELMG Digital Power Engineers working for our global customers. So five years ago I was biking around Berlin after having spent the week with my ELMG Digital Power colleague and our customers and their customers, testing 12MW grid-connected power converters where the control did not yet quite work properly.

This is the Reichstag in the background. It was a beautiful, cool, Berlin day.

Eventually, the power converters worked really well and we eventually did the first commissioning for them when they were installed on the Qatar Metro Rail.

Berlin biking after power converter testing.

To address the issues we changed the software we had written and the FPGA code. This was to ensure that the gate pulses were always absolutely consistently in the right place at the right time. This is the constant challenge of power electronics. At 12MW it is very noticeable when gate pulses aren’t always in the right place.

Berlin biking route. Checkpoint Charlie, Brandenberg Gate and the Denkmal für die ermordeten Juden (Holocaust Memorial) on the route.
Berlin’s Holocaust monument.

ELMG Digital Power worked on a large-scale converter project, biked around Berlin on a day off, tested further in Japan, Turin, and Prague, and then commissioned the converters in Doha. As a result, our customer is now the leader in their market segment.

Working for our global customers’ success – this is the life of ELMG Digital Power Engineers.

This is one of many successful ELMG Digital Power Electronics engineering developments.

Contact ELMG for your power converter development.

Checkpoint Charlie in Berlin


Do you do small converters?

Yes, all sizes from 100W to 500MW – we work on converters of all sizes. Grid storage, telco, motor drives, aerospace, traction. We do power converters for any application.

Where are your customers? Can you help us?

Arizona, Belgium, California, China, Denmark, England, France, Germany, India, Massachusettes, New Zealand, North Carolina, New South Wales, Scotland, South Australia, Switzerland, Sweden, Queensland, United Kingdom, United States of America.

Yes, we can help you.

Do you need to wear a bike helmet in Berlin?

No. There is no requirement by law.

What sort of control do you use?

Mostly DSP, Microcontrollers and FPGA. Our favorite microcontrollers/DSPs are Ti Our favorite FPGAs are Xilinx

Do you have any case studies?

Contact us and we’ll provide some.

Contact ELMG for your power converter development.

Do you have any references?



Kraft PowerCon



How long have you been doing Digital Power Electronics Control?

As ELMG Digital Power Electronics since 2001.

ELMG Digital Power People have been working on digital power electronics control since 1992.

About ELMG Digital Power

ELMG Digital Power provides technology, know-how, and products to control, manipulate and measure electrical power. This means we design and build the best digital controlled power electronic systems and by doing that we change the world.
For the past twenty-five years, we have been working on digitally controlled power converters in

  • motor drives
  • industrial switch mode power supplies
  • reactive power compensation
  • medium voltage system
  • power quality systems
  • motor starters
  • appliances
  • telecom switch-mode power supplies
  • UPS
  • railway converters
  • grid connected energy storage converters

ELMG Digital Power helps our customers become leaders in digital power electronics.

Contact ELMG for your power converter development.

Happy Birthday Claude Shannon

Sunday, May 1st, 2022

Happy Birthday to Claude Shannon.

Shannon is known as the “father of information theory” because of the landmark paper he published in 1948. He is also known for founding both digital computer and digital circuit design theory in 1937. Shannon received the IEEE Medal of Honor in 1966 “For his development of a mathematical theory of communication which unified and significantly advanced the state of the art.” Claude Shannon would have been 106 on the 30th of April 2022.

Shannon had lots to do with the sampling theorem.

Happy birthday, Claude Shannon!

ELMG Digital Power Continues AMD Xilinx Partner Program

Tuesday, April 26th, 2022

We are pleased to announce that ELMG Digital Power continues to be part of the AMD Xilinx Partner Program.

As ELMG Digital Power CTO Dr. Hamish Laird explains

“Being part of the Xilinx Partner Program has always been something that we at ELMG Digital Power are very proud of, grateful for, and happy with as it lets us do amazing things for our customers.”

He continues…

“It is fantastic to have the connection that gives us access to all the great AMD/Xilinx tools such as Vitis, HLS, IP Integrator, and Vivado with all its code templates. The combination of the toolchain and the devices from Spartan, Artix, Virtix, Zynq and UltraScale through to SoMs such as the Kria K26 means that ELMG Digital Power can provide great cost-effective, powerful solutions for our customers.”

Constant professional development and training for ELMG Digital Power people allow us to use the best solution for our digital power electronics control platforms.

Dr. Laird again ” We are very grateful and humbled to be part of the Xilinx Partner program. We deliver the best power electronics controllers using this technology”

About AMD Xilinx

Xilinx is now part of AMD. AMD now has the industry’s broadest product portfolio and a highly complementary set of technologies, reaching customers in a diverse set of markets. Together, AMD and Xilinx leverage the right engine for the right workload to address the compute needs of our customers.

About ELMG Digital Power

ELMG Digital Power provides technology, know-how, and products to control, manipulate and measure electrical power. We design and build the best digital controlled power electronic systems and by doing that we change the world.

For the past twenty-five years, we have been working on digitally controlled power converters in motor drives, industrial switch mode power supplies, reactive power compensation, medium voltage system, power quality systems, motor starters, appliances, energy storage converters, UPS, and telecom switch-mode power supplies.

ELMG Digital Power helps our customers become leaders in digital power electronics.

Inverter grid synchronisation – Six AC system frequency facts

Thursday, December 9th, 2021

With inverter grid synchronisation the key problem is that the grid frequency can vary.  In fact the frequency of AC systems around the world is different and is constantly changing.

  1. Aircraft AC systems run at 400Hz three phase.  They do this to make the motors lighter with less iron due to the volt second integral being lower.
  2. Some railway locomotive AC systems are 16.7Hz single phase.  These frequencies are chosen to minimise the current needed to charge the capacitance of the overhead line and so minimises the number of substations needed.  The 16.7Hz  is chosen to so as to not be a multiple of 50Hz.  The was made by rotary frequency changers (this is truly what they were called as power engineers often lack imagination) but is now also made by static power electronic frequency changers.  With modern static frequency changers with inverter grid synchronisation 16.7Hz is achieved.
  3. In Switzerland the railway has their own separate distribution grid.
  4. There have been railway frequencies as low as 8Hz and some train locomotives even operate from very low frequency AC with a frequency of zero.  DC is the AC you have when you are not having AC.
  5. Early on GE decided that 40Hz would be good for AC distribution but it did not catch on.
  6. There are aluminium smelters in Australia where they have or had 60Hz, 50Hz, 25Hz and 16 2/3 Hz AC systems and reportedly all at the same time.

>Follow the ELMG Blog 

Other useful information for synchronisation.

  • NATO ships are 60 Hz,
  • The Swiss, German, and Austrian rail network reportedly changed to 16.7 Hz from 16 2/3 Hz  in 1995.  This to prevent over heating in rotary converters.
  • Japan has both 50 Hz and 60 Hz with the 50Hz built by the British and the 60Hz by the US after the second world war.  The two systems are linked by HVDC links.
  • 60 Hz is probably a better choice than 50Hz but it is too late now for the 50Hz countries.
  • Reportedly Tesla (not the car company) chose 50Hz first and then 60Hz.
  • There is a power station on the Argentina/Brazil border where half the generators make 60Hz for Brazil and half make 50 Hz for Argentina.
  • Sometimes, in some countries, on some days, 50Hz AC systems will run at 38Hz.  This presents an interesting inverter grid synchronisation problem.

>Follow the ELMG Blog 

Grid frequency varies constantly as the mismatch between generator and load power changes.  In most countries the variation is not as large as the change to 38Hz.

Grid connected power converters must track or lock to the grid the grid.  The best way to do this is with a phase locked loop or a frequency locked loop.

Inverter Grid Synchronisation

Phase locked loops to track grid frequency are an essential part of grid connected converters. Click here to ask us about using an ELMG phase locked loop for inverter grid synchronisation.

Xilinx Partner Technical Recertification

Thursday, October 28th, 2021

ELMG Digital Power CTO Dr. Hamish Laird has completed Xilinx Partner technical recertification for ELMG Digital Power’s ongoing Xilinx partner program.

This ongoing commitment to capability, learning, and keeping up to date with Xilinx technology is an investment that pays dividends when we are implementing high-performance digital power controllers.

This year’s recertification covered the new Versal ACAP. This extended SoC device is powerful to the point of being daunting. As Dr. Laird says “I was suspicious of the suitability of the ACAP as a device for power control but I can now see how this device is suitable for almost every application we could ever consider.”

Xilinx Partner technical recertification – the certificate

Xilinx Partner Technical Recertification
Xilinx Partner Technical Recertification Certificate

Dr Laird continues “We are really thankful to Xilinx for our ongoing partnership program membership. The program is great and allows us access to world-leading devices, toolchains, and training. Completing this Xilinx Partner Technical recertification is always a great day in the year. The training material is really good and well worth the time and effort required.”

About Xilinx

We Are Building the
Adaptable, Intelligent World

Xilinx is the inventor of the FPGA, programmable SoCs, and now, the ACAP. Our highly flexible programmable silicon, enabled by a suite of advanced software and tools, drives rapid innovation across a wide span of industries and technologies – from consumers to cars to the cloud. Xilinx delivers the most dynamic processing technology in the industry, enabling rapid innovation with its adaptable, intelligent computing.

About ELMG Digital Power

We Provide Technology, Know-How and Products to Control, Manipulate and Measure Electrical Power.

ELMG Digital Power aims to design and build the best digital controlled power electronic systems.
By doing that we change the world for the better.

ELMG Digital Power is part of a select group of companies invited to be part of the Xilinx Partner Program. Each year ELMG people complete training in Xilinx tools and devices.

Fighting Evil in Code Comments.

Wednesday, September 15th, 2021

So I have become a superhero – I am fighting evil in code comments. For those of you that know me, I always talk about myself as a power electronics hardware and control person. And since about 1997 I have designed control systems that for the most part have been implemented in code of some kind. If you had told me back in 1991 when I finished my Masters that I’d end up being a software person I’d have told you that this was so unlikely that I could not see it happening. And now I spend the balance of my time looking at code. Typically it is VHDL code, Verilog Code, C code or Python code and sometimes I look at C++ code. When I look at this code I am trying to work out what the code does, usually because the code is not doing what it is meant to. Whether it is the pulse or PWM generator code for a DC to DC converter or the repetitive filter necessary to minimise the harmonic content in a UPS voltage waveform it always comes down to looking at the code. So how do you know if the comments are evil? How do you go about fighting evil in your code. Some comments on comments.

The use of requirements, design records, interface specifications, verification test plans, code testing tools, unit testing, version control, automated documentation extraction like doxygen, and code reviews does not ever seem to ever be enough to get the code to do what it needs to.

And then there are the comments that I see in the code. This is the most amazingly varied and strange part of the code review experience. There seems to be no agreement on

  • Why comments are in the code?
  • What goes in a comment?
  • Who the comment is for?
  • Why the comment did not get maintained when the code was changed?

The answer to the last question is the reason that 15% (from ELMG Digital Power Polls) of everyone who codes insists that they will not ever use comments. (This is my present opinion and most frequent practice for VHDL and Verilog)

The answer to the other three questions causes discussions of a vehemence that only software people can bring to an argument.

I have a collection of articles and opinions that are from some of the best in the embedded software development space. And I have a collection of articles and opinions that are from some of the best in the software space.

The article that this post is named for is from Michael Sorens. He is worth reading for all good advice about things software development.

This is the article – it is a long read and is quite confronting to software people.

Here are a few excerpts.

What’s Wrong with Comments

The problems with comments are many and varied:

  • Over time, and not intentionally, comments can lie, so can lead to misinterpreting the code if you happen to believe the comment.
  • Writing comments takes time, more so if you choose a commenting style that requires a lot of time to look pretty, so strive for simplicity.
  • Comments make a file longer and can often introduce unnecessary clutter, thus requiring more time to read. Steve Smith, in When to Comment Your Code, reminded me of a very relevant quote from that classic tome on writing, The Elements of Style, and it applies just as validly to code: “Omit needless words. Vigorous writing is concise. A sentence should contain no unnecessary words, a paragraph no unnecessary sentences, for the same reason that a drawing should have no unnecessary lines and a machine no unnecessary parts.”
  • Comments often attempt to explain what or how, which tends to merely repeat the code; comments should always address the why.
  • In maintaining code you also have to maintain any associated comments too, thus requiring more effort.
  • Writing comments that are clear rather than cryptic is hard. I recent comment (pun intended) I read on this was enlightening: if the code was written in a confusing manner why would you expect the code author to suddenly be able to write comments about it clearly?

As I have said here, and you may have seen elsewhere, comments frequently lie. What does that really mean? Here’s an example from Dietrich’s article along with his commentary:

// Returns x + y or, if x or y is less than zero, throws an exception
public int Add(int x, int y)
    return x + y;

What happened here? When you put on your code archaeology hat, you’ll probably conclude that a guard condition once existed. Someone deleted that guard condition but didn’t think to update the now-nonsensical comment. Oops.

Oops, indeed! Comments, unlike code, are not checked at edit time (unless you’re writing doc-comments, discussed later) or at compile-time or at runtime. You cannot lint your comments. You cannot unit test your comments. In other words, there are no safeguards. Thus, whether you are dealing with good comments or evil comments, you should strive to minimize them so they do not become stale or downright misleading, as in the above example.

Many developers do not like to write documentation of any sort, and that includes comments. (For a good list of excuses reasons, see Why programmers don’t comment their code. But commenting too little (or not at all) is just as bad as commenting too much. As I and many others have stated, comments are often necessary but try to keep them to a minimum.

How Evil is your comment? Fighting evil in code comments.

In ELMG Digital Power Polls most people answer that most of their comments are a description of what or how the code does or works (56%) and repeating the code (75%) and no one (0%) respond that their comments are why the code is the way it is. And this is pretty much exactly the opposite of good or best practice using the “evil scale” in the diagram below.

Fighting evil in code comments
Fighting evil in code comments

Check out the article. It is worth a look to make comments more mindful and less evil.