3 Replies Latest reply on Oct 5, 2016 12:44 PM by Intel Corporation

    How to select Software tools for Edison

    JamesLeo

      Hi,

      I'm confused with Edison's software tools: XDS, System Studio, Arduino, MCU sdk....

      I think, Arduino is simple to use, but not realtime -- has no interrupt (except IO) ....

      Is it possible to combine the tools to develop an application with WiFi (server/client),BLE and realtime interface to external devices....?

      Can the XDS's excutable bins call the one of System Studio.

      Can Node.js call C++,Java,Python...?

      The target application varies, which software tools can cover it ?

       

      Wish your suggestion

       

      Thanks

       

      James

        • 1. Re: How to select Software tools for Edison
          Intel Corporation
          This message was posted on behalf of Intel Corporation

          Hello James,

          I will try to help you with this. The tool you choose will vary on your needs, nevertheless, you have to keep in mind that Edison runs embedded Linux and therefore it is not an RTOS, what this means is that there is no real time on Edison unless you use the MCU (I will explain this better below).

          Regardless of the IDE you use (Arduino, XDK, System Studio ***with the exception of the MCU SDK), you can use system calls to call other processes. For example, you could start a JavaScript code that you was written using the XDK from a C++ script that you wrote on System Studio.

          So, the main difference between the IDEs are the programming languages available on each of them. For example, the Arduino IDE is used to program Arduino sketches, System Studio is used for C, C++ and Java and the XDK is used for Node.js.

          This does not mean that those are the only programming languages available on Edison, as I mentioned above, the board runs an embedded version of Linux, this means that every language compatible with its kernel (3.10.98) and hardware is compatible with Edison. So, you have access to languages such as Python, C# among others. The main difference would be that they need to be compiled directly on the Linux terminal unlike C, C++, Java and Node.js which can be compiled on either their respective IDEs or directly on the terminal.

          As I mentioned, the MCU SDK is different than the other IDEs, the reason for this is that the code you program in here will not run on Edison's processor but instead on its MCU, this is to provide Edison with real time capabilities. In case you are interested on learning more about Edison's MCU I suggest you to read the following document: https://software.intel.com/en-us/creating-applications-with-mcu-sdk-for-intel-edison-board.

          I hope this information is helpful.
          -Peter.

          • 2. Re: How to select Software tools for Edison
            JamesLeo

            Thanks,Peter.

            Is there any document for mixed-language programming for Edison?

            • 3. Re: How to select Software tools for Edison
              Intel Corporation
              This message was posted on behalf of Intel Corporation

              Unfortunately, there is no much information about this as this is a more general matter of working with Linux. Nevertheless, there is a very good document written by Matthias Hahn that talks about how to communicate the Edison's Arduino interface with Linux native processes. The document can be found in https://software.intel.com/en-us/blogs/2014/09/22/efficient-communication-between-arduino-and-linux-native-processes.

              I hope this helps.
              -Peter.