Omnia Creator is a cross platform, free, and open source C/C++ IDE for Makers that brings powerful code editing and data visualization capabilities to your fingertips. With Omnia Creator you can create multichannel graphs that show sensor data in real time from your microcontroller. Need to create a user interface for your project? With Omnia Creator you can accomplish this in only a few lines of code. Omnia Creator also provides professional code editing features like rapid code navigation, syntax highlighting for hundreds of languages, C/C++ code completion, code re-factoring, and more. Get ready to make the future with Omnia Creator!
Download Now
For Windows XP, Vista, 7, 8, or later
For OSX Snow Leopard 10.6 or later
For Ubuntu 10.04 or later
Code Editing
Omnia Creator is powered by Qt Creator – the premier cross platform, free, and open source C/C++ IDE for professionals. Omnia Creator brings the following capabilities to your fingertips:
- File System, Bookmarks, Open Documents, and Code Outline Browser
- Multiple Code Editors
- C/C++ Code Editor
- Binary Editor
- Diff Editor
- Plain Text Editor
- Rapid Code Navigation Tools
- Switch Header/Source
- Follow Symbol Under Cursor
- Switch Between Function Declaration/Definition
- Find Usages
- Open Type Hierarchy
- Open Include Hierarchy
- Syntax Highlighting and Code Completion
- Built-in Syntax Highlighting support for over 200 languages
- Snippet Code Completion
- Doxygen Code Completion
- Static Code Checking and Style Hints
- Underlines potential compile errors in red
- Underlines potential compile warnings in green
- Code Folding
- Built-in support for over 200 languages
- Parenthesis Matching and Parenthesis Selection Modes
- Record/Play/Save Macros
- Text Editing
- Auto-indent Selection
- Text Wrapping
- Visualize Whitespace
- Clean Whitespace on save
- Issue Flaging
- Marks compile errors in text editor
- Marks compile warnings in text editor
- Advanced Find and Replace
- Search C/C++ Symbols, File System, Current File, and Open Documents
- Regular Expression and Preserve Case when Replacing Support
- Code Editing
- Split Horizontally/Vertically
- Open in new Window
- Code Refactoring
- Rename Symbol Under Cursor
- Add Curly Braces
- Move Declaration out of Condition
- Rewrite Condition using another Operator
- Split Declaration
- Split If Statement
- Swap Operands
- Convert to Decimal, Hexadecimal, or Octal
- Add Definition Inside Class, Outside Class, or in Implementation File
- Add Function Declaration
- Switch with Next/Previous Parameter
- Extract Function
- Extract Constant as Function Parameter
- Add Local Declaration
- Convert to Camel Case
- Complete Switch Statement
- Synchronize Function Declaration and Definition
- Add #include for undeclared identifier
- Reformat Pointers or References
- Create Getter and Setter Member Functions
- Move Function Declaration
- Assign Function or Expression to Local Variable
- Insert Inherited Pure Virtual Functions
- Optimize For-loop
- Execute Custom Command-line Commands
Data Visualization
Serial Oscilloscope
Omnia Creator’s Serial Oscilloscope Widget makes drawing line graphs, xy graphs, bar graphs, box plots, and scatter plots easy! Serial Oscilloscope let’s you create an arbitrary number of graphs in a plotting window to display data from your microcontroller. You can set the plot name, axes labels, axes ranges, axes scale type (linear or logarithmic), background color, and more! You can also set each graph’s name, line style, line color, fill style, fill color, and many more graph type specific settings.
Need a spectrum analyzer? Serial Oscilloscope can display the magnitude or phase of the Fast Fourier Transform (FFT) of line graphs, xy graphs, and scatter plots. You can set the FFT plot axes labels, axes ranges, axes scale type (linear or logarithmic), and more! You can also set each FFT graph’s windowing function and many more graph type specific settings.
Serial Oscilloscope Widget Windows are fully interactive. You can zoom in, zoom out, and pan around in the plot space. Additionally, hovering your mouse over a plot point will show the X and Y coordinate information.
Need to share your plot? Serial Oscilloscope can export your plot as a human readable JSON file. Serial Oscilloscope can also import exported plots. You can even modify exported JSON files and tweak the plot to suit your needs. Serial Oscilloscope can also save your plot as a BMP, JPG, PNG, PDF, and SVG file at any resolution.
For more graph examples see the Omnia Creator Graph Gallery.
For more information about Serial Oscilloscope see the help page.
For C/C++ programming information see the API page.
More API Information: Line Graph API – XY Graph API – Bar Graph API – Box Graph API
Serial Interface
Omnia Creator’s Serial Interface Widget makes controlling your microcontroller easy! Serial Interface let’s you create an arbitrary number of user interface elements in group boxes in a graphical user interface window. You can create push buttons, radio buttons, check boxes, integer spin boxes, binary spin boxes, hexadecimal spin boxes, double spin boxes, line edits, date edits, time edits, date/time edits, sliders, progress bars, labels, and separators. You can also customize user interface element text labels, radio button initial state, check box initial state, spin box prefix/suffix texts and minimum/maximum values, line edit echo mode and input mask, slider minimum/maximum values, progress bar minimum/maximum values, and much more!
Serial Interface Widget Window user interface elements when manipulated automagically update user interface element objects on your microcontroller through the Omnia Creator Interface Library. For example, your microcontroller instantly receives notification when you press, release, or click a push button. Or, as you type into a line edit your microcontroller instantly receives a new string as you enter characters. And, as you move a slider back and forth your microcontroller instantly receives the new slider position.
For a graphical user interface example see the Original Maker Faire Demo.
For more information about Serial Interface see the help page.
For C/C++ programming information see the API page.
More API Information: Group Box API – Push Button API – Radio Button API – Check Box API – Int Spin Box API – Bin Spin Box API – Hex Spin Box API – Double Spin Box API – Line Edit API – Date Edit API – Time Edit API – Date/Time Edit API – Slider API – Progress Bar API – Label API – Separator API
Serial Table
Omnia Creator’s Serial Table Widget makes displaying data in a table format easy! Serial Table let’s you create an arbitrarily sized table view to display data from your microcontroller. You can set the text for each row, column, and item separately. Serial Table also has integrated “Find” support to make finding a specific value in a large table easy.
Need to share your data? Serial Table can export your data as a human readable JSON file. Serial Table can also import exported data. You can even modify exported JSON files and tweak the data to suit your needs. Serial Table can also export your data to a CSV file.
For more information about Serial Table see the help page.
For C/C++ programming information see the API page.
Serial Tree
Omnia Creator’s Serial Tree Widget makes displaying data in a tree format easy! Serial Tree let’s you create an arbitrarily sized tree view to display data from your microcontroller. You can set the text for each key and value separately. Serial Tree also has integrated “Find” support to make finding a specific value in a large tree easy.
Need to share your data? Serial Tree can export your data as a human readable JSON file. Serial Tree can also import exported data. You can even modify exported JSON files and tweak the data to suit your needs. Serial Tree can also export your data to a CSV file.
For more information about Serial Tree see the help page.
For C/C++ programming information see the API page.
Serial Terminal
Omnia Creator’s Serial Terminal Widget makes sending and receiving text from your microcontroller easy!
Serial Terminal Widget Windows support UTF-8 text. Say “Hello World!” in any language! You can also set the text color to red, green, blue, yellow, cyan, magenta, gray, and black (the default), beep the PC speaker, clear the terminal screen, move the cursor to the start of text, end of text, left, right, up, down, to the start of the line, to the end of the line, and more using control character codes! Finally, New Line (‘\n’), Carriage Return (‘\r’), and Carriage Return + New Line (“\r\n”) are handled correctly!
Need to send a text file to your microcontroller? Serial Terminal can transmit up to 1 MB in size text files. Need to receive text from your microcontroller? Serial Terminal can receive and save up to 1M lines of text of arbitrary length.
For more information about Serial Terminal see the help page.
For C/C++ programming information see the API page.
Serial Graphics
Omnia Creator’s Serial Graphics Widget makes drawing text, lines, triangles, rectangles, circles, and etc. easy! Serial Graphics let’s you create an arbitrary number of shapes in a plotting window to display data from your microcontroller. You can set the plot name, background color, and more! You can also set each shape’s line style, line color, fill style, fill color, rotation, scale, many more shape type specific settings.
Serial Graphics Widget Windows are fully interactive. You can zoom in, zoom out, and pan around in the plot space. Additionally, hovering your mouse over a plot point will show the X and Y coordinate information.
Need to share your plot? Serial Graphics can export your plot as a human readable JSON file. Serial Graphics can also import exported plots. You can even modify exported JSON files and tweak the plot to suit your needs. Serial Graphics can also save your plot as a BMP, JPG, PNG, PDF, and SVG file at any resolution.
For more information about Serial Graphics see the help page.
For C/C++ programming information see the API page.
Supported Microcontrollers
Omnia Creator can support any microcontroller board through Omnia Creator’s use of the CMake Build System. Omnia Creator uses the CMake Build System and user editable CMake Scripts to analyze, build, and run your code for your microcontroller board. Omnia Creator performs cached out-of-source builds using Ninja Make – a lightning fast build tool that parallelizes builds using all of your CPU cores. Additionally, Omnia Creator only rebuilds code that changed between builds.
Your code doesn’t compile? Omnia Creator’s integrated Issues View has you covered. Compile Errors and Warnings are itemized and bookmarked in your source code.
Need support for another microcontroller board? You easily can do it yourself! Please see the forums for help – how to documentation is coming soon.
Omnia Creator supports the following microcontroller boards currently:
- Arduino
- Arduino ADK
- Arduino BT
- Arduino Diecimila
- Arduino Duemilanove
- Arduino Mega
- Arduino Mini
- Arduino Nano
- Arduino NG
- Arduino Pro
- Arduino Pro Mini
- LilyPad Arduino
- Arduino Esplora
- Arduino Ethernet
- Arduino Fio
- Arduino Leonardo
- Arduino Micro
- Arduino Robot Control
- Arduino Robot Motor
- Arduino Uno
- LilyPad Arduino USB
- Arduino Due (future)
- Arduino Tre (future)
- Arduino Yún (future)
- Parallax
- Propeller
- AP-16 Audio Player
- EDDIE Control Board
- HoverflyOpen Flight Controller Board
- Hydra Game Development Kit
- Propeller Activity Board
- Propeller ASC
- Propeller ASC+
- Propeller Backpack
- Propeller BOE
- Propeller C3
- Propeller Demo Board
- Propeller DNA
- Propeller Mini
- Propeller Other
- Propeller Platform USB
- Propeller Professional Development Board
- Propeller Project Board USB
- Propeller Proto Board
- Propeller QuickStart
- Propeller Robot Control Board
- PropStick USB
- Scribbler 2
- Spin Stamp
- Spinneret Web Server
- Propeller