IoT & Connectivity Tips | ThingWorx & Kepware PTC
Recently active
The .NET Framework versions 3.5 and 4.5 are required external dependencies. The ThingWorx Manufacturing Apps installer will prompt you to install these.For more information on the System requirements and External dependencies, see: Not authorized to view the specified document 3992If you are a previous ThingWorx user, and are not using the full ThingWorx Manufacturing Apps installer, you will need to add these framework versions to the Windows operating system. An installer is available from the PTC App store for this purpose, or this can be done manually by following the instructions below. Note: both the .NET 3.5 and .NET 4.5 Frameworks are required. Do not install the .NET 3.5 Framework alone.Manually add the .NET 3.5/4.5 Framework to Windows:1. Open the Windows Control Panel | select Programs and Features.2. Select the option to "Turn Windows features on or off"3. In Windows 7 (or other Standard editions), you can select the .NET framework from the list and follow the steps for ins
The ThingWorx Manufacturing Apps 8.0.1 are tested and supported for use with ThingWorx 8.0.1.The ThingWorx Manufacturing Apps 8.1.0 are tested and supported for use with ThingWorx 8.1.0.
Platform SupportWindows Server 2008 R2 SP1, Windows 2012 R2, and Cent OS 7.1 (paid version only) are recommended and fully tested for production.Server Support• KEPServerEX v6.2, which includes the ThingWorx Native Interface.Note: Non-Kepware OPC Servers servers and earlier versions of KEPServerEX can be connected to KEPServerEX v6.2, functioning as an aggregator (OPC UA Server). KEPServerEX and ThingWorx can be installed on the same machine. However-- for production-- separate machines are recommended.• ThingWorx 8.0 with PostgresSQL 9.4.10-1 database, Express• ThingWorx 8.0, with the ThingWorx Manufacturing Apps imported as a ThingWorx extensionMinimum recommended hardware• OS — Windows 2008R2• SP1 / Windows 2012R2• Disk Space — 100 GB• RAM — 7 GB• CPU — 3 CoreClient Browser Support - Paid Version• Chrome 44• Firefox 35+• Safari 6.1.6+• Internet Explorer 11+For more information on the installation requirements, see the Product Requirements section of the install guide here: Not autho
KEPServerEX requires the 32-bit version of Java if you are using the IoT Gateway Plug-in. If you do not have the 32-bit version installed and attempt to connect the IoT Gateway, the KEPServerEX Event Log will report the following error: “IoT Gateway failed to start, 32-bit JRE required." Some of the Manufacturing Applications training content relies on this Plug-in, as well. As a best practice, it is recommended that both the 32-bit and 64-bit versions of Java be installed.This install is available for download from the Oracle website, here:Java SE Runtime Environment 8 - Downloads
Users can install ThingWorx and KEPServerEX on the same PC or server. It is recommended to install KEPServerEX prior to installing ThingWorx in this case.For more information, see: Do I need to uninstall ThingWorx before installing KEPServerEX?
Many users of our software have submitted cases regarding the Third-Party Components and their functions within ThingWorx Analytics. This short blog post will provide the main components used by our software and explain their functionality. ThingWorx Analytics uses the following components in its default installation: Apache ZooKeeper ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services ThingWorx Analytics uses ZooKeeper as the gatekeeper to API calls and processes to the Application Component Homepage: https://zookeeper.apache.org/ Apache Tomcat Apache Tomcat software is an open source implementation of the Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket technologies ThingWorx Analytics uses Tomcat to handle webservices and API communications This enables the use of ThingWorx Foundation (Core) mashups with ThingWorx Analytics Server Co
/* Define a DataShape used in an InfoTable Parameter for this service call */twDataShape* sampleInfoTableAsParameterDs = twDataShape_Create(twDataShapeEntry_Create("ColumnA",NO_DESCRIPTION,TW_STRING)); twDataShape_AddEntry(sampleInfoTableAsParameterDs,twDataShapeEntry_Create("ColumnB",NO_DESCRIPTION,TW_NUMBER)); twDataShape_AddEntry(sampleInfoTableAsParameterDs,twDataShapeEntry_Create("ColumnC",NO_DESCRIPTION,TW_BOOLEAN)); twDataShape_SetName(sampleInfoTableAsParameterDs,"SampleInfoTableAsParameterDataShape"); /* Define Input Parameter that is an InfoTable of Shape SampleInfoTableAsParameterDataShape */twDataShapeEntry* infoTableDsEntry = twDataShapeEntry_Create("itParam",NULL,TW_INFOTABLE); twDataShapeEntry_AddAspect(infoTableDsEntry, "dataShape", twPrimitive_CreateFromString("SampleInfoTableAsParameterDataShape", TRUE)); twDataShape* inputParametersDefinitionDs = twDataShape_Create(infoTableDsEntry); /* Register remote function */twApi_Register
Please open your ApplicationLog located in ThingworxStorage/logs and inspect for errors. Something like the following might be observed:**********LICENSING ERROR ANALYSIS2017-03-31 16:29:19.591+0300 [L: ERROR] [O: ] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] C:\WINDOWS\Sun\Java\bin is listed as a java.library.path but it does not exist2017-04-12 13:51:53.515+0200 [L: ERROR] [O: c.t.s.s.l.LicensingSubsystem] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] Failed to load FlxCore library. Ensure it's in PATH (Windows) or LD_LIBRARY_PATH(other platforms) or set with the VM arg, -Djava.library.path. Error message : com.flexnet.licensing.DllEntryPoint.entry([B)Typically, if the license file has been downloaded and placed correcrtly, according to the 7.4 installation guide, the error in the log will specify where the file was found. If the license path was specified per the installation guide in the tomcat java path, you may try to clear it from the Tomcat java settings and k
Hello! I have just written a tutorial on how to set up Lua to be run from the command line. As many already know, there is no good way to debug Lua scripts as they are used in package deployment in Software Content Manager, and building such a debugger is a vast and difficult undertaking. As an alternative, running small portions of code in the command line to ensure they will work as expected is one way to verify the validity of the Lua syntax prior to attempting a deployment. Here are the steps to set up Lua as a command line tool: Grab the GCC compiler called TDM-GCC Run the exe file and follow the install instructions Remember the install directory for this, as the attached install script will need to be configured in a later step Default location in the install file is "C:\Program Files\TDM-GCC\" Note: leaving the "Add to PATH" selected will allow you to compile C code on the command line as well by typing "gcc" (this is not required for this set-up) Download the Lua so
Hi everyone,As everyone knows already, the main way to define Properties inside the EMS Java SDK is to use annotations at the beginning of the VirtualThing class implementation.There are some use-cases when we need to define those properties dynamically, at runtime, like for example when we use a VirtualThing to push a sensor's data from a Device Cloud to the ThingWorx server, for multiple customers.In this case, the number properties differ based on customers, and due to the large number of variations, we need to be able to define programmatically the Properties themselves.The following code will do just that:for (int i = 0; i < int_PropertiesLength; i++) { Node nNode = device_Properties.item(i); PropertyDefinition pd; AspectCollection aspects = new AspectCollection(); if (NumberUtils.isNumber(str_NodeValue)) { pd = new PropertyDefinition(nNode.getNode
This has been moved to its new home in the Augmented Reality Category in the PTC Community.
When you install Thingworx with PostgreSQL, you can't import the "PostgreSQL" extension because of the conflict of a library file.So, here is a sample "MetaData.xml" file. You can zip this file and simply import it into your Thingworx so that you can have a thing template for "PostgreSQL" database.<Entities> <ExtensionPackages> <ExtensionPackage name="PostgreSQL_ExtensionPackage" description="PostgreSQL JDBC Extension" vendor="ThingWorx Customer Service" packageVersion="1.0" &n
Neural Net is a learning algorithm that is inspired by how the human brain works. For example, imagine you love chocolate cake so much that, you joyfully exercise a bit more during the week just to enjoy that delicious chocolate cake without feeling guilty. But if the weather is terrible there is no way you go exercise, and then you can’t eat the delicious chocolate cake. Although, if your beautiful girlfriend / boyfriend exercise with you, then you ignore the weather and joyfully exercise and then you can enjoy that delicious chocolate cake without feeling guilty. The brain’s nervous system passes information using a synapse structure which allows neurons to pass information to other neurons and finally make a decision. This structure of passing information and decision making is the construction behind neural net algorithm. The data structure provides weights on the edges for the nodes/synapses in a directed graph. For example, our chocolate cake decision making could be translated i
Starting with the 7.4 version of Thingworx, a license.bin file locked to the specific version of Thingworx is required in order to successfully start the Thingworx webapp. If something is wrong with the licensing, Tomcat will crash and will not show any information regarding the problem in its log files. The Catalina*.log file will look like this13-Jun-2017 04:36:43.268 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina13-Jun-2017 04:36:43.268 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.1313-Jun-2017 04:36:43.315 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive C:\PTC\KinexForManufacturing\PTC_Servlet_Engine\webapps\Thingworx.war13-Jun-2017 04:36:56.080 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this lo
Retraining the Model in ThingWorx Analytics When using ThingWorx Analytics Products to build Prediction Models, it is not enough to end up with models that are a Technical Success. The purpose is to ultimately have models that are a Business Success. What the user would want to achieve is to have Models that remain reliable and accurate in a potentially changing production environment.Therefore, when your environment changes, the model that you have used and relied on might no longer provide the same quality of results. Hence the need to retrain your model. Types of Models to be retrained: There are currently two types of models that are created with ThingWorx Analytics:Predictive modelsAnomaly Detection modelsEach of those models could require retraining based on the context in which they are created then used.When to retrain your Model: - Predictive models: For predictive analytics models, the main initiator for retraining would be a change in the production environment. resulting in
Behavior of ThingWorx Analytics Anomaly Detection with Data Gaps In ThingWorx Analytics, Anomaly detection is performed through the ThingWatcher API framework. This is done by observing the Data from an Edge device, learning what the data stream should look like and then monitoring for any unexpected sequences of Data within the incoming Data stream. Ideally, for this process to work properly, there should be no Data Gaps. However, Data Gaps do occur, this blog describes how ThingWatcher deals with them in order to achieve high performance in anomaly detection.Data Gaps and phases affected: In anomaly detection, ThingWatcher goes through three consecutive phases which are Initializing, Calibrating and then Monitoring. Both the Initializing and Monitoring phases involve either collecting or monitoring streamed Data, so these two phases are sensitive to Data streaming Gaps.The Calibrating phase involves the use of already collected data to create the Anomaly Detection Model. Thus this p
In this video we show: - how to deploy the microservices via jar files - how to setup ThingWorx to use those microservices for anomaly detection Updated Link for access to this video: ThingWorx Analytics: Deploying Training and Result Microservices via jar files for Anomaly Detection
This blog post provide information on the technical changes in Thingworx 8.0, New Technical Changes in ThingWorx 8.0.0Here are some common questions and answers in regards to the Licensing change:Does that mean all the extensions in the marketplace won't be free anymore?Depends on the extensions. The main extensions we are licensing for 8.0 are Navigate, Manufacturing and Utilties. We are not licensing the MailExtension on the marketplace, for example. Partners and customers can still import their custom apps/extensionsIf TWX connects to RP(remote platform) which has its own subscription based Flexera license (InService, for example), how does this interaction works- license validation. Is server to sever connection counts as user login direct to PTC product?License files are per TWX instance. For RP, each would have their own license files. User counts (if entitled and enforced) are generic to each system.
Key Functional HighlightsThingWorx 8.0 covers the following areas of the product portfolio: ThingWorx Analytics, ThingWorx Utilities and ThingWorx Foundation which includes Core, Connection Server and Edge capabilities.Highlights of the release include:ThingWorx FoundationNative Industrial Connectivity: Enhancements to ThingWorx allow users to seamlessly map data from ThingWorx Industrial Connectivity to the ThingModel. With over 150 protocols supporting thousands of devices, ThingWorx Industrial Connectivity allows users to connect, monitor, and manage diverse automation devices from ThingWorx. With this new capability, users can quickly integrate industrial operations data in IoT solutions for smart, connected operations.Native AWS IoT and Azure IoT Cloud Support: ThingWorx 8 now has deeper, native integration with AWS IoT and Azure IoT Hub clouds so you can gain cost efficiencies and standardize on the device cloud provider of your choice. This support strengthens the co
This video is the 1st part of a series of 3 videos walking you through how to setup ThingWatcher for Anomaly Detection. In this first video you will learn the basics of how to create connectivity between KEPServer and ThingWorx Platform. Updated Link for access to this video: Anomaly Detection 8.0 - Part 1: Connecting KEPServer to ThingWorx: Part 1 of 3
In this video we go through the steps to install ThingWorx Analytics Server 8.0 Updated Link for access to this video: ThingWorx Analytics Server 8.0
Please refer to the release notes: PTCHere are some common questions and answers in regards to the Uprade change:Extension: The removal of dependencies was almost impossible. Do the changes allow extension updates without removal?That is correctIs uninstalling extensions "easier" possible? For example, having extensions with many dependencies which results in a struggle when manually deleting all include files...it would be great to have just 1 uninstall function.Unfortunately, that is still the case when one is uninstalling extensionIs there an easy way to see all entity dependencies on an extension (vs. on any one template etc)?Not currently at the extension level. That's certainly something to be considered addingIf one made a mistake on changing an extension mashup, how do they recover? Is it necessary to remove and then import newer extension?Yes, at the moment that is the only recourse.
Please refer to the release notes to find information on the new features/changes: PTCHere are some common questions and answers in regards to the Installers feature:Does that mean Thingworx 8 only support docker installation? Or standalone installation is still allowed?Only if using the new installer. The war file download will still be available for non Docker installs. The WAR files will still be available and usable the same way as in the past. Users only need to use Docker if they use the installer.How do customers download/build the docker image?The image is not provided separetly, it is installed and configured by the installer.Does the installer install docker when necessary as well? Or is it expected that the user already has docker installed?No, the user must install it on their operating system before using the installer. The installer will detect if Docker is properly installed.
This article https://support.ptc.com/appserver/cs/view/solution.jsp?n=CS264270 and the blog post provide information on the technical changes in Thingworx 8.0, New Technical Changes in ThingWorx 8.0.0Here are some common questions and answers in regards to the change.Is there any way that one could lose access to the Appkey keystore? (restore a backup, etc)Yes, it is possible to lose the key store. If one for some reason simply deletes it or renames it, the existing application keys would no longer be able to be decrypted - thus unusable.Is there a way to back up the appkey store and any necessary secrets such that it can be recovered then?Yes, but this would be handled at the file system, not inside of ThingWorx. We do have some best practices documented for managing the keystore.For developers who configure Edge applications and Connectors to connect to the platform, where do they copy the app key from? Are they copyring the encrypted version of the app key?They would do the sa
New Generation Composer is available from ThingWorx 7.4 and later. Each subsequent release of ThingWorx will contain additional New Composer features/functionalities. This video is focused on the layout change and new features implemented from ThingWorx 7.4. How to enable the new Composer? 1. In the top right-hand corner, click on the User Menu and select the Preferences option Figure 1 2. Click the check box for Turn on New Composer Features. 3. Click Done. A New Composer link is added to the menu bar at the top of the Composer window. Figure 2 4. Click the New Composer link to open a new tab for the New Composer view Figure 3 What's the layout change in New Composer? Three areas layout Figure 4 Menu bar on the left (Area 1) Set Project Context to set default project name for new entities Two views: Recent and
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.