- Allows sensor I/O and Click boards™ to be effortlessly accessed with no programming required
- Includes an interactive drag-and-drop feature for quick application development
Nowadays, creating any hardware-based application has become simple. One only requires good programming skills to achieve that. Take, for instance, the several development boards out there that have pre-built hardware components on them.
It has been observed that a good software programmer often lacks strong hardware knowledge and vice-versa. It is challenging for people from both fields to possess a good knowledge of the other. What should be the solution?
So, here’s presenting, the QuickDAQ.mikroBUS™, a project that aims to make working with custom electronics dramatically simpler, faster and cheaper.
The QuickDAQ.mikroBUS™ is a board that provides your computer with the same low-level peripherals that a microcontroller has, such as GPIO, analogue input, PWM, SPI, I2C, UART and so on. It comes with a standard .NET class library and can be used in any normal .NET application.
In that sense it can be thought of as a Data Acquisition (DAQ) board, thus the name “QuickDAQ”.
Another one of its unique features is that it has been specifically designed to operate in the Virtuoso Low-Code Environment. Virtuoso is a state-of-the-art general-purpose Low-Code platform, which gives users the ability to design high-level applications without writing any code.
Virtuoso supports, among others, a C# .NET WPF host platform to design applications by dragging and dropping nodes, configuring and connecting them. This is called “Node-Based Visual Programming”. Virtuoso translates high-level graphical design to a fully formed Visual Studio project that can be easily run.
So, if you want to perform a high-level task, such as obtaining the current temperature, or sending a text message, then there is no need to bother with the underlying C# code. Simply drag and drop your node and you’re done.
Easy code sharing
What’s particularly exciting about Virtuoso is that it’s built to scale; anyone can create nodes based on their C# code and share them with or license them to the community.
After dragging and dropping your nodes and completing the schematic design, one can always go in and extend one’s application directly in C#. An application can be designed in both the 3rd generation language (C#) and the 4th generation language (Node-Based Visual Programming) simultaneously, with no restrictions on the functionality of your application.
This makes Virtuoso a “Cross-Generation Language” Low-Code workflow.
Adding virtual components
One of the things that can be dragged and dropped in Virtuoso is a virtual microprocessor target, which results in a new C/C++ project being added to the application. It runs parallel to and interacts with other Virtuoso components. One can also easily add digital and analogue I/O, communication peripherals, LCD display buffers, serial communication streams and more.
From here, C/C++ applications can be developed that interact with the components on your Virtuoso schematic, which can be thought of as virtual hardware.
Straightforward real-world communication
Virtuoso nodes for the QuickDAQ.mikroBUS™ allow effortless interaction with the real world using the board peripherals. Thus, the Click boards™ or custom circuits built on top of the QuickDAQ.mikroBUS™ become real hardware in the simulation loop. It has three standard mikroBUS™ slots and all of the peripherals of the mikroBUS™ can be accessed directly from the virtual microcontroller. All that is required, is to perform SPI transfer from your target. And if your target’s SPI bus is wired to the SPI bus of one of the mikroBUS™ expansion nodes, then the transfer automatically happens at the SPI bus pins.
Alternatively, you can use a pre-written node specific to a Click board™ to directly provide the sensory I/O without having to perform the lower level communications. The Click board’s node handles the lower-level details. So instead of performing I2C communications to read the proximity sensor, you can just connect to the analogue output of that node and use the proximity signal directly.
All in all, although everything is extremely high-level and easy to use, the result is a highly optimized code added to your application.
Fast and ideal
The QuickDAQ.mikroBUS™, with the Virtuoso low-code environment, provides the absolute fastest and most flexible way to tackle your experiments, hobbies, and design projects, using code that you can always migrate to a real microcontroller.
The QuickDAQ.mikroBUS™ provides the ideal base platform for any design. And in combination with Virtuoso, they are a significant improvement as compared to conventional embedded development.
The Virtuoso framework is in the final stages of development, test, and release. Its release has been planned in September 2020, however unexpected delays past September could conceivably occur.