Commit Graph

279 Commits

Author SHA1 Message Date
Vincent DEFERT
b32bbf99c8 Fixed version for new release 2023-09-01 20:07:23 +02:00
area-8051
cdc365a5f0
Merge pull request #89 from grigorig/doc_update
Updated list of tested models
2023-08-30 17:37:57 +02:00
Vincent DEFERT
521339066c Updated list of tested models 2023-08-30 17:36:00 +02:00
area-8051
48a36b90c9
Merge pull request #88 from grigorig/proto_fix
Fixed protocol autodetection to support STC8H1KxxT
2023-08-30 17:27:05 +02:00
Vincent DEFERT
1c37582952 Fixed protocol autodetection to support STC8H1KxxT 2023-08-30 17:24:28 +02:00
area-8051
6a598002e6
Merge pull request #86 from grigorig/area-8051-patch-1
Updated version to prepare next release
2023-06-02 12:18:53 +02:00
area-8051
fcf4dff166
Updated version to prepare next release 2023-06-02 12:16:56 +02:00
area-8051
bef3313056
Merge pull request #84 from grigorig/drop-debian-packaging
Drop Debian packaging scripts
2023-06-02 10:00:40 +02:00
area-8051
36c920dd77
Merge branch 'master' into drop-debian-packaging 2023-06-02 09:58:08 +02:00
area-8051
ad0becf1d0
Merge pull request #85 from grigorig/last-fixes
Updated documentation and fixed a few details
2023-06-02 09:57:41 +02:00
Vincent DEFERT
6254494f92 Updated documentation and fixed a few details 2023-06-02 09:55:36 +02:00
Grigori Goronzy
f881eccaff Drop Debian packaging scripts
They haven't been used for quite some time. pip/PyPI should be used
instead, at least as far as what we officially support here.
2023-06-01 21:24:03 +02:00
area-8051
ef06e311fc
Merge pull request #83 from grigorig/dump-mcu
Updated MCU models spreadsheet and extraction utility
2023-06-01 21:18:00 +02:00
Vincent DEFERT
6373620d18 Updated MCU models list and splitted in 2 spreadsheets to facilitate updates 2023-06-01 21:15:48 +02:00
Vincent DEFERT
8b55c166db Added argument to dump-mcu to generate spreadsheet with MCU flags 2023-06-01 21:10:03 +02:00
area-8051
ae7645cc73
Merge pull request #82 from grigorig/models
Updated list of tested MCU models
2023-06-01 20:31:26 +02:00
Vincent DEFERT
36bdf16cff Updated list of tested MCU models 2023-06-01 20:29:06 +02:00
area-8051
4c3c3065e0
Merge pull request #81 from grigorig/zh_CN
Added Chinese documentation from PR#55
2023-06-01 18:53:47 +02:00
Vincent DEFERT
717af49b16 Added Chine documentation 2023-06-01 18:51:13 +02:00
area-8051
a6b791b089
Merge pull request #80 from grigorig/pr64
Added protocol stc89a (BSL 7.2.5c) PR#64
2023-06-01 18:37:26 +02:00
Vincent DEFERT
4894e8f219 Added protocol stc89a (BSL 7.2.5c) PR#64 2023-06-01 18:34:44 +02:00
area-8051
f41ae5679f
Merge pull request #78 from grigorig/stcgal-patched
Integration of work done on stcgal-patched
2023-06-01 18:07:27 +02:00
Vincent DEFERT
1468d60005 Minor corrections after review 2023-06-01 08:50:30 +02:00
Vincent DEFERT
86bee9141a Removed Python 3.5 (no loonger available) 2023-05-29 09:34:48 +02:00
Vincent DEFERT
b43792ccd8 Added Loader argument to yaml.load 2023-05-29 09:30:44 +02:00
Vincent DEFERT
20ae770f8f Added support for all STC8 and STC32 series 2023-05-29 09:15:07 +02:00
Vincent DEFERT
796a17f7cf Attempt at guessing the meaning of MCU flags 2023-05-29 09:13:25 +02:00
Vincent DEFERT
4840d3cda5 dump-mcu.c fully automates MCU models extraction from STC-ISP's executable 2023-05-29 09:13:10 +02:00
Grigori Goronzy
2d3c24fc3a Timing improvements
* Reduce delays from 200 ms to 100 ms, since 200 ms tends to be too long
  overall.
* Increase pulse interval to 30 ms to avoid the chance of stray pulses
  after MCU starts sending info packet.
* Add 30 ms delay after autoreset cycle to avoid glitches on startup
2021-01-09 16:54:01 +01:00
Grigori Goronzy
761c68e469 frontend: fix disconnect when autodetection fails
We don't know the protocol version so we can't actually disconnect,
just skip it.
2021-01-09 16:50:08 +01:00
Grigori Goronzy
9900e3088d Blacklist STC8G series
stcgal may brick these untested MCUs.

Fixes #63.
2021-01-09 03:27:45 +01:00
Grigori Goronzy
15e04c1626 Update MCU database
Update MCU database from STC-ISP 6.87P.
2021-01-09 03:12:10 +01:00
Grigori Goronzy
187aa9a3cf stc15: erase EEPROM flash when needed
If option eeprom_erase_enabled is False, we need to signal to the BSL
to explicitly erase EEPROM flash when needed.

Addresses #59.
2021-01-09 02:16:27 +01:00
Grigori Goronzy
482e6b139f
Merge pull request #62 from grigorig/fix-stc15f104w
stc15: fix baudrate switching
2021-01-09 02:01:29 +01:00
Grigori Goronzy
9202399a84 Add STC15F104W variant to compatibility list 2021-01-09 01:58:32 +01:00
Grigori Goronzy
3cf2cb38e7 stc15: reduce sleep after baudrate switch
We just sleep 200 ms, but apparently that's already too much with some
handshake baudrates. Cut it in half to fix
failures with "-l 9600" in some cases.

Addresses #17.
2021-01-09 01:18:56 +01:00
Grigori Goronzy
384471f765 stc15: fix fuzzing test failure 2021-01-06 20:08:26 +01:00
Grigori Goronzy
df2fbc23cd stc15: fix baudrate switching
Baudrate switching fixes for both HW and SW UART devices:

* Program secondary SW UART timing parameter correctly. Supposedly this
  controls the sampling position when receiving data.
* Swap around trim range/adjust parameter for HW UART devices (as
  determind by older traces)
* Use correct constant for timing calculations

This should fix some STC15x10xW series MCUs. Compatibility to other
devices might be improved as well.

Addresses #17.
2021-01-06 19:56:46 +01:00
Grigori Goronzy
77df068efd docs: note that you can actually read back EEPROM 2021-01-03 20:31:07 +01:00
Grigori Goronzy
2fb96d6236 docs: note autodetection incompatibilities 2021-01-03 20:30:41 +01:00
Grigori Goronzy
c2fd3ab710 Add -e/--erase option
Erases the flash memory without any programming. Mutually exclusive with
providing a file to flash.
2021-01-03 19:57:50 +01:00
Grigori Goronzy
0d5e8e645f Revert "protocols: fix off-by-one in payload extraction"
This reverts commit 0e020f2aa4.

Nothing needed fixing here. This strips off one byte too many.
2021-01-03 18:40:27 +01:00
Grigori Goronzy
1ec855e6a1 Revert "Add "stc89a" protocol"
This reverts commit c5d509d1fa.
2021-01-03 18:36:05 +01:00
Grigori Goronzy
d708a00e9e Revert "docs: add stc89a to protocol information"
This reverts commit 5c2950f084.
2021-01-03 18:35:55 +01:00
Grigori Goronzy
5c2950f084 docs: add stc89a to protocol information 2021-01-03 16:52:44 +01:00
Grigori Goronzy
c5d509d1fa Add "stc89a" protocol
This protocol variant is designed for newer STC89 series chips with BSL
version 7.x.x. The new firmware uses framing
with 16-bit checksum.

This protocol variant is currently untested because I don't have any
hardware at hand.

Addresses #50, #40.
2021-01-03 16:41:05 +01:00
Grigori Goronzy
0e020f2aa4 protocols: fix off-by-one in payload extraction
Drop all of the checksum bytes. This didn't take the end-of-frame marker
into account.
2021-01-03 16:10:05 +01:00
Grigori Goronzy
b46d81a184 Add ihex tests
Add basic ihex module tests for reading and writing.
2021-01-03 15:53:38 +01:00
Grigori Goronzy
ad5a532ab9 ihex: fix writer str/bytes confusion
The HEX writer was never tested/used before and didn't work. Some
leftovers from the Python 2 conversion are the culprit.
2021-01-03 15:51:48 +01:00
Grigori Goronzy
b3741af045 gitignore: add coverage report outputs 2021-01-03 14:11:52 +01:00