Commit Graph

269 Commits

Author SHA1 Message Date
ole00
28d8737780 new PCB design v. 3.2
* Optional voltage booster on the board which can replace
  the mt3608 module. If mt3608 module is used the area on
  the board under the module is left unsoldered.
* Optional SPI RAM for future use to support bigger GALs/CPLDs
  on the UNO board. Not currently used by any GAL.
* Support for 3.3V Arduinos by splitting the 5V power rail and
  IOREF power rail. Very old Arduino UNOs R2 without IOREF
  header pin can use a solder bridge JP1 (marked as Vx on the
  bottom of the board) to join the 5V rail and IOREF power rail.
* HW support for internal AREF which is used to measure VPP.
  There is an extra footprint on the bottom of the board
  to solder another attenuation resistor (R19). For example
  ESP32-S2-Mini based Arduinos with 2.5V internal analog
  reference can use 100k resistor as R19 to reduce the max.
  3V sensing value to 2.5V.
* ZIF18 and ZIF19 connected to the shift register output pins.
  This is for supporting other GALS and CPLDs (via adapter).
* added 100K pull down resitor R18 to ZIF15 (to complement the 10k
  pull-up). This is to ensure the pin is held low when the On
  switch (SW1) is opened. It is used for detection the On switch
  is closed when programming ATF150X via JTAG.
2024-04-26 16:30:47 +01:00
ole00
998b1329c8 jtag: improve detection of power switch being turned off 2024-04-24 23:16:14 +01:00
ole00
a3e6f11b0f jtag: added debugging pp symbol to ignore failed matches
This can help printing data register when a mismatch
occurs.
2024-04-24 23:12:20 +01:00
ole00
7c0a32cba3 jtag: fix compilation warning 2024-04-24 23:09:01 +01:00
ole00
cf34c1dfee Sketch: support Arduino based on ESP32-S2 MCU
Because of the internal reference of 2.5V on Analogue pins
of ESP32-S2, the R6 must be modified from 20k Ohm to 16.67k Ohm.
This can be achieved by placing a new 100k Ohm resistor
in parallel with R6 resistor. Use this mod only when Arduino
is ESP32-S2 based.
2024-04-21 00:12:15 +01:00
ole00
babba5bca9 PC app: jtag: better handling of new line characters
Previously the new line characters were expected to be
part of the feed request message. This is not so on
ESP32 based Arduino library implementation. The new
line characters arrive later on separately after a small
pause This code change fixes 'corrupted feed request'
warning messages on such Arduino platforms.
2024-04-20 16:02:33 +01:00
ole00
afae1b2166 jtag: fuseconv.py: added support for ATF150XASV (3.3V)
The converted code ID check will match either AS or ASL or ASV
flavours of the ATF150X ICs.
2024-04-20 15:46:44 +01:00
ole00
9656fbadd3 xsvf: added support for ATF150XASV (3.3V)
The IDCODE check mask was updated to support:
ATF1502ASL: 0150203F or 0150303F
ATF1502ASV: 0151203F or 0151303F
ATF1504ASL: 0150403F or 0150503F
ATF1504ASV: 0151403F or 0151503F
The ID codes were found on https://bsdl.info
2024-04-20 15:31:53 +01:00
ole00
29df84d42e PC APP: released updated app with ATF150X support 2024-04-13 00:06:13 +01:00
ole00
e745ae9919 Image: added ATF150X adapter image 2024-04-13 00:02:44 +01:00
ole00
6230e7c55e PCB: updated ATF150X adapter
Previously the TDO pull-up was not properly connected
to VCC. The Rev.2 adapter can still be used, either
without the pull-up or with a small mod-wire to
connect the pull-up with the VCC."
2024-04-13 00:02:44 +01:00
ole00
18b3cea6a2 added JTAG utils for .jed to .xsvf conversion 2024-04-13 00:02:39 +01:00
ole00
7d20d778c6 jtag player: implement XWAITSTATE and XTRST
These new instructions are used by svf2xsvf OpenOCD tool.
2024-04-12 22:41:59 +01:00
ole00
fb22c14e9f jtag player: reduce serial buffer size to 62 bytes
Values bigger than 63 bytes seem to cause issue on AVR MCUs.
2024-04-12 22:41:49 +01:00
ole00
316d103456 PC app: JTAG player - decrease initial over-buffering
This change improves XSVF upload reliability.
2024-04-12 22:41:42 +01:00
ole00
cce891c513 PC app: play JTAG file: improved progress bar updates
When the chunk sizes were not power of 2 the progress bar
updates were irregular. This change ensures that any
upload progress is regularly updated."
2024-04-12 22:41:33 +01:00
ole00
ad9308e291 PC app: print file size of JED or XSVF in verbose mode 2024-04-12 22:41:19 +01:00
ole00
32468f6dd8 jtag: optimise memory usage 2024-04-09 21:07:33 +01:00
ole00
2b83233399 jtag: removed initialisation within the struct 2024-04-09 21:04:05 +01:00
ole00
56b687017a PC app: close serial port at the end of xsvf playback 2024-04-04 23:33:28 +01:00
ole00
c205579e9b Gerbers: added ATF150xAS and ATF150xASL adapter 2024-04-03 22:16:46 +01:00
ole00
7a3981a9b3 PCB: added ATF150xAS and ATF150xASL adapter 2024-04-03 22:16:46 +01:00
ole00
54600a153a XSVF: added xsvf files for ATF150X id and erase 2024-04-03 22:16:46 +01:00
ole00
a8ecb518cf PC APP: released updated app with ATF150X support 2024-04-03 22:16:46 +01:00
ole00
eac70f6c68 PC app: serial - add support for NO_CLOSE on Windows 2024-04-03 22:16:46 +01:00
ole00
0367a8b127 sketch: added JTAG XSVF player 2024-04-03 22:16:46 +01:00
ole00
718a908a9d sketch: improve pinmuxing when inactive
Previously unused pins were always set as output low.
Now, they are output low when active operation is in
progress, and they are set as input when inactive.
2024-04-03 22:16:46 +01:00
ole00
0e99f07370 PC app: added support for JTAG and ATF1502 and ATF1504 2024-04-03 22:16:46 +01:00
ole00
5621df2f1f PC app: format the list of GAL names
Up to 8 GAL names on the same line.
2024-04-03 22:16:46 +01:00
ole00
b733cd5e6a PC app: added progress bar update function 2024-04-03 22:16:46 +01:00
ole00
0761907067 PC App: fixed help text: serial port information 2024-04-03 21:43:32 +01:00
ole00
a3968f5c00 PC app release v.0.5.8 - updated 2024-03-23 16:20:30 +00:00
ole00
3b4921daa2 build script for OSX: compile with preprocessor _OSX_
The preprocessor symbol helps to distinguish the serial port
detection rule (OSX/Linux).
2024-03-23 16:16:46 +00:00
ole00
4238800190 PC App: guesses the serial port device name
When the serial device name is not passed with paramerer -d
then the PC app will try to find an existing serial device.

* On Windows: selects the COM device with the highest number.
* On Linux: selects the serial usb device in any order, but
       priority is given to devices with Arduino name.
* ON MAC OS: selects the last  /dev/tty.* or /dev/tty/wchusb*
       device in the order that OS lists them.

This serial port detection should work OK if you have only one
Arduino attached. If you have (and need to have) several
Arduinos or serial ports connected at the same time then pass
the '-d' parameter to specify which one to use.
2024-03-23 16:08:29 +00:00
ole00
e9aaf41c48 PC app release v.0.5.8 - updated 2024-03-23 11:04:36 +00:00
ole00
a48de726bf PC app: fix progress bar compatibility
The proress bar cusros hiding/revealing sequence was not
compatible with some Windows versions / shells.
This fix removes the escaped sequences and ensures the progress
bar is fully printed at the end of each iteration, which prevents
the visual artefacts caused by the jumping cursor.
2024-03-23 11:01:00 +00:00
ole00
1589119e7c sketch: setPinMux: unset internal pull-up on DOUT when inactive
See issue #61
2024-03-22 07:14:51 +00:00
ole00
37f93be2d3 PC app release v.0.5.8 - updated 2024-03-19 21:05:47 +00:00
ole00
757e13e55f build scripts: pass git commit hash as preprocessor symbol 2024-03-19 21:05:47 +00:00
ole00
52466f64c6 PC app: added git commit to version info 2024-03-19 21:05:47 +00:00
ole00
a9bf98b719 Sketch: reduced duration on VPP ramp-up
The VPP ramp-up was too long after the change of the calibration
scale in recent commits.
2024-03-19 21:05:32 +00:00
ole00
dabfcf5aad PC app: increase maximum time to wait for VPP measurement 2024-03-19 20:43:23 +00:00
ole00
79e33ab2a5 PC app: fix serial port read buffer overflow
Overflow happened when verbose printouts were enabled
in the Arduino sketch.
2024-03-19 20:41:43 +00:00
ole00
2754ff5c47 PC app: fixed typos in help text 2024-03-19 18:58:25 +00:00
ole00
49342b2174
README.md updated info about tap indices during calibration
The latest calibration indices are 2x higher than  in previous version.
2024-03-18 20:23:50 +00:00
ole00
e6d9a6ea2e
README.md: re-calibration needed for ver. 0.5.8 2024-03-17 21:32:57 +00:00
ole00
941142df71 PC app release v.0.5.8 2024-03-17 21:24:54 +00:00
ole00
733ea3c8e3 version increased to v.0.5.8 2024-03-17 21:15:05 +00:00
ole00
3ee0147d88 sketch: improved calibration, mcp4151 uses full tap scale
This change stores the digi pot indices in the scale 1-255
(previously 1 -128) so the stored values for calibration
are no longer valid after this change is uploaded to Arduino.

Please re-run the full calibration on your Afterburner!
2024-03-17 21:15:05 +00:00
ole00
103a99ab7a pc app: calibration takes longer time, wait longer
This is because the voltage settle time delay was increased
and also now 255 taps are scanned.
2024-03-17 21:15:05 +00:00