Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Debug probe support for atmel-ice / dragon and atmega328p processor #53

Open
warrenwoolseyiii opened this Issue Jun 19, 2017 · 4 comments

Comments

Projects
None yet
4 participants
@warrenwoolseyiii
Copy link

warrenwoolseyiii commented Jun 19, 2017

As the title states I am looking for debug probe support for the atmel-ice / and or dragon debug probes. I specifically need support for the atmega328p processor which I am using in a custom application.


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

@valeros

This comment has been minimized.

Copy link
Member

valeros commented Jun 20, 2017

Hi @warrenwoolseyiii ! Thanks for your request!
We don't have required hardware, so it would be great if you could help us implement initial support for debugging in atmelavr platform.
First steps:
Install the development version of atmelavr:

pio platform uninstall atmelavr
pio platform install https://github.com/platformio/platform-atmelavr.git

Then create a new project and modify platformio.ini to fit your needs, e.g.:

[env:uno]
platform = atmelavr
framework = arduino
board = uno
debug_port = :4242
debug_tool = custom
debug_init_cmds =
  target remote $DEBUG_PORT
  file "$PROG_PATH"
  load
debug_server =
  /path/to/avarice
  --edbg
  --debugwire 
  --ignore-intr 
  :4242

Now you can start debugging session from terminal using pio debug --interface gdb -x .pioinit
Some of above commands might not work, especially load (in this case you will need to upload debug version of firmware manually using avrdude)

@warrenwoolseyiii

This comment has been minimized.

Copy link
Author

warrenwoolseyiii commented Jun 20, 2017

@albertskog

This comment has been minimized.

Copy link

albertskog commented Jan 18, 2018

How's the progress @warrenwoolseyiii, did you manage to get it working? 😄

@kasbah

This comment has been minimized.

Copy link

kasbah commented Mar 3, 2018

I tried this and got:

$ pio debug --interface gdb -x .pioinit
PlatformIO Plus (https://pioplus.com) v0.14.1
Error: Traceback (most recent call last):
  File "main.py", line 128, in main.main
  File "/home/kaspar/.local/lib/python2.7/site-packages/click/core.py", line 700, in __call__
    return self.main(*args, **kwargs)
  File "/home/kaspar/.local/lib/python2.7/site-packages/click/core.py", line 680, in main
    rv = self.invoke(ctx)
  File "/home/kaspar/.local/lib/python2.7/site-packages/click/core.py", line 1027, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/kaspar/.local/lib/python2.7/site-packages/click/core.py", line 873, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/kaspar/.local/lib/python2.7/site-packages/click/core.py", line 508, in invoke
    return callback(*args, **kwargs)
  File "/home/kaspar/.local/lib/python2.7/site-packages/click/decorators.py", line 16, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "cmd_debug.py", line 61, in cmd_debug.cli
  File "cmd_debug.py", line 66, in cmd_debug.cli
  File "cmd_debug.py", line 235, in cmd_debug.validate_debug_options
TypeError: argument of type 'NoneType' is not iterable

============================================================

An unexpected error occurred. Further steps:

* Verify that you have the latest version of PlatformIO using
  `pip install -U platformio` command

* Try to find answer in FAQ Troubleshooting section
  http://docs.platformio.org/page/faq.html

* Report this problem to support@pioplus.com

============================================================
$ pio --version
PlatformIO, version 3.5.2rc2
$ pio update
...
Platform Atmel AVR
--------
Updating atmelavr                        @ 5d08019        [Up-to-date]
Updating toolchain-atmelavr              @ 1.40902.0      [Up-to-date]
Updating framework-arduinoavr            @ 1.10620.2      [Up-to-date]
...

With PlatformIO 3.5.1 I get:

$ pio debug --interface gdb -x .pioinit
************************************************************************************
Obsolete PIO Core v3.5.1 is used (previous was 3.5.2rc2)
Please remove multiple PIO Cores from a system:
http://docs.platformio.org/page/faq.html#multiple-pio-cores-in-a-system
************************************************************************************
PlatformIO Plus (https://pioplus.com) v0.14.1
Error: Traceback (most recent call last):
  File "main.py", line 128, in main.main
  File "/tmp/venv/local/lib/python2.7/site-packages/click/core.py", line 700, in __call__
    return self.main(*args, **kwargs)
  File "/tmp/venv/local/lib/python2.7/site-packages/click/core.py", line 680, in main
    rv = self.invoke(ctx)
  File "/tmp/venv/local/lib/python2.7/site-packages/click/core.py", line 1027, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/tmp/venv/local/lib/python2.7/site-packages/click/core.py", line 873, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmp/venv/local/lib/python2.7/site-packages/click/core.py", line 508, in invoke
    return callback(*args, **kwargs)
  File "/tmp/venv/local/lib/python2.7/site-packages/click/decorators.py", line 16, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "cmd_debug.py", line 61, in cmd_debug.cli
  File "cmd_debug.py", line 66, in cmd_debug.cli
  File "cmd_debug.py", line 233, in cmd_debug.validate_debug_options
AttributeError: 'PlatformBoardConfig' object has no attribute 'get_debug_tool_name'

...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.