Actually no, I don't have a lot of Atmel experience - I downloaded Atmel Studio and Visual Micro about 10 minutes apart. What I've got is a lot of {micro$**t} Visual Studio experience - years of it - that enables me to hack the project files because I've got a fair idea of what's in them
Great well thanks for making every test with a solution containing 10 projects for a tool that you have only used for 10 minutes and thanks for not reading the two getting started articles linked on every page of visualmicro.com and on the atmel studio page
Please keep in mind that this tool is primarily free and support needs to be kept to a min.
Q: Why didn't you use Visual Studio Pro instead of Atmel Studio? It's better for viewing library sources. Project>Show all sketch sources toggles your library and arduino core sources into the project. The feature doesn't yet work in atmel studio because it doesn't support virtual solution/project folders.
<feigned_shocked_disbelief>Arduino cuts corners? Really?</feigned_shocked_disbelief> I hadn't noticed...
Arduino cuts corners for mainly good reasons and provides a platform for rapid prototyping.
Visual Micro allows you to switch off certain arduino features such as auto generation of prototypes, also allows atmel programmers to be used which you would need to do if you dumped Arduino because that's one of the corners they conveniently cut
In addition to existing features it is true that we currently working on looking at how we can allow pro users to step from an Arduino project into a raw Atmel project.
Quote:This is really useful information for refactoring my project files. I had not recognized the imortance of the Visual Micro directory within the project folder, or that the vsarduino.h file is a required component of the process.
I only mention it so that you know the vsarduino.h is not part of the compile or required if you want to include the project in source safe. It is auto created and auto maintained by Visual Micro. The best way to determine if your project is under the control of Visual Micro is to attempt a build.
The sketch name and folder name rules have always been the case for Arduino. The .cppproj name just makes sense so Visual Micro enforces it but if you let Visual Micro set your projects up for you there would not be any need to mess about with file and folder names.
Quote:I read a comment recently that where the Arduino IDE does so many things "under the hood" that it actually gets in the way of experienced programmers. I'm one who fits squarely in the middle of that category. Unfortunately, it seems that in ensuring compatibility with the Arduino IDE, Visual Micro is following the same path of being in the way.
I look forward to hearing what exactly gets in the way.
We can always consider supporting it but you might find much is already possible via the Arduino 1.5.x configuration system and the many vm options
Visual Micro does what Arduino does for a reason. It's difficult enough supporting people with a fixed known system + people can create their own Atmel Studio projects easily enough, can also use the Arduino tool chain to compile in any way they see fit. Just needs a bit of knowledge.
I suspect that the people who wanted to use Arduino but thought it got in the way didn't really want to use Arduino in the first place. I also think many technical people would like Arduino to be more technical. I will trade "technical" with "getting the job done". It's just no fun if it gets too complicated and people have to learn loads to get projects working.
Quote:FWIW, everything has been compiling and uploading properly in the Arduino IDE, and it all built properly in Atmel Studio once I got the project and solution setup figured out.
Actually you will have read in the setup guide that you can simply use File>Open>File and open a master.ino of any Arduino sketch. Visual Micro will detect the arduino sketch and ask if you want to create an Arduino project. If you click yes a project will be created and all the .ino/cpp files will be added.
Quote:Buidling with the Atmel IDE gave me the first report I'd seen of how much RAM the program is using - and the Visual Micro build of my simple test sketch did NOT report RAM usage - which is a tremendous step backwards, in my opinion.
The simple ram report you refer to is displayed by Visual Micro if you use an Arduino 1.5.x system. In 1.5.x the method of obtaining the ram report is in the config files so Visual Micro does not have to hard code it. I think you should look at the options available from vm before commenting on what is a backward step especially seeing you have read zero pages from visualmicro.com
1.0.x has a lot of hardware coded stuff, it sounds like they have added the 1.5 style ram report in the latest version because it didn't do that in 1.0.x until recently. We will add that for the 1.0.x version when time permits but with everyone moving to 1.5.x it doesn't seem like a huge priority especially because we have the memory and dis-assembly reports as options in the project properties (visual micro project properties not the atmel ones).
If you don't know how to view the project properties please search for project properties in the wiki.
Quote:My primary motivation in turning away from the Arduino IDE was I need to be able to debug my program on the Arduino - a capability the Arduino IDE is totally lacking.
Intellisense, fast compile, drill down from compiler errors, advanced memory report, jumping to code definitions are are just a few of the visual micro benefits and just as useful as the debugger.
Quote:I have a few libraries in the main Arduino IDE/libraries folder that I customized since I downloaded them from the 'net. In addition, I have several proprietary ones there that I wrote. For the customer project I'm working on, there are several custom libraries in the sketch folder. I doubt that my customer would be happy with me sharing their source code. Perhaps it would be more useful for you to zip the visual micro files and send them to development [at] theoriginalprototype.com.
We can add more trace info to help but you can probably work it out for yourself. Take a look at the "Project>add/import sketch library" menu and you will probably see some libs missing. This might give an indication as to what it causing the problem.
I probably only need a directory tree listing to see the problem.
Quote:I just referred to the Atmel Studio IDE. When I looked on the Tools->Visual Micro menu, I found that "Upload Using Programmer" was checked. When I unchecked it, the simple test sketch was uploaded to the board - so that's one problem solved.
"Tools>Visual Micro>Upload using programmer" is un-ticked by default so you must have ticked it by mistake when clicking about. A couple of other people have also done this as you will see if you search this forum for "avrdude: usbdev_open(): did not find any USB device"
Quote:Using a programmer for upload isn't something I'm trying to do - all I want to do right now is be able to debug my program on the Arduino: I had to do an extensive rearrangement of the code to put the FSM state information into PROGMEM because I was pretty sure I was running out of RAM (but had no way of knowing, since the Arduino IDE never says anything about RAM usage). When I tried to run the updated program, it didn't work - and doing "by guess and by golly" debugging has become impractical: I need to be able to see what's actually going on inside the processor!
If you have used all your ram then software debug is not an option unless you are already using the Serial port and the same Arduino functions that the debugger uses. However you can buy an avr jtag ice3, plug into the icsp, hack the reset line then open the file for debug