Flowcode Logo
Please Login or Register

Fast & easy graphical programming

Choice of programming methods

Being able to use graphical icons to develop your system makes Flowcode easy-to-use. If you're a first-time developer or have little experience of developing electronic systems, Flowcode will make it easy for you to pick up the fundamentals and run with your designs without getting bogged down in syntax. Users can choose between two graphical methods of programming - flowcharts or Blocks - and two scripted coding modes - Pseudocode or C - making for a very flexible IDE.

Fast system development

Programming can be a complex, drawn out process and can often result in errors. Ensuring your code is accurate and precise takes skill and time. With Flowcode, your job becomes easier. Programs that previously took hours to design and perfect can be brought together in minutes. The added advantage of simulation also allows you to check and test your designs prior to compilation to a microcontroller.

Learn and program using C code

If you're a more advanced programmer or have pre-written code you want to embed into your design, Flowcode allows you to do just that. What's more, if you're using graphical icons, you can view and learn code side-by-side with your design, meaning academic users of Flowcode develop their learning over time. Convert your C code into graphical programs and your graphical programs into C to develop and grow your understanding. You can now even simulate your C code, too.

Graphical programming screenshot
Graphical programming screenshot

Test & Debugging

Test and Debugging screenshot 1
Test and Debugging screenshot 2
Test and Debugging screenshot 3

Ghost Technology

Ghost Technology is an advanced way of testing and debugging your electronic system. Using Matrix's range of E-blocks and E-blocks2 hardware, you can monitor every pin and every variable on your microcontroller and interpret serial data inputs and outputs. Flowcode includes an in-software oscilloscope and data recorder which both display feedback and information live from the hardware you're using.

Simulation debugger

For many engineers, a key requirement is to ensure the designs you have developed will work when you compile to your microcontroller. Flowcode allows you to do all you need in simulation using the simulation debugger. This becomes active during simulation and is used to monitor both the values of the variables in your program, and the macros which are being called. Flowcode 8 allows you to simulate your C code.

Code profiling

Code profiling shows the user when icons have been 'hit' when the program is executed, distinguishing between sections of code that may be redundant and other parts which are executed often. This helps you improve program efficiency.

In-Circuit-Test and In-Circuit-Debugging

In Circuit Debug (ICD) allows you to control the execution of your Flowcode program on E-blocks & E-blocks2 hardware. This allows you to Run, Step, Pause, use Breakpoints, and monitor and set variable values. In Circuit Test (ICT) allows you to monitor the signals on the pins of your microcontroller, providing you with a clear picture of what is happening on your hardware. ICT mode also allows you to decode communications signals including UART, SPI and I2C packets.

Simulation

Simulate your code

Prior to deploying your code to a microcontroller, you can simulate in Flowcode, to ensure your design is accurate and will run as you expect. This can be done not only for your flowchart, Blocks or Pseudocode projects, but even for your C code-based developments, too.

Create simple designs

Create simple actuators or valves or add simple shapes to your existing designs and use the built in API to control these creations during simulation. You can even use the Flowcode system panel tools to create your own simple 3D models.

Import your designs from CAD packages

Flowcode integration with third party drawing packages (such as Solidworks), through support for various file formats, means that you can easily import your 3D drawings and designs into Flowcode, then characterise and bring their electromechanical elements to life with the advanced simulation capabilities. Check out the how-to guide here.

Multi-view system panel

View your designs from different angles within the system panel. Split-screen capabilities means you can ensure you are happy with your electronic design. Furthermore, high-speed simulation means that your system works close to real-time - so you can verify your design 'live'.

Breakpoints simulation screenshot
Simulation screenshot

"Matrix TSL are official solution partners of Solidworks. Users can import and characterise 3D systems into Flowcode, such as windmills, car steering racks, electric fans and many more. In fact, Flowcode allows users to simulate almost any electromechanical system. If we haven't already got a 3D system that suits your needs, you can design your own in a dedicated 3D package and import it into Flowcode."

Component Library

Component Library screenshot 1
Component Library screenshot 2

Pre-developed components

A whole suite of electromechanical components exists in our large library of parts; from simple switches and LED's to more complex communications modules. These components are developed and grown with every release of Flowcode we launch, ensuring you have what you need to develop your electronic systems. Academic licences gain access to all components, with professional and standard users gaining access through the purchase of feature packs.

Communications components

Communications developments form a large part of modern day electronic education and understanding. Communications protocols including CAN bus, Bluetooth, USB, Ethernet and Wi-Fi are widely studied across the globe. All of these components are available within the Flowcode environment and come as standard with all academic licences.

New components added

Flowcode 8 contains hundreds components that can be used to create a wide range of electrical and electromechanical systems. These components can also be used as a basis for creating your own components or simulations. Version 8 includes a number of new components for system development and more are constantly being added via the dynamic update system. You can find a full list of components in the Flowcode datasheet.

Supported Devices

Arduino programming

One of the major benefits of using Flowcode, is that it simplifies the programming of Arduino platforms through its use of graphical programming. Arduino support means you can do more with your Arduino than you ever dreamed, and you can even integrate it into our E-blocks modules with our E-blocks2 Arduino Shield.

E-blocks & E-blocks2

Use Flowcode to program Matrix's E-blocks; the perfect platform for learners, engineers and electronic system developers to quickly prototype your designs on a rugged set of hardware. Programming boards and peripheral downstream boards, ranging from input and output, to communications and prototyping makes this the ultimate development platform. Our new E-blocks2 range is out now, and features development boards and kits for Arduino, PIC MCUs, Raspberry Pi, ARM and more.

MIAC

The MIAC range from Matrix gives electronic engineers a rugged industrial platform on which to develop their designs. The MIAC range of hardware is fully supported by Flowcode and is available with a choice of Microcontroller brain: 8bit PIC, 16bit PIC or Arduino. Users have a PLC which is easy to program, reliable and perfect for harsh, industrial environments.

8Bit PIC

Flowcode provides support for a range of 8-bit microcontrollers from Microchip, with an easy-to-use development environment, technical documentation and our hardware platform.

16Bit & 32bit PIC

Flowcode also supports Microchip's 16-bit (also known as dsPIC or PIC24 devices) and 32-bit (PIC32) families of MCU's. The PIC32 family delivers 32-bit performance and more memory, to solve increasing complex embedded system design challenges.

Raspberry Pi

New in Flowcode 8, is the ability to control Raspberry Pi devices. For those wanting to integrate the Raspberry Pi into our new E-blocks2 range, we have also developed a hardware platform, the Raspberry Pi Shield, through which your Raspberry Pi becomes compatible with the whole new range of Eblocks2 boards. Perfect for those studying Computer Science or those who wish to develop using the Pi.

AVR & ARM

Atmel's AVR devices and ARM MCUs including the popular STM32 ARM family are also supported in Flowcode.

Scada logo

Flowcode SCADA

Flowcode SCADA (Supervisory Control And Data Acquisition) allows users to quickly and easily create PC based control and data acquisition programs with graphical Human Machine Interfaces (HMI) based on flow charts.

How does it work?

Users write programs using flowcharts, pseudocode, or blocks. Simply drag flowchart icons onto the screen and set their parameters to create the program. A number of premade visual components including meters, 7-segment displays, dials, switches, and indicators can be dragged onto the system panel to show relevant information and allow user control of the local or remote interface. The resulting program can be deployed as a stand-alone application that runs independently of Flowcode and can be distributed to other users. The software is supplied with a large number of pre-written macros for control, data processing, communications, visual data representation and interfaces well to other analysis tools

Flowcode SCADA is a low cost and simple way of allowing visually rich and feature rich PC control and data acquisition for electronic and electromechanical systems.

Scada creating a project
Scada deployed project