You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
basically need to patch the 'avrdude.conf' file that's include with the IDE files.
a typical patch might look like this (just for the xmeg128a4u)
--- /usr/local/etc/avrdude.conf 2017-05-10 19:17:33.000000000 -0700
+++ avrdude.conf 2018-03-04 18:46:31.998213000 -0800
@@ -14010,10 +14010,21 @@
part parent ".xmega"
id = "x128a4u";
desc = "ATxmega128A4U";
signature = 0x1e 0x97 0x46;
usbpid = 0x2fde;
+ has_jtag = yes;
+ has_pdi = yes;
+ nvm_base = 0x01c0;
+
+# needed for wiring aka stk500v2 protocol
+ reset = dedicated;
+ pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
+ "x x x x x x x x x x x x x x x x";
+
+ rampz = 0x3b; # verified in iox128a1u.h
+
memory "eeprom"
size = 0x800;
offset = 0x8c0000;
page_size = 0x20;
@@ -14044,10 +14055,54 @@
memory "flash"
size = 0x22000;
offset = 0x800000;
page_size = 0x100;
readsize = 0x100;
+# needed for wiring aka stk500v2 protocol
+ paged = yes; # this appears to affect how it is read/written with stk500v2
+ num_pages = 544; # 272;
+ blocksize = 0x100; # #0x200
+ mode = 0x41;
+ delay = 10;
+
+ read_lo = " 0 0 1 0 0 0 0 0",
+ "a15 a14 a13 a12 a11 a10 a9 a8",
+ " a7 a6 a5 a4 a3 a2 a1 a0",
+ " o o o o o o o o";
+
+ read_hi = " 0 0 1 0 1 0 0 0",
+ "a15 a14 a13 a12 a11 a10 a9 a8",
+ " a7 a6 a5 a4 a3 a2 a1 a0",
+ " o o o o o o o o";
+
+ loadpage_lo = " 0 1 0 0 0 0 0 0",
+ " x x x x x x x x",
+ " x a6 a5 a4 a3 a2 a1 a0",
+ " i i i i i i i i";
+
+ loadpage_hi = " 0 1 0 0 1 0 0 0",
+ " x x x x x x x x",
+ " x a6 a5 a4 a3 a2 a1 a0",
+ " i i i i i i i i";
+
+ writepage = " 0 1 0 0 1 1 0 0",
+ "a15 a14 a13 a12 a11 a10 a9 a8",
+ " a7 x x x x x x x",
+ " x x x x x x x x";
+
+ load_ext_addr = " 0 1 0 0 1 1 0 1",
+ " 0 0 0 0 0 0 0 0",
+ " 0 0 0 0 0 0 0 a16",
+ " 0 0 0 0 0 0 0 0";
+ ;
+
+ memory "signature"
+ size = 3;
+ offset = 0x1000090;
+# needed for wiring aka stk500v2 protocol
+ read = "0 0 1 1 0 0 0 0 x x x x x x x x",
+ "x x x x x x a1 a0 o o o o o o o o";
;
memory "usersig"
size = 0x100;
offset = 0x8e0400;
Note that the # of pages depends on the NVRAM size and the correct page size. In some cases, the avrdude.conf file may have the wrong read size and/or page size, in which case, it will be necessary to test it on a real CPU.
As an example, the xmega128a1u had 512 byte pages. The xmeag128a4u has 256 byte pages. In all other ways they're pretty much the same. For all supported CPUs this will need testing.
The text was updated successfully, but these errors were encountered:
basically need to patch the 'avrdude.conf' file that's include with the IDE files.
a typical patch might look like this (just for the xmeg128a4u)
Note that the # of pages depends on the NVRAM size and the correct page size. In some cases, the avrdude.conf file may have the wrong read size and/or page size, in which case, it will be necessary to test it on a real CPU.
As an example, the xmega128a1u had 512 byte pages. The xmeag128a4u has 256 byte pages. In all other ways they're pretty much the same. For all supported CPUs this will need testing.
The text was updated successfully, but these errors were encountered: