patchAVR Downloader/UploaDEr - Patches: patch #9565, Patch for WiFi AVR Programmer,...


You are not allowed to post comments on this tracker with your current authentication level.

patch #9565: Patch for WiFi AVR Programmer, uPDI support for jtagmkII, and serial-over-network improvements

Submitter:  Steve Woodford <scdoubleu>
Submitted:  Wed 14 Feb 2018 04:29:49 PM UTC
Category:  None Priority:  5 - Normal
Status:  In Progress Privacy:  Public
Assigned to:  joerg_wunsch Open/Closed:  Open

Sun 21 Nov 2021 09:22:30 PM UTC, comment #3: 

Well, all that timeout handling is a mess. A lot of that is probably just heritage from AVRDUDE's 22-year old history.

I wonder whether there's a better way than introducing just another timeout hack^H^H^H^Hsetting though.

The jtagmkII.c code tries to implement a kind of adaptive timeout setting, by doubling the value on missed transactions. Doesn't that already help in your case?

Short of that, maybe we should implement a kind of per-programmer notion of a short vs. long timeout (defaulting to 100 ms / 5 s) that is subsequently be used to toggle between both values. Then, the wavr programmer driver could establish a longer "short" timeout than those 100 ms.

How does that sound?

Joerg Wunsch <joerg_wunsch>
Group administrator
Wed 10 Nov 2021 08:06:52 AM UTC, comment #2: 

Thanks for looking over the patch.

From memory, I think the fixed ethernet timeout was required because round-trip times for TCP over WiFi can exceed the low values set by some drivers.

For instance, jtag3.c sets serial_recv_timeout to 100 mS, which is cutting it fine on a moderately congested WiFi connection.


Steve Woodford <scdoubleu>
Tue 09 Nov 2021 09:32:45 PM UTC, comment #1: 

I reviewed the patch, and mostly like it.

What I don't understand is why this SERIAL_ETHERNET_TIMEOUT is needed. The basic idea behind that serial_recv_timeout variable is that individual drivers might override the default. Why can't that also be used for the network traffic here?

Joerg Wunsch <joerg_wunsch>
Group administrator
Wed 14 Feb 2018 04:29:49 PM UTC, original submission:  

Here are a set of patches against trunk which add the following features:

- support for my WiFi-enabled AVR programmer which I’ve just started selling commercially,
- support for uPDI in the jtagmkII protocol (used by the above programmer),
- tweak serial timeout in ser_posix.c/ser_win32.c to be more network-friendly.

The programmer supports ISP, PDI and uPDI using the jtagmkII protocol using the "-p net:<ip-address>:<port>" option. It also supports ISP and PDI over stk500v2, and I may extend that to uPDI later.


Steve Woodford <scdoubleu>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #43314:  avrdude-wavr-jtag2-updi.diff.gz added by scdoubleu (6KiB - application/x-gzip)


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by joerg_wunsch (Posted a comment)
  • -email is unavailable- added by scdoubleu (Submitted the item)
  • -email is unavailable- added by scdoubleu

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.


    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2021-11-09 joerg_wunsch StatusNone In Progress
        Assigned toNone joerg_wunsch
    2018-02-14 scdoubleu Attached File- Added avrdude-wavr-jtag2-updi.diff.gz, #43314
        Carbon-Copy- Added -email is unavailable-

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code