Flowcodeo - Program with flowcharts

Hello.
Ive been working on some software Im calling "Flowcodeo"
Pronounced " Flow-Code- EEE-O "
Like " Rodeo "...
Its not ready yet, but I wanted to get some feedback as to what you think of it
The basic idea is that you can program an Arduino program with no code. BUT can add your own code if you want.

The video is only a really quick one to show what it can do

I wrote it because I was unhappy current Arduino software for generation code.
I couldn't find any i liked that had a good GUI, that worked as a flowchart should. and allowed you to edit code inline, while maintaining the GUI.

Flowcodeo gives you complete access to the code. You can add custom code blocks, save code blocks, or edit the code of ANY of the blocks.

The software is actually written to control more than just Arduino.

It can generate Arduino files (for Arduino) or python Files (For ROS (ROBOTIC OPERATING SYSTEM)) and I hope to expand it to many more "specific" versions in the future (for VEX robotics, Sparkfuns Redbot, Lego Mindstorms etc etc etc)

I am undecided as to how to progress. I have put a lot of work into this, so I would quite like to monetise it, or at least have a sponsor or advertiser. Really I would like to be able to afford to buy a range of robotics kits (such as the sparkfun redbot) so I can make it compatible with as many robotic platforms as possible.

I have my own robot I've built, and the (slightly fancier) video below shows how easy it is to make it drive in circles :stuck_out_tongue:

There is also support for 'if statements' and sensor inputs.

I am in the process of implementing simple maths, counting loops etc etc...

Thoughts? :slight_smile:

It would be more interesting for me if the application could take Arduino C code and generate a flowchart from it.
just the other way around. That would help people generate visual documentation.

And it would show where flow becomes spaghetti*, or where there is repeated code ..
my 2 cents

*programmers do not want spaghetti they want lasagne ==> nice layered SW

I am afraid it is one way. Flowchart -> code

It is I am afraid basically impossible to do this the other way around, As every programmer uses different styles of programming and different syntax, variable names, and flow of code. It is impossible* to work this backwards into a flowchart format.

* I say Impossible, Nothing is impossible, but your looking at probably a few years of analysis of how people write code, specifically arduino code, and even then it would never be perfect.

Also, bare in mind that this is aimed at children, and people learning to program. Not for "expert programmers"

This looks great. The line routing could be a bit better, are you using a html diagraming library off the shelf?

Anyway, one thing that I believe is important is that kids should be able to parse the generated code. It was hard to tell from the video but as long as they can reference between the diagram and the code I think this has huge educational value. Maybe if you pulled the code in to the blocks and allowed it to be viewed as a tooltip, or displayed in the panels on the right...

I haven't played with Scratch For Arduino yet, what are your thoughts on it?

If you look to the top of the edit panel, you can see the code for each block.
You can edit it there also.

There are actually two line librarys. One is jsPlumb and one is a custom one i have written.
The both need more work done on them, to allow for better "path planning"

As soon as you have something that you would feel comfortable testing, I'd love to have a look at it. I have quite a bit of experience in the UI Design of this area (block diagrams, code gen, etc)

Thanks!

I have been looking for software like this for my High School students. Could I ask what stage you are at with it please.

debkeys:
I have been looking for software like this for my High School students. Could I ask what stage you are at with it please.

I would not hold your breath waiting for a reply - the last Reply was about 18 months ago.

Would it not be more useful for the students to teach them to program the Arduino just using the Arduino IDE and C/C++. It would give them a much more marketable skill. And they won't find it difficult.

...R