Hello, Are the other Cortex M4 development tools that you will provide a how-to? That is, how do we use other tools besides the Arduino IDE to program the Neo M4? Do you have examples that you can share? When can we expect to have the M4 recognized by a PC when a USB cable is plugged into a PC? (will we be able to soon?) Thank, -Jack
Here is what I did, working on a simple script, to make this easier... 1. download mqx4.1.0 from Freescale 2. download the latest gcc tools from https://launchpad.net/gcc-arm-embedded (I'm using 4.9) i unpack gcc directory below 2. Create the following tree structure gcc mqx-4.1.0 mqx-"what your app is" i.e mqx-tim under the mqx-tim is several directories bsp --- this is a copy of the bsp directory from Freescale config -- copy from freescale examples-- example M4 projects 3. need to add gcc tools to your path .. ie cd gcc/gcc/gcc-arm-none-eabi-4_9-2015q3/bin export PATH=$PATH:$PWD 4. cd into mqx-tim make creates M4 downloads.. I think one of the issues is working with the license from Freescale.. also, running from DDR instead of SDRAM..
You can program the M4 by : 1. Bare Metal - Launching a C program by setting up the vector table and enabling the M4 from the A9. There are some FSL examples which demonstrate this, they may need slight alteration for the Neo. 2. Using MQX - This is FSL's RTOS which gained some support for the imx6sx. There are some patches to overlay for Neo here , ideally a new BSP should be created instead of overlaying a patch. There some doubts about the longevity of FSLs MQX because of the popularity of FreeRTOS. Having FreeRTOS support longer term may be better option. You can google to find out more about 1 and 2. I'd recommend you review the imx6sx reference manual to get a better under of the A9/M4 architecture because its not like a traditional cortex M4 and need to understand how the architecture fits to together if you are contemplating coding for it. I'd recommend a JTAG debugger as well. In terms of tools, you can use a simple text editor plus gcc (arm-none-eabi-gcc) for compilation. If you want to use Eclipse then this article will give you a starting point. BTW I have done both. Whatever option you chose I suggest you first grasp a good understanding of Cortex M3/M4 programming because the imx6sx M4 is different and you need to be aware of those differences. There is no boot rom for the M4. So there is no easy solution for what you are expecting.
We have worked on a solution that lets you program the M4 through the Arduino IDE from an external PC and moreover you can get the serial of the M4, through USB. It is explained in this guide: http://www.udoo.org/docs-neo/Arduino_M4_Processor/Programming_Arduino_M4_from_External_PC.html Make a Ctrl + F search for "Remote serial monitor" and you'll be good to go.
Hi Andrea, Good to hear from you. We knew that the M4 could be programmed with the Arduino IDE for a while. I was asking about other development tools besides Arduino IDE. i.e., other ARM development tools. If/how can we use Eclipse based ARM GCC. For example Kinetis Design Studio - Freescale NXP. That may be a way to get away from the Arduino Libraries issues no? Thanks, -Jack