Dimension4 GraphQL IoT Service

Hans-Petter Halvorsen

Introduction

GraphQL is a query language for APIs. GraphQL was developed by Facebook (2012) but is now Open Source. GraphQL is typically used to develop Web APIs and GraphQL is a “competitor” to REST APIs.

https://graphql.org/

 

Dimension4 is an IoT company that offer an IoT Service using GraphQL.

https://dimensionfour.io/

They offer both free and paid subscriptions. The free subscription offers 100Mb storage and 100 000 API calls for free, then you need tp pay extra if you goes beyond these limits.

 

More information regarding their IoT Service:

API documentation:

https://docs.dimensionfour.io

They have a GraphQL Playground that can be used for configuration and communication with the IoT API:

https://iot.dimensionfour.io/graph

 

Typically, you will use one or more programming languages in order to communicate with the API, insert data, monitoring data, etc. Below you will find information and code examples how to communicate with the API in different programming languages, tools and devices like:

 

Not all resources are ready at the moment, but new resources are released continuously. Stay tuned!

 

 

LabVIEW

LabVIEW is a graphical programming language, and it has powerful features for simulation, control and DAQ applications.

A LabVIEW GraphQL API for Dimension4 IoT Service has been created, see information and resources below.

Below you see the Dashboard that can be used for Configuration and Monitoring Data:

 

Below you see one of the examples that can be used for Datalogging:

 

Resources:

Introduction to LabVIEW GraphQL API for Dimension4 IoT Service (YouTube) + PowerPoint (PDF)

LabVIEW GraphQL API for Dimension4 IoT (ZIP)

 

 

Python

Python is an open source and cross-platform programming language, that has become increasingly popular over the last ten years.

A Python GraphQL API for Dimension4 IoT Service has been created, see information and resources below.

 

Resources:

Python GraphQL API for Dimension4 IoT (ZIP)

 

 

Raspberry Pi

Raspberry Pi is a credit-card-sized computer that plugs into your TV and a keyboard. It is a capable little computer which can be used in electronics projects, and for many of the things that your desktop PC does.

 

 

Arduino

Arduino is an open-source electronics platform based on easy-to-use hardware and software. Arduino boards are able to read inputs, like light sensors, activating a motor, turning on an LED, etc.

 

 

Visual Studio/C#

Visual Studio is an integrated development environment (IDE) from Microsoft. It can be used to develop console and graphical user interface applications along with Windows Forms applications, web sites, web applications, and web services in both native code together with managed code for all platforms supported by Microsoft Windows.

C# is the main programming language in Visual Studio. C# is a modern Object-oriented programming language.

ASP.NET is an open source web framework, created by Microsoft, for building web apps and services using the .NET Framework or the .NET Core. We have both ASP.NET and ASP.NET Core. ASP.NET Core is the new approach built on .NET Core.

 

 

MATLAB

MATLAB is a tool for technical computing, computation and visualization in an integrated environment. MATLAB is an abbreviation for MATrix LABoratory, so it is well suited for matrix manipulation and problem solving related to Linear Algebra, Modelling, Simulation and Control applications, etc.

 

 

Student Projects

Master Thesis 2022

Development of Open Source Datalogging and Monitoring Resources for IoT Platform

Final Report (Håkon Helgesen)

GitHub

Additional Resources

Below you will find more interesting resources


IoT

Internet of Things

Industrial IT

Industrial IT resouces



Arduino

Arduino resouces

IoT Projects

Here you find lots of interesting IoT Projects, etc.

Raspberry Pi

Raspberry Pi resouces

ThingSpeak

IoT Service