Flowcode App Developer allows you to connect to a wide range of devices. Some of these might be devices you have purchased, and others might be your own embedded projects. The only requirement is that the method of communication is supported by App Developer and the commands (or API) needed to communicate with the device are known and supported.
Web Developer projects will generally use web-based communications protocols to communicate with external devices and websites. When communicating with hardware, this often requires the device to act as a webserver which publishes webpages that are available on the local network. Typical protocols used are HTTP and MQTT.
PC Developer will communicate with connected devices using serial and network communications protocols. It can also be used to take full control of popular boards such as Arduino, Raspberry Pi and ESP32 using our pre-built Slave API firmware.
App Developer projects are not limited to a single hardware device and the same project can communicate with any number of external devices and websites.
When linking to external devices, different approaches may be required depending on the type of device and level of control required. There are 3 types of device we need to consider when communicating with external devices using Flowcode App Developer:Open devices
Our customers usually use Flowcode to develop embedded projects and App Developer allows them to create visually appealing PC and web apps that control and/or gather data from them. Suggestions for hardware and communications methods are presented below.
App Developer allows you to create Windows and Web based applications and is compatible with a wide range of local and remote hardware for control, data gathering, test and analysis.
For creating embedded devices and systems using Flowcode Embedded for use with App Developer we recommend the following devices.
Following is a breakdown of the communications methods and features of App Developer broken into PC Developer and Web Developer and showing compatible Flowcode Embedded components.
To provide I/O (Digital/Analogue/PWM) and bus capabilities (UART/SPI/I2C/OneWire) we have created a number of example API firmwares and corresponding components. These can be used together with the API Library components to drive advanced functionality for example interfacing with sensors and displays.
APIs are open source and developed in Flowcode Embedded and are available from the Flowcode Wiki. They are provided as working examples to be used as is or tailored to meet your needs, for example combining a stand alone embedded application with App Developer based configuration and test. For example in an LED control application you would want the embedded device to do the task of controlling the LEDs and the App Developer application would just allow control over higher level functions such as the LED colour or animation mode or on/off schedule.
If you need a different input output device from the ones on the list below you can edit our APIs and create your own based on one of the other devices in the Flowcode Embedded target list.
*1 Requires additional hardware in the form of an external module.
*2 Requires firmware containing OTA enabled code