# External functions

**URL:** <https://forum.inductiveautomation.com/t/external-functions/2418>\
**Category:** Ignition\
**Created:** [December 11, 2010, 12:34pm UTC](https://forum.inductiveautomation.com/t/external-functions/2418 "2010-12-11T12:34:45Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![daneshy](https://avatars.discourse-cdn.com/v4/letter/d/b487fb/32.png) [@daneshy](https://forum.inductiveautomation.com/u/daneshy)\
**Post date:** [December 11, 2010, 12:34pm UTC](https://forum.inductiveautomation.com/t/external-functions/2418/1 "2010-12-11T12:34:45Z")

</div>

Dear Experts,  
Can use any DLL in or any C++ or python function in ignation? I would use some analytical function with real time data.

Regards,  
Mohammad Javad Danesh

---

<div class="post-metadata">

**Author:** ![Carl.Gould](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/carl.gould/32/7262_2.png) [@Carl.Gould](https://forum.inductiveautomation.com/u/Carl.Gould)\
**Post date:** [December 14, 2010, 1:53am UTC](https://forum.inductiveautomation.com/t/external-functions/2418/2 "2010-12-14T01:53:29Z")

</div>

No, platform-specific libraries can’t be imported on the fly. The reason is the underlying system is written in Java, which is cross-platform. DLLs have to be brought it via a JNI wrapper. You could do this if you wanted to become a module author, but fair warning: its pretty technical.

---

<div class="post-metadata">

**Author:** ![daneshy](https://avatars.discourse-cdn.com/v4/letter/d/b487fb/32.png) [@daneshy](https://forum.inductiveautomation.com/u/daneshy)\
**Post date:** [December 27, 2010, 9:17pm UTC](https://forum.inductiveautomation.com/t/external-functions/2418/3 "2010-12-27T21:17:44Z")

</div>

Ok, could I run any python code of scripts directly in Ignition?  
Thanks in advance,

---

<div class="post-metadata">

**Author:** ![Travis.Cox](https://avatars.discourse-cdn.com/v4/letter/t/b9bd4f/32.png) [@Travis.Cox](https://forum.inductiveautomation.com/u/Travis.Cox)\
**Post date:** [December 27, 2010, 11:39pm UTC](https://forum.inductiveautomation.com/t/external-functions/2418/4 "2010-12-27T23:39:05Z")

</div>

You can run any Python code that doesn’t require platform-specific libraries. However, you can call external Python scripts using the system.util.execute scripting function.

---

<div class="post-metadata">

**Author:** ![nathan](https://avatars.discourse-cdn.com/v4/letter/n/c5a1d2/32.png) [@nathan](https://forum.inductiveautomation.com/u/nathan)\
**Post date:** [December 28, 2010, 3:20am UTC](https://forum.inductiveautomation.com/t/external-functions/2418/5 "2010-12-28T03:20:25Z")

</div>

Ignition currently runs Python version 2.1

---

<div class="post-metadata">

**Author:** ![f\_jons](https://avatars.discourse-cdn.com/v4/letter/f/9fc29f/32.png) [@f\_jons](https://forum.inductiveautomation.com/u/f_jons)\
**Post date:** [December 28, 2010, 2:56pm UTC](https://forum.inductiveautomation.com/t/external-functions/2418/6 "2010-12-28T14:56:59Z")

</div>

Are there any plans on upgrading the version of Python anytime soon?

---

<div class="post-metadata">

**Author:** ![daneshy](https://avatars.discourse-cdn.com/v4/letter/d/b487fb/32.png) [@daneshy](https://forum.inductiveautomation.com/u/daneshy)\
**Post date:** [December 28, 2010, 7:12pm UTC](https://forum.inductiveautomation.com/t/external-functions/2418/7 "2010-12-28T19:12:19Z")

</div>

I want to run numpy that requires python 2.6 and am I could install new modules?, how do I do?

---

<div class="post-metadata">

**Author:** ![Carl.Gould](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/carl.gould/32/7262_2.png) [@Carl.Gould](https://forum.inductiveautomation.com/u/Carl.Gould)\
**Post date:** [January 2, 2011, 12:06am UTC](https://forum.inductiveautomation.com/t/external-functions/2418/8 "2011-01-02T00:06:56Z")

</div>

We have plans to upgrade the version of Python that we use in Ignition, but not in the immediate future. Its a bit of a backwards compatibility nightmare.

You can “import” your own modules by copying them into a project’s global script module. You may have to massage the script a bit to get it to work correctly.
