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

SerialUPDI does not work with EA-series, nor does jtag2updi. #469

Open
SpenceKonde opened this issue Aug 10, 2023 · 4 comments
Open

SerialUPDI does not work with EA-series, nor does jtag2updi. #469

SpenceKonde opened this issue Aug 10, 2023 · 4 comments
Labels
Bug Behavior of core does not match API or reasonable expectations CRITICAL Severe bug which is top priority to fix

Comments

@SpenceKonde
Copy link
Owner

At least now I can compile for EA!

@SpenceKonde
Copy link
Owner Author

Note that there are no plans to change this on jtag2updi; it is considered obsolete.

There is an AVR library to do UPDI programming in the works; that is my replacement for JTAG2UPDI, which was awful to work with. It will be implemented alongside a librarification of ArduinoAsISP, and a python upload script, and the hardware I'm designing for is an AVR-DB (has to have MVIO to do the standalone programming unless the target is required to run at 3.3V - since that's what flash chips run at, you need either the flash chip at 3.3 on MVIO, or the chip + flash at 3.3V and target on MVIO. (I chose the latter), the 128k version not because I anticipate a shortage of code space, but because I think that having massive buffers will be key to killing off USB latency, hence the 16k of ram is the attraction there. Based on tests with SerialUPDI, that method falls significantly short of the write speeds the hardware is capable of, particularly on tinyAVR and megaAVR parts, where pages are small, write times per page are short, and with the baud rate cranked way up, programming time is more latency than anything else. But if I could buffer multiple pages, and simultaneously be receiving a later page while writing and earlier one, it might be possible to reach near-theoretical speeds. Dx would see smaller improvements (their pages are larger and their overhead is smaller in both bytes and round trips (latency-periods). Would be sweet to have that ready and waiting for the DU's, which would be an even more attractive platform, even with half the RAM.
In any event, the idea is to be able to store a library of sketches on the flash chip (8mbyte or so), and have a simple GUI to use for standalone programming. Index will be stored on an EEPROM chip (greater rewrite endurance). Obviously this will include xeroxing unlocked chips into it's flash too.

But that's a ways off

In the near term I need to make serialupdi work.

@SpenceKonde SpenceKonde added Bug Behavior of core does not match API or reasonable expectations CRITICAL Severe bug which is top priority to fix labels Aug 11, 2023
@SpenceKonde SpenceKonde added this to the 1.6.x - EA support added milestone Aug 11, 2023
@technoblogy
Copy link

technoblogy commented Feb 7, 2024

I wanted to test some code on the EA series, so as a temporary workaround I tried using DxCore with an AVR64EA48 Curiosity Nano board with the Programmer option set to Curiosity Nano (nEDBG, debug chip :ATSAMD21E18).

However, that failed with:

avrdude: Version 6.3-20201216
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "/Users/david/Library/Arduino15/packages/DxCore/hardware/megaavr/1.5.11/avrdude.conf"
         User configuration file is "/Users/david/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

avrdude: AVR Part "avr64ea48" not found.

Any suggestions? Thanks, David

@pcfreak1201
Copy link

I'm not sure if/how avrdude 6.3 support the AVR64EA ... actual is 7.3:
https://github.com/avrdudes/avrdude/releases/tag/v7.3
and there were some issues in 7.2 ...

@mcuee
Copy link

mcuee commented Feb 16, 2024

I'm not sure if/how avrdude 6.3 support the AVR64EA ... actual is 7.3: https://github.com/avrdudes/avrdude/releases/tag/v7.3 and there were some issues in 7.2 ...

Yes in order to better support serialupdi and new chips, it is better to upgrade to avrdude 7.3.

Reference:
https://github.com/avrdudes/avrdude/blob/main/NEWS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Behavior of core does not match API or reasonable expectations CRITICAL Severe bug which is top priority to fix
Projects
None yet
Development

No branches or pull requests

4 participants