Adding an embedded in system debugger to board

Go To Last Post
9 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I am designing a system that will be somewhat inaccessible in installation, but with a requirement for field upgradability over USB, so need upgrade not using an external programmer. We could just implement a USB virtual Com port for upgrade with a boot loader program, but this solution says we can't do any actual debug in something close to an installed system. What would be great is to implement something like the embedded debug circuitry of the typical evaluation board, but my understanding is that ATMEL/Microchip don't provide that as a product to end users.

 

Do people think it might be possible to get them to change their mind. Our projected volumes are 1000s/year which puts us above what many would call 'End User', but isn't really High Volume.

 

I do see some options from places like Segger, who have an embedded J-Link, but some of their conditions seem onerous for us (though I understand some of the reason for them to have it).

 

Any other reasonable alternatives that people know of?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Surely, the population with the skills & information to use a debugger will be very small - so it would make more sense to just equip them with debuggers (Atmel-ICE, J-Link, whatever) rather than build in to every single unit?!

 

That is the "normal" approach ...

 

 

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

But getting to the board that has been sealed into the system is quite difficult, so including remote access may be a reasonable solution. System is REALLY embedded, so it isn't 'just attach the debugger to it'.

 

Much better to include a chip level solution inside then need to leave a full Atmel-ICE in the unit (which wouldn't fit anyway).

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

but you still have to connect to the embedded debugger to use it - so I don't see how this helps?

 

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

But I can bring out the USB bus on the system interconnect connector to connect to it (2 wires), and that same USB bus can provide a virtual com port to talk to the unit with, so it is sort of free.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

OK - I see now.

 

Have you looked at CMSIS DAP ... ?

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

That looks like it might be what I was looking for.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Search for “gdb stub “, perhaps?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I am sure that you would have to pay serious licence fees for J-Link or ST-Link but CMSIS-DAP should be free.    You will just be implementing the "debugger" section of a NXP, Freescale, TI, ... evaluation board.     All you need is an ARM chip to hold the CMSIS-DAP firmware.