03-11-2022 08:02 AM
Hello, while it seems main contributers of DCAF development have retired from NI, does NI still plan to actively maintain or develop DCAF in future?
Is DCAF still recommended for new projects as of 2022?
I guess DCAF could have been a great differentiator for cRIO and NI RT products, if it had been better advertised. I feel so sorry NI decided not to keep this project anymore.
Solved! Go to Solution.
03-11-2022 08:30 AM
Hi UMASO,
We're here 🙂 I sit ~20 feet from one of the key R&D developers who worked on it, and I work daily with one of the main DCAF creator on various HIL projects.
Best,
Andrew
03-11-2022 08:34 AM
Why then does the github page for DCAF not have any activity on it basically since 2019?
03-11-2022 09:39 AM
Hi brindle,
DCAF is considered stable, released, and primary efforts are for support. NI had significant internal use and iteration on the DCAF engine before it was officially turned into a product, so while it might look like it was released and is now silent, a lot of the early churn that products go through happened while it was still internal.
If you find blocking issues, the community is here and can help debug and if it ends up being a DCAF bug it can be filed on the respective GitHub project. As mentioned here, DCAF is a community open source project and anyone can contribute, and I'm personally proud of how many non-NI-DCAF members have 🙂
Have a good weekend,
Andrew
03-11-2022 10:56 AM
Hi Brindle,
I am the DCAF developer A-clucker mentioned. Sorry for the delay in the reply but was getting things cleared internally on where NI is currently standing on DCAF.
The short answer is NI is not going to accept any new pull requests or publish NI packages. I am no longer in the group that was in charge of DCAF and without getting into details there is no internal group owning it at the moment. DCAF is no longer officially supported by NI (this is a new policy from last week). No new updates or pull requests will get accepted and NI will not publish any packages. If you see movement in the repos that would probably be me or community people but we are not doing it from NI. I would be happy to have DCAF maintained by the community, and I am looking into the way to make this happen.
Now as Andrew Tucker mentioned we do keep using it internally, it's a solid framework, it can be used as-is and there are multiple projects that use it. It can help create a deterministic application that requires a configurable mapping engine really fast and all is open source. There is documentation and training materials. You can clone the repos and make updates by yourself. Also, it is a really good example of how to do RT software so even if you don't use the code as-is, it can give you an example of how to do things.
If you have any questions let me know.
Best Regards
03-14-2022 08:18 AM
Hello Benjamin, thanks a lot for the clear answers. It is a bit worrying to keep using DCAF, because it will not be maintained anymore, while LabVIEW and other functionalities such as FPGA, TDMS, HW drivers may be updated in future.
By the way, why on earth did NI decide not to officially support DCAF anymore?
DCAF is a great framework which makes LabVIEW a unique development environment for Real-Time system with the combination of NI's RT controllers. Does NI plan any new framework which replaces DCAF?
Also, does anyone have an idea to update Tag Bus with Map and Collection VIs?
Regards,
04-07-2022 10:27 AM
I completely agree with this general thought regarding abandoning something good/great for projects such as DCAF.
There is a significant gap between concept and safe, functional, and best-practiced implementation without an officially supported framework such as DCAF. Recently had a conversation with NI and they basically said to build one ourselves which is a pretty poor answer for a common thing that DCAF can do so well. Having the ability to build from the ground is great, but it is a massive lift and most definitely will be built incorrectly the first time. There become other competitive solutions and products that start to look really attractive as they get better and close their gap on user-friendliness.
04-07-2022 11:10 AM
All,
I have been watching this thread with some interest. I understand some of you may be looking for an alternative to DCAF that is commercially supported, so I wanted to just point out Signal.X Technologies has developed our STAX Automation Technology with a similar objective to DCAF - real-time embedded automation and control. It is not a drop-in replacement for DCAF, and may not work for everyone. However, it may be worth looking at - you can check out the product page here - https://signalxtech.com/software/stax/.
You can look at some of the applications, and there is a training video at the bottom of the page which walks you through the interface. Feel free to contact us through the web site or email us at info@signalxtech.com for more information.
Rob
04-08-2022 12:13 AM
@rhenderson wrote:I completely agree with this general thought regarding abandoning something good/great for projects such as DCAF.
There is a significant gap between concept and safe, functional, and best-practiced implementation without an officially supported framework such as DCAF. Recently had a conversation with NI and they basically said to build one ourselves which is a pretty poor answer for a common thing that DCAF can do so well. Having the ability to build from the ground is great, but it is a massive lift and most definitely will be built incorrectly the first time. There become other competitive solutions and products that start to look really attractive as they get better and close their gap on user-friendliness.
I agree with your comment and what the points about DCAF in your comment sound almost the same as the introduction of DCAF. That means NI seems to have set lower priority to build and maintain such a framework for general LabVIEW Real-TIme users. Rather, they seem to focus on more application-specific framework such as VeriStand, FlexLogger, etc.
02-27-2023 11:10 PM
Last week, I have had a project finished last week for which I once considered using DCAF.
First of all, the system ended up NOT being based on DCAF, but just based on a regular cRIO Sample Project. The reason is that I had some problems using DCAF.
I know DCAF is an open framework, so, I could have customized anything I want or I had troubles with, but my comments here are all based on "no custom and just use DCAF and DCAF plug-ins as-is"
Let me jot down some notes about DCAF experiences I had, so that any other users will not waste some time.
Belows are some main application requirements
Belows are the problems using DCAF and DCAF plug-ins as-is.
Please forgive me that following notes are not so concrete and I do not have time to organize information and post on Github for bug fixes. If DCAF is an active project, I would have done so.