I succesfully tried to put my application into a ConnectMe with JTAG interface, using naftp application. The application runs OK.
But, when I tried to put the same binary file into ConnectMe without JTAG (using both upgrade feature from html page or tftp) the application didn’t start.
The same thing happened whe I tried to download a sample example instead of my code.
Any ideea? Should the code be built different for ConnectMe with and without JTAG?
Thanks in advance
The big difference between the JTAG and non-JTAG parts is the missing “/com/1” device. The non-JTAG will hang without it if your code is looking for it.
Check your BSP compilation to make sure that you have the line in bsp.h set to:
#define BSP_SERIAL_PORT_2 BSP_SERIAL_NO_DRIVER
and recompile the BSP if it wasn’t.
Also make sure that you have in your appconf.h:
#define APP_STDIO_PORT NULL
The JTAG emulator sets up some registers when it loads the code - maybe its doing something your application doesn’t.
Also you need to have the right header and so on - should be added automatically by the makefile, I think.
I would strongly recommend NOT becoming too dependant on the use and availability of the “Diagnostics Mode” as mentioned in this thread.
There are two reasons for this:
This menu is meant for use in Digi’s manufacturing environment and therefore there is no guarantee that this interface will not change in the future.
With the release of our next generation Connect modules, particularly those meant for use by those developing their own NET+OS application, this interface does NOT exist. With these new modules the entire flash is unlocked and the Digi boot loader model (containing the Diagnostics Mode interface) does not exist.
Could someone please give me the details to use the diagnostic mode of a Connect ME to put on working firmware. I put non-working firmware onto a non-jtag device.
Actually, I got it working with customer support help: The Flash should be erased before flashing the code. This is because of a file system incompatibility in the non-JTAG module. After doing this, it started to work
should the Connect ME device without the JTAG be able to connect via the Raven Debugger to my PC coz I can’t get it to connect and download the naftpapp program. If not what way is there to get the program onto the Connect ME device.
There was a thread about this problem back in May that is still available. It’s a couple of pages back into the archives. It boils down to needing to add the naftpapp functions into your application, since the SDK does not include it. But you have to use a Digi utility to load your app into each device when it comes out of the box.
Check back a few threads (Digi Connect ME without JTAG) - you can use the Diagnostic mode to recover a non-JTAG ConnectME if it has a bad program on it.
Put a switch (so you can do it dynamically) on pin 18 to ground. When grounded on 18, the ConnectME will go into diagnostic mode where you can use TFTP client to update the image on the module. It is self explanitory. This is embedded in the bootstrap so you can’t destroy it and is always available for recovery.
If you need a TFTP server, try http://www.solarwinds.net.
According to your developers, there will be two versions of the module in the next release, one with the bootstrap and one without.
Please check into this, you are scaring my boss.
> I would strongly recommend NOT becoming too dependant
> on the use and availability of the “Diagnostics Mode”
> as mentioned in this thread.
I do not depend on diagnostics mode in production units, but while testing software it is possible to lock up the module in such a way that only the diagnostics mode can bring you back. If you are planning to remove the diagnostics mode, then what will be available in its place? How will you program the new modules if your application fails?
Since this was first announced a month or two ago we paniced as well. I have discussed this with the Connect development team (one advantage to being local) and they say that there will be two versions of the ConnectME with the next release.
Like Cameron says, one will not have the bootstrap. This is for uCLinux developers.
One will still have the bootstrap like the current one does.