Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ first.
* [Appendix D: Official Expansion Cards](X16%20Reference%20-%20Appendix%20D%20-%20Official%20Expansion%20Cards.md#appendix-d-official-expansion-cards)
* [Appendix E: Diagnostic Bank](X16%20Reference%20-%20Appendix%20E%20-%20Diagnostic%20Bank.md#appendix-e-diagnostic-bank)
* [Appendix F: The 65C816 Processor](X16%20Reference%20-%20Appendix%20F%20-%2065C816%20Processor.md#appendix-f-the-65c816-processor)
* [Appendix G: SMC Recovery with Mac OS](X16%20Reference%20-%20Appendix%20G%20-%20SMC%20Update%20and%20Recovery.md)

## External Links

Expand Down
2 changes: 1 addition & 1 deletion X16 Reference - 15 - Upgrade Guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ TODO: link to instructions for each solution in the matrix
| Commander X16 | - | - | - | - |
| USBtinyISP | arduino | arduino | arduino | - |
| XGecu TL866II+ | Xgpro | - | - | - |
| XGecu TL866-3G / T48 | Xgpro | - | - | - |
| XGecu TL866-3G / T48 | Xgpro | - | [minipro](X16%20Reference%20-%20Appendix%20G%20-%20SMC%20Update%20and%20Recovery.md) | - |

## VERA

Expand Down
56 changes: 56 additions & 0 deletions X16 Reference - Appendix G - SMC Update and Recovery.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Appendix G: SMC Update and Recovery

**Target Component:** SMC (ATtiny861A)
**Programmer:** TL866 series (including TL866-3G/T48)
**Software:** minipro ver 0.7

### Installing the minipro Command Line Utility

This update procedure was tested with minipro ver 0.7.

For a complete list of minipro installation alternatives, visit the [minipro GitLab page](https://gitlab.com/DavidGriffith/minipro).


### Downloading SMC Firmware

Use only the official releases of the SMC firmware, which can be found on the [X16 Community GitHub page](https://github.com/X16Community/x16-smc/releases).

Download the firmware in Intel hex file format, such as SMC-47.0.0-firmware_with_bootloader.hex. Note that the .bin file cannot be used for the update described here.

### Creating a Fuses Config File

Create a file named fuses.cfg with the following content:

```
lfuse = 0xf1
hfuse = 0xd4
efuse = 0xfe
lock = 0xff
```

Do not alter the content of this config file.

### Programming the SMC

1. Power Off the Board: Ensure that the board is disconnected from mains power.

2. Remove the SMC: The SMC (ATtiny861A) needs to be removed from the X16 board.
Note the orientation of the SMC, marked by a small notch near pin 1.
Carefully remove the SMC using a chip puller or a non-scratching prying tool.
It is recommended to use an anti-static wristband during the removal and reinstallation of the SMC.

3. Program the SMC:

* Place the SMC in the TL866 series programmer.

* Connect the programmer's USB cable to your computer.

* Run the following command to program the SMC:
```
minipro -p ATTINY861@DIP20 -c config -w fuses.cfg -c code -w firmware_with_bootloader.hex
```

4. Reinstall the SMC: Remove the SMC from the programmer and reinstall it on the X16 board, ensuring it is oriented the same way as before.

5. Test the SMC: Reconnect mains power to the board. Press the Power button to verify if the board works correctly.