LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

CVI For Linux

//----------------------------------------------------
I'm really impressed by the number of messages in this
thread about Linux and CVI so I would like to share some of my concerns.

Indeed, instead of saying "Yes I need it, I love it, I
want it..." I would like to submit some ideas and
facts.

I hope people will react to this message and bring more
feedback that will help the CVI team to take a decision
and let us know about it.

Below you will see 3 sections :
Some facts
Some points about the CVI community
Some ideas about market, money etc.
My roadmap

See U all @ NI Week, Philippe
Feel free to visit :
http://perso.wanadoo.fr/philippe.baucour/


//----------------------------------------------------
Some facts

Most Linux applications now are Web and Server related.
There is no discussion about the fact Linux leads the
Web Server "market"

Yes, Windows NT/2000/XP are stables.

Yes recent Linux distribution are easy to install /
configure / use. See press reports about the latest
version of Red Hat, Suse, Madrake

Yes the main advantage of Windows is that there are all
the same on all the stations. This may not be the case
with Linux since every vendor developp its own package
using different revision of the different packages. Ok,
you may want to discuss this point but honnestly, read
the magazines and admit they have to take care about
the packages they include in their CD and/or carrefully
explain how to install the software they provide.

In Europe many administrations have to move to Linux.
This is not only true in Germany (see
http://www.eweek.com/article2/0,3959,1110809,00.asp),
this is also true in France, in Belgium etc. The main
reason is that governments claims they do not want to
rely on commercial/closed software but would prefer if
their administration could use Open Source solution
just to be able to "look in" if needed. I suppose they
are also some stories about software independance
behind the scene. I'm quite suspicious about all these
arguments because when you realise that most of the
fighter planes in Europe are coming from US I do not
really understand were is the independance. I guess all
this is trully related to the price of the license and
cost of maintenance. Anyway, the point is that more and
more people in the administration will be using Linux
in Europe. In the short run (one or two years), this
mean less and less people will be "afraid" about using
Linux

In the universities more and more professors teaches
programming languages under Linux. Here too the main
reason is money. Cost of licences cost of maintenance
etc. For example, academic budget are flat actually but
the number of students is still growing. This means
teachers need to do more with the same amount of money
and so, mechanically, they look at the Linux
alternative. On the other hand, the point is that
teaching C, C++, Java under Linux is almost free
because most of the tools are free as well. The point
is : more and more students will want to continue
working under what they know : Linux (if you are a
teacher please confirm/infirm what I say above)

Yes, this is a shame to see a student learning Make
tool, reading the How To and the man pages about gcc
before to be able to compile and run the famous :
printf("Hello World\n"); On the other hand, we all know
getting started with CVI (even in order to write our
very first console based application) is a piece of
cake. From the teacher point of view, using CVI make
much more sense than gcc because the student does not
learn anything valuable when figthing with Make while
he learn a lot studying the printf function (it is an
example). Let's take another example, and let's talks
about memory leak and debugging. What is the most
student oriented product ? Gdb or CVI ? Be honest,
using gdb is a nightmare while CVI really help the
student to focus on solving problems. The point is :
since CVI is a C compiler for creating industrial
applications it is very efficient in helping the
developpers on focusing on what is important... and
this is exactly what the students need. However, if
more and more students move to Linux we may ask ourself
if having CVI only under Windows is a good strategy.

Yes, there are some projects (bigs and smalls) where
Linux is choosen as the OS. In big projects this is
mainly because the system architect want to have access
to the source code and also because he needs to reduce
the cost per station. Another reason may also be the
fact that since Linux is available on tons of
plateforms then having Linux on all kind of station
(embedded calculator, PDA, T&M worbench, Front end
station, monitoring station etc.) will provide
consistency. On small projects sometimes this is
because people want stability (bad argument) but also
because they want to reuse some Unix code they have and
leverage the experience of some developpers. Here too
the cost per station (mainly the cost of maintnance)
may be an argument.

No, there is no DAQ support under Linux (this is not
only true for LabVIEW but also for all NI programming
environments, CVI included). Yes, there are GPIB,
Serial, VXI driver but no DAQ yet and this can be an
issue for most of us. On the other hand there is a
Comedi (see http://www.comedi.org/) driver that can
help. Do not forget there is a free DDK from NI that
could help also.

//-----------------------------------------------------
Some points about the CVI users :

I guess we have to clearly say what we want to the CVI
team. My understanding is that there are 3 points that
could caracterize the members of the CVI comunity .

0/ We all want C. We did'nt jump into the MFC train
because it was too complex and we had no time to learn
it (sure we had industrial projects to deliver on
time!). We all want an easy to use C environnment, we
appreciate the efficiency of the UIR paradigm, and we
all enjoy to work with the function panels. Concerning
the last point I mean : we appreciate the fact that we
do not have to read the SDK help file before to type in
a line of code but instead, we really enjoy to have, at
our finger tips, a set of organized classes of
functions with documentation etc. I don't even talk
about the instrument driver. This is obvious.

1/ One part of the CVI community wants CVI continues to
do what it does. However they would like to see CVI
closer to Windows. The idea behind this is to have a
faster UIR, faster C code (optimized CVI), see more
Windows native controls in the UIR, see CVI integrate
more Windows technologies more rapidly. The last point
could be : simplify the CVI team job.

2/ The second part of the community wants CVI continues
to do what it does. However, they want to be able to
deliver their applications on various targets. To name
some : Sun, RT, RTX, Linux, QNX, PDA... The point is
that they are convinced by CVI, they push hard in order
their company standardize on CVI but, it is hard to go
further because up to now CVI seems "glued" to Windows.

If you not agree on this please reply. However if you
agree, I guess it make sens to replay as well and
explainthe resons why you belong to category 1 or 2.

//----------------------------------------------------
Some ideas about market, money etc.

Should NI release (and maintain) CVI on Linux because
it is fun ? No

Should NI release (and maintain) CVI on Linux because
it is cool ? No

Ok I guess you get what I have in mind. Indeed, in my
point of view, NI should and will release (and
maintain) CVI under Linux if and only if there is a
strategic need and/or some business to get.

I suppose all our feedback about Linux should, one way
or another, help the team to evaluate/rank the Linux
priority. Here too, in order to simplify, I propose 2
main category of feedback.

Strategic : this include feedback about academic
initiatives (CVI for students etc...), feedback about
teaching choice, info about why it make sens CVI to be
the first C T&M IDE available on Linux...

Business : this include information about projects to
come which will use Linux, hardware business
opportunity relying on CVI under Linux etc.

//----------------------------------------------------
My roadmap

Yes, it make sens to have CVI under Linux but it makes
much more sense to go step by step

Before NI Week, send an E mail the the CVI user saying
: go to ni.com/cvi and fill the form if you are
interrested in CVI under Linux.

On the ni.com/cvi make a form that people could use to
claim "Yes I want CVI under Linux and here are some of
the reasons why" (the "reason field on the form should
be mandatory !)

During NI Week, make sure Linux subjects is covered in
all the CVI sessions.

Release the next version of CVI Take a break (I guess
the CVI team will need one after the release...)

Do what the CVI team already did for the HP stations. I
mean make a port of the CVI lib under Linux (only the
lib). Porting the lib should not be that hard since it
has been already done in order to compile some VXI
tools available under Linux. Oh yes, a document
(Release note) may need to be written about the options
to use with Make...

Let people know about the avaibility of the lib under
Linux with the help of a message on ni.com/cvi and an
emailing to the CVI community.

Put the Linux CVI libs available for free download on
the web site and let the people download them after
they fill a web form. Before people download anything,
let people know there is no support (except in this
forum) and no insurance NI will officially port the
libs to Linux one day

See what happens and measure the effect

If one day there is a port of NI DAQ under Linux and if
the demand for CVI IDE under Linux is still growing
then make sure CVI under Linux get released when NIDAQ
for Linux get released as well.

Again, if you do not agree with this roadmap (if you want to go faster, if you want it more aggressive) please feel free to reply.
Message 11 of 15
(2,244 Views)
Well Said! I think a survey would be an excellent idea!
Jattie van der Linde
Engineering Manager, Software & Automation
TEL Magnetic Solutions Ltd
0 Kudos
Message 12 of 15
(2,244 Views)
We are also very interested in porting some of our existing applications
from Windows to (real-time) Linux.

Roel Smeets

Department of Applied Physics
Eindhoven University of Technology
Eindhoven
The Netherlands
0 Kudos
Message 13 of 15
(2,244 Views)
Some ideas suggested by Philippe's message.


About "Some facts"

I'm not so familiar with academic world. It seems reasonable what he says about university balances and budgets, and the consequent growth of a generation of "Linux addicts", but it must be taken into account the investment our customers have made under Windows environment, and the correlate costs in moving to other environments.

For what I saw in my customer's plants, obviously non representative of the universe, this inertia is very high: should be this true, the transition to Linux is not so near in time.


Aboute "Some points about the CVI users"

0/ I agree (who could say "no" to this assertion, especially for what concerns easiness in use?)

For the rest, I suppose
I belong to category 1, but I'm a little afraid of Windows.
My personal attitude is not to use very complicated controls: I tend to develop friendly applications for the user... and for me too! I do prefer limiting myself to use native CVI controls instead of running the risk of shipping an unstable application due to the use of too complex controls for me to know exactly ALL they do an how to manage them. That is to say: ok to the integration of windows controls but not at the cost of dozens of hours of study just to use them.
In second instance, the speed of update of Windows pains me: the risk is that after learning how to use some tool, it is no more up to date and I need to start over again on another.


As a result, I agree for the need of a survey between CVI users and developers.


Last but not least, looking at the interest that this subject has generated, I think the DE team should move it into the "Featured topics" of this forum.


Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Message 14 of 15
(2,243 Views)
Hello everyone,
 
I know this thread has been going on for a few years now, but I wanted to update whoever is interested in the latest LabWindows/CVI modules that we've released to try to address your multiplatform support needs:
 
So we now have a Real-Time Module, which allows you to develop LabWindows/CVI apps on a Windows machine and run on a real-time PXI or PC target.
Also, to partly address the main subject of this thread, in August, we released the Run-Time Module for Linux, which similarly allows you to develop on a Windows machine as you always have with CVI, and then run your application on various Linux distributions.
 
That's a brief overview of the latest modules, but if you want more information on what hardware is supported and also a more in-depth discussion on the module, take a look at the following resources:
Real-Time Module: www.ni.com/lwcvi/realtime
 
Thanks.
Wendy L
LabWindows/CVI Developer Newsletter
0 Kudos
Message 15 of 15
(2,142 Views)