UD+ a new Universal Driver (now with Freewheeling)

Phillip Slawinski, Wed Nov 30 2016, 03:56AM

Steve Ward and I have created a new UD ... I call it the UD+ This is actually a rather old project. Steve finished his part (Schematic) back in 2013. I did the layout back then, but never got around to doing anything with the boards after they were ordered. It wasn't very interesting considering I had access to the UD3. I decided to dig up the project two weeks ago, so I started writing VHDL, and now it's working.

Features:


9491874182 33c05978ec Z
This image is just to give an idea of what the board will look like. The board would be respun to fix errors in the first run, and update some things since it's been three years since this was made. The board that I assembled is super ugly because I had to do some kludge fixes to get it going, all that will be fixed, of course.

Here's a crappy video I made to demo the freewheeling:


I'm posting this here to see if anybody is interested in having one of these drivers. I'm thinking I'd probably sell boards with programmed CPLDs (or if you want to get your own programmer I'll make the VHDL available.)

So if there is any interest in this thing, I'll re-spin it and print boards. If not ... at least it was a fun project for a week.
Re: UD+ a new Universal Driver (now with Freewheeling)
Kizmo, Wed Nov 30 2016, 07:04AM

Count me in as usual :)
Re: UD+ a new Universal Driver (now with Freewheeling)
Hydron, Wed Nov 30 2016, 08:19AM

Hi Phillip,

If you're willing to share the schematic/VHDL (especially the latter) then that would be extremely useful to me. I'm in the middle of hacking up an existing controller board to add some programmable logic to it (right now a FPGA on a dev board, but probably going to be a CPLD if I lay out a custom PCB for my coil) and would be great to have some working reference code to get started with.

This is a great project for the community; it's been pretty obvious for a while that the UD2.x type driver would be much more flexible with the addition of programmable logic, even if it brings the pain of needing a programmer. I actually drew up a quick hack way in another thread Link2 recently to add freewheeling to a UD2.x, but with another 4 logic chips it's not an elegant solution, hence why I was going to go the programmable logic route myself.
Re: UD+ a new Universal Driver (now with Freewheeling)
Phillip Slawinski, Wed Nov 30 2016, 01:28PM

Hydron wrote ...

Hi Phillip,

If you're willing to share the schematic/VHDL (especially the latter) then that would be extremely useful to me. I'm in the middle of hacking up an existing controller board to add some programmable logic to it (right now a FPGA on a dev board, but probably going to be a CPLD if I lay out a custom PCB for my coil) and would be great to have some working reference code to get started with.

This is a great project for the community; it's been pretty obvious for a while that the UD2.x type driver would be much more flexible with the addition of programmable logic, even if it brings the pain of needing a programmer. I actually drew up a quick hack way in another thread Link2 recently to add freewheeling to a UD2.x, but with another 4 logic chips it's not an elegant solution, hence why I was going to go the programmable logic route myself.

Hydron,

Your post is what reminded me of the board I had done. smile

I'll be putting the whole project on GitHub once it's ready. The PCB project was done in Altium (not Eagle, sorry.) Hopefully the PCB will not be needing much change. And because the board has a CPLD, the logic can be changed quite easily with a programmer.

PM me your e-mail address if you'd like an advance copy of the VHDL. If you'd like the schematic I'll happily send that along as well, but it's really quite similar to the UD2, all the "magic" is in that little CPLD.

I'm sure you know this, but it's probably best to avoid FPGA for the final board for the reason that FPGAs generally require some initialization after power on, whereas with a CPLD the configuration is stable from power up.
Re: UD+ a new Universal Driver (now with Freewheeling)
Hydron, Wed Nov 30 2016, 01:35PM

Phillip Slawinski wrote ...

The PCB project was done in Altium (not Eagle, sorry.)
This makes me very happy, altium user myself (already converted UD2.5 from Eagle once to customise it for my own use, was not pretty!)

I agree that for something like this a CPLD is more suitable, I just happen to have a lattice MachXO2 dev board handy.

Will PM email address now.
Re: UD+ a new Universal Driver (now with Freewheeling)
Finn Hammer, Thu Dec 01 2016, 06:36AM

Allthough I am working, with the left hand, on applying Hydrons UD2.7 pulse skipping mod, and feel compelled to finish it, I am also interested in supporting these new boards.
Put me up for a couple.

Cheers, Finn Hammer
Re: UD+ a new Universal Driver (now with Freewheeling)
Hydron, Thu Dec 01 2016, 10:30AM

I think it's good for people to be trying it both ways.

The CPLD solution that Phillip is working on is the most elegant way to go, but if the discrete logic method also works then I think it would be good to have both options, as some people may find it hard or expensive to get a CPLD and/or programmer.
Re: UD+ a new Universal Driver (now with Freewheeling)
Phillip Slawinski, Thu Dec 01 2016, 02:30PM

Hydron wrote ...

I think it's good for people to be trying it both ways.

The CPLD solution that Phillip is working on is the most elegant way to go, but if the discrete logic method also works then I think it would be good to have both options, as some people may find it hard or expensive to get a CPLD and/or programmer.

Agreed. It is nice to have both versions. Using the discrete logic chips means that you "program" the board with a soldering iron, so it's ready to go as soon as it's assembled. On the other hand, while the CPLD adds another step, it affords far greater flexibility. You can make the board to do something completely different by simply changing the programming of the CPLD.

For the initial offering I'm going to try and offer programmed CPLDs to people who want them. I already have a TQFP44 ZIF socket, which hopefully I can wire up to program the CPLD without having to install it on the board. If not, I can just solder the CPLD to the board and provide power via the programming cable.
Re: UD+ a new Universal Driver (now with Freewheeling)
Thomas W, Thu Dec 01 2016, 07:44PM

Nice work here! :)

If you use an Altera CPLD, the programmer can be brought on Ebay for a few pounds / dollars. MAX V series are nice, cheap as... well, chips!
Re: UD+ a new Universal Driver (now with Freewheeling)
Phillip Slawinski, Wed Dec 07 2016, 04:52AM

So the re-spin is pretty much done now. Just a few little things to wrap up. Here's what the new board looks like.

31258900612 Fb707f932f B

31288354541 68b4b34d3c B

Most of the changes are power related. I've replaced the LDOs for 3.3V and 5V with switching supplies. I've changed the 24V regulator to a D2PAK, and added load options for DC input (with polarity protection).

I also have made a "special" footprint for the inductor. I still have a few of the "OG" inductors that Steve spec'd for the UD2.0 waaaay back in 2009, and I don't have any desire to get the new slot 7. That said, I had a request to accommodate the slot 7, so I've made a sort of compromise. The inductor slots are sized to accommodate the pin receptacles used on the UD2.7.

This board is designed to work with XC2C64A CPLD, instead of the XC9572XL. Also ... I have testpoints peppered all over the board, so debugging should be a little easier.

I think I'll probably have boards printed in a week or two. If there are any suggestions, let me know.
Re: UD+ a new Universal Driver (now with Freewheeling)
Alex Yuan, Thu Dec 08 2016, 01:18AM

Count me in too!
Re: UD+ a new Universal Driver (now with Freewheeling)
Phillip Slawinski, Tue Dec 13 2016, 04:52AM

So I've completed the re-spin, and boards will be on their way shortly.

31237776890 190163a2aa C
Angle View

31237777120 D63a8e234b C
Top

31237777390 85d14a34d0 C
Bottom

I put test points on just about everything I could think of. Hopefully all those test points scare the bugs away! I changed some parts so that the board can be ordered in it's entirety from Digikey, and all but the CPLD can be ordered from Mouser. Also, I fixed some old layout errors, and spread components out so that the board should be a little easier to assemble.
Re: UD+ a new Universal Driver (now with Freewheeling)
Phillip Slawinski, Fri Dec 23 2016, 05:01AM

Boards arrived, and I assembled the first V1.1. It works, of course. tongue

Here are some photos of the assembled board. I tried some new FETs out for the gate drive. They're about half the price of the fairchild FETs used on the UD2. They work fine, but they have a slightly different footprint, so they don't fit perfectly on the board. Also, you might notice that there are a lot of test points on the board. For a typically assembly the number of test points would be far lower (even zero is okay). I have this board assembled for DC input.

Click on the image for full size (36MP)
31815625585 Ed7475085a C

31668304872 Bb31d671dc C

I ordred 25 of these boards. If you'd like one, let me know.
Re: UD+ a new Universal Driver (now with Freewheeling)
Hydron, Sun Dec 25 2016, 01:20PM

Looks fantastic!

BTW I got a (rather hacked up) version of your code running my driver, however I ran into noise issues at GDT switching transitions, probably not a big surprise given the FPGA was connected via flying leads!

I'll be doing some more work on my own design over the holiday period, but many thanks for the good starting point, and getting a PLD based driver design out there for people to use.
Re: UD+ a new Universal Driver (now with Freewheeling)
Finn Hammer, Sat Dec 31 2016, 03:40PM

Phillip,

Sent PM

Happy Hollidays!
Re: UD+ a new Universal Driver (now with Freewheeling)
Phillip Slawinski, Thu Jan 26 2017, 02:30PM

I have added a page on my newly restyled website for the UD+.

Link2

There is a price list at the bottom of the page. The page also includes a lot of useful information about using the board. Effectively that page is the manual for the board.

PS ... if you want to purchase one of these boards, please contact me via my e-mail (listed at the bottom of the page I linked to).