Dear Community User! We have started the migration process.
This community is now in READ ONLY mode.
Read more: Important information on the platform change.

howto-faq-1444x512

FAQ for SDK for ctrlX AUTOMATION

CodeShepherd
Community Moderator
Community Moderator
Where to get Software Development Kit (SDK) for ctrlX AUTOMATION?

The official release of the SDK for ctrlX AUTOMATION is available as download via GitHub.

To become a selected customer please contact any person at Bosch-Rexroth sales- or business development department. Link to contact search (At Product Groups please select only "Electric Drives and Controls")

Why SDK for ctrlX AUTOMATION?

The SDK contains all information and dependencies you need to start to develop additional software packages for ctrlX AUTOMATION. If we talk about software packages it means snaps. Snaps are app packages for desktop, cloud and IoT that are easy to install, secure, cross-platform and dependency-free - snapcraft.io.

With the samples containing our SDK you learn to build those packages for our new platform ctrlX CORE or ctrlX COREvirtual , from scratch. Don't be afraid and try it! 🙂

Examples included in the SDK (1.20.0)
  • Angular
    • Hello Multilanguage --> use of localization files in ctrlX CORE apps
  • C++
    • Hello World --> print "Hello World" in the console and diagnostic logbook
    • Hello PLC --> write PLC symbol variables NRT
    • ctrlX Data Layer RegisterNode --> provide own NRT nodes in the ctrlX Data Layer
    • ctrlX Data Layer All Data Provider --> provide nodes of all data types to the ctrlX Data Layer
    • ctrlX Data Layer Client --> NRT manipulation of ctrlX Data Layer data
    • ctrlX Data Layer Client subscriber --> single and multi mode subscrition to ctrlX Data Layer nodes
    • ctrlX Data Layer Realtime --> usage of shared memory for data exchange
    • EtherCat IO --> toggle some Fieldbus I/O's
    • Diagnostics Logbook --> send messages in the ctrlX Diagnostics Logbook
  • Golang
    • Hello Webserver  --> integration of your own app in the ctrlX CORE web interface and reverse proxy
    • AppData File Storage  --> persist application data in ctrlX environment using an HTTP Listener
    • WebDAV Client --> access configuration files of a ctrlX CORE remotely using the WebDAV protocol
    • TPM2 (Trusted Platform Module) --> basic usage of a TPM2.0
    • ctrlX Data Layer Provider --> provide own NRT nodes in the ctrlX Data Layer
    • ctrlX Data Layer Client  --> NRT manipulation of ctrlX Data Layer data
    • ctrlX Data Layer Client Extensions --> subcription and bulk access to ctrlX Data Layer nodes
  • IEC61131
    • Flatbuffer read and write --> access complex ctrlX Data Layer nodes via PLC
  • .NET
    • Hello World --> print out "Hello World" to the console
    • Hello Web ASP --> simple ASP.NET application
    • ctrlX Data Layer Provider --> provide own NRT nodes in the ctrlX Data Layer
    • ctrlX Data Layer All Data Provider --> provide nodes of all data types to the ctrlX Data Layer
    • ctrlX Data Layer Provider Virtual --> listing a wildcard address and managing virtual nodes
    • ctrlX Data Layer Client --> read values from ctrlX Data Layer
    • ctrlX Data Layer Browse --> write out all node values from ctrlX Data Layer to console
    • ctrlX Data Layer Client Bulk read --> bulk access to ctrlX Data Layer nodes
    • ctrlX Data Layer MQTT --> connect the Data Layer to a MQTT 5 broker. The sample is based on MQTT.net
    • Diagnostics Logbook --> logging messages to the logbook of ctrlX
  • Node.js
    • Hello World --> print out "Hello World from Node.js!" to the console
    • Solutions WebDAV interface -> remotely access the configurations of a ctrlX CORE
    • ctrlX Data Layer Provider --> provide own NRT nodes in the ctrlX Data Layer
    • ctrlX Data Layer All Data Provider --> provide nodes of all data types to the ctrlX Data Layer
    • ctrlX Data Layer Client --> read values from ctrlX Data Layer
    • ctrlX Data Layer Browse --> write out all node values from ctrlX Data Layer to console
    • ctrlX Data Layer Client Bulk read --> bulk access to ctrlX Data Layer nodes
  • Python
    • ctrlX Data Layer Provider --> provide own NRT nodes in the ctrlX Data Layer
    • ctrlX Data Layer All Data Provider --> provide nodes of all data types to the ctrlX Data Layer
    • ctrlX Data Layer Client --> read values from ctrlX Data Layer
    • ctrlX Data Layer Client Light --> read values from ctrlX Data Layer
    • ctrlX Data Layer Browse --> write out all node values from ctrlX Data Layer to console
    • ctrlX Data Layer Client Bulk read --> bulk access to ctrlX Data Layer nodes
    • ctrlX Data Layer Client Subscription --> fetches ctrlX Data Layer nodes via subscriptions
    • ctrlX Data Layer Calculation --> read ctrlX Data Layer nodes and write calculation output
    • ctrlX Data Layer Remote Debugging --> remote debugging of an application running on a ctrlX CORE
    • Logbook --> write logs in different loglevels into the logbook of the ctrlX CORE
    • AppData --> persist application data in ctrlX CORE environment
    • Web Server --> webserver including Data Layer connection and user permissions with web interface
  • Shell
    • TPM2 (Trusted Platform Module) --> basic usage of a TPM2.0
    • Unlimit Snap --> increase the maximal number of opened files
Where to find how to's and trainings?

There are videos available in our how to area. See the Collection of How-to videos, blogs and examples for ctrlX AUTOMATION. For trainings please see next question.

Where to get realtime examples?

SDK training programSDK training program

 

Related Links
CodeShepherd
CodeShepherd
Technical sales support from Bosch Rexroth
3 Comments
Must Read
Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist