Closed GoogleCodeExporter closed 9 years ago
r4215: changed the language name attribute in arduino.xml: 'Arduino' will now
automatically show up in the programming drop-down.
Original comment by irasc...@gmail.com
on 4 Jun 2010 at 6:07
Original comment by irasc...@gmail.com
on 9 Jun 2010 at 6:15
Original comment by irasc...@gmail.com
on 16 Jun 2010 at 8:18
Original comment by irasc...@gmail.com
on 30 Jun 2010 at 6:14
http://johanneshoff.com/arduino-command-line.html
http://www.arduino.cc/en/Hacking/BuildProcess
http://www.arduino.cc/playground/Code/WindowsCommandLine
These discuss some of the ways people have been using the command line to
compile/program for Arduino.
Original comment by bryant.m...@gmail.com
on 6 Jul 2010 at 6:49
Two more:
http://code.google.com/p/arduino/issues/detail?id=124
http://code.google.com/p/angbt/
And a comment from mellis from the Arduino team:
"I think angbt might be a decent option; it's probably similar to what we'll
end up doing for Arduino 1.0. That is, a command line interface to Java code
that does basically the same thing as the current IDE (as opposed to a makefile
or alternative build tool that replicates the build process)."
Original comment by andre.knoerig@gmail.com
on 6 Jul 2010 at 7:21
So for programming the Arduino you need to specify the board for compilation
and programming. How would we integrate a Target UI element into our GUI? I
imagine just a dropdown that could appear/disappear based on the language you
have selected.
I'm going to look into the angbt project. It hasn't had any activity recently,
but looks like it's stable. I'm going to also try to get in touch with the
Arduino devs to figure out a deadline for official CLI support.
Original comment by bryant.m...@gmail.com
on 6 Jul 2010 at 11:49
I notice that the angbt page doesn't list mac as a supported platform, so it
would be good to determine whether that's really the case, and if so, why not.
As to the target chip UI element, one thought would be use the chip that they
had already dropped into the sketch. The question is whether users would want
to be able to program independently of sketch content. In which case, still
use the dropdown, but if there's already an arduino in the sketch, then default
the dropdown to that choice.
Note that PICAXE handles the same problem by having different
compilers/downloaders for different microcontrollers, so the chip is chosen
when you select the programmer executable.
Original comment by irasc...@gmail.com
on 7 Jul 2010 at 6:34
on further thought, maybe rather than adding a second dropdown, change the
"language" dropdown to the "microcontroller" dropdown, and the default choice
is the microcontroller that exists in the sketch.
Original comment by irasc...@gmail.com
on 7 Jul 2010 at 7:41
The angbt FAQ say that the reason why there is no Mac support is just that the
developer doesn't have a Mac. :)
Concerning the UI, it's all there, no? The label "Language" could be changed to
"Microcontroller", but it should just be "Arduino". The type of Arduino should
be selected in the "Programmer" drop-down. In there, select "Locate.." to point
to the Arduino directory, and then the drop-down should be populated with all
the various Arduinos. The default selection could then still be the one in the
sketch.
Bryant, if you want to get in touch with the Arduino team to find out about
their roadmap, I can hook you up with mellis.
Original comment by andre.knoerig@gmail.com
on 7 Jul 2010 at 8:59
Clarifying comment 10: the label "language" could be changed to
"microcontroller type" but the value there should remain "arduino" or "picaxe";
the specific microcontroller (i.e. mini, nano, etc.) should be chosen in the
second dropdown, based on the value of the first dropdown.
Original comment by irasc...@gmail.com
on 7 Jul 2010 at 10:36
I've been checking out the angbt project and it looks like there's a lot of
extra configuration to get it set up correctly on a given system. It relies on
a host of external tools to do everything for it and so the location of these
tools all has to be determined ahead of time.
I would think moving the Programmer button into a preferences dialog that can
store the programmers for all the languages would be the way to go at this
point. I'll whip up an example GUI and attach it once it's done. I don't think
we should rely on a user to configure angbt externally.
Original comment by bryant.m...@gmail.com
on 11 Jul 2010 at 5:53
Are the external tools all separate installations, or do they get installed
along with with arduino and java? Do we know enough about these tools to be
able to search for them in the file system programmatically?
Original comment by irasc...@gmail.com
on 12 Jul 2010 at 8:45
Angbt relies partially on all the configuration files from the Arduino install,
but requires installation of avr-dude, avr-gcc, avr-libc on Linux and for
Windows you can just install winavr to get all the programs that are required.
This was all obtained from http://code.google.com/p/angbt/wiki/AngInstall.
Original comment by bryant.m...@gmail.com
on 12 Jul 2010 at 4:11
It looks like at least for some of the packages on linux, he asks for a
separate installation, even though there actually are versions installed along
with Arduino. So would angbt still work if you pointed it to the versions
installed with the arduino installation. And how different would this be
across platforms.
In other words, I wonder if it would be possible for the user only to tell
fritzing where the arduino installation was, and from there the software
figures out the rest of the pointers to give angbt.
Original comment by irasc...@gmail.com
on 13 Jul 2010 at 8:37
I'll try that out and see what happens. I only have access to a Mac, though, so
I'll see how far I can get with this this week.
Also you mentioned you know an Arduino dev you could put me in touch with.
Could you introduce me? It'd be nice to see their plans for this functionality.
Original comment by bryant.m...@gmail.com
on 13 Jul 2010 at 4:20
So it looks like Ang can compile Arduino code correctly using only the programs
included with the Arduino download.
I'm going to work now to see if I can hook up Ang to the programming window
codebase. After that will come the configuration of Ang, which should only rely
on knowing the location of the Arduino executable and the Ang executable.
So if we wanted to use Ang with Fritzing, would we distribute it with it or
rely on it as a separate download? It uses the MIT license, so we could
distribute it with Fritzing, but I'm not certain of what needs to be done if we
do that. I assume we should contact the author.
Original comment by bryant.m...@gmail.com
on 24 Jul 2010 at 7:49
Great news--looking forward to the hookup.
I'm guessing it would be a separate download, but maybe we'd provide a pointer.
For example, if the user selected "arduino", maybe the first time he clicked
the "Programmer: locate" button, it would explain that both the arduino and
angbt packages needed to be installed and where to get them. We should
probably do something similar with the picaxe package.
Original comment by irasc...@gmail.com
on 24 Jul 2010 at 9:36
Maybe a first-run help screen would be helpful for the programming window? It
could open when you first open the programming window and introduce the window,
some of its paradigms, and explain the toolchain and any required downloads.
Original comment by bryant.m...@gmail.com
on 25 Jul 2010 at 1:39
I like that idea. Perhaps, since the programming window is already a text
window, the help text could just be the default opening text, disappearing as
soon as you type something in or load a file. Maybe it's a different
color/face/font to distinguish it from actual program text.
Original comment by irasc...@gmail.com
on 25 Jul 2010 at 5:56
I would vote to separate the help text from the programming window text. A
popup window would be ideal, preferably with a checkbox to disable help for
next time. A lot of programs do it this way and I think it makes a lot of sense.
Original comment by bryant.m...@gmail.com
on 25 Jul 2010 at 4:58
I'd argue that the first time help for sketches appears in the window itself
rather than a separate popup, so adding it to the programming window itself
keeps things more consistent (and gives you fewer windows to wrestle with).
But I don't feel particularly passionate about it either way, so if there's
another strong opinion out there, speak up.
Original comment by irasc...@gmail.com
on 25 Jul 2010 at 5:17
I'd throw it in a popup as it's more clear that it's help text. This way we can
also include the checkbox.
The reason the help within the first-time help in the sketch works is it's a
graphical environment and so the help is cleanly separated to stand out, with
text in a textbox, that won't be the case. I have a pretty good idea of how
this should look, so I'll try to whip up some code for it at some point.
Back to actually integrating Ang with Arduino, it's not very easy to do, at
least on the mac. I've attached a patch that does what I need on the mac, but
it's not complete. The mac version also can't run to completion with only
Arduino installed as Ang calls things with a different name than they are in
the Mac binary.
At this point I believe Ang can't work on a Mac. This is my only testing
machine, so I'm not certain how it will work in other environments. I've posted
an issue to the Ang project, so we'll see how he responds.
I'm going to try to get in touch with the Arduino devs and see if they can give
me a timeline on Arduino support.
Original comment by bryant.m...@gmail.com
on 25 Jul 2010 at 6:06
Attachments:
So an update from the Arduino dev community: a command-line interface will be
included in the 1.0 September release. I'm still not certain if I will be
involved in its development or not, but it's gonna happen. I'm going to propose
excluding Arduino support from Fritzing releases until that release ships.
Original comment by bryant.m...@gmail.com
on 9 Aug 2010 at 9:08
Original comment by irasc...@gmail.com
on 7 Feb 2012 at 11:33
Arduino command-line functionality is finally coming with their version 1.5.2:
http://code.google.com/p/arduino/issues/detail?id=124
Original comment by andre.knoerig@gmail.com
on 16 Jan 2013 at 6:38
Original comment by irasc...@gmail.com
on 20 Jan 2013 at 8:25
Original issue reported on code.google.com by
bryant.m...@gmail.com
on 4 Jun 2010 at 3:15