Silicon ChipT48 Universal Programmer - April 2023 SILICON CHIP
  1. Outer Front Cover
  2. Contents
  3. Publisher's Letter: Renewable energy costs are seriously understated by the media
  4. Feature: Underground Communications by Dr David Maddison
  5. Project: 500W Class-D Mono Amplifier by Phil Prosser
  6. Project: Wideband Fuel Mixture Display Part 1 by John Clarke
  7. Subscriptions
  8. Review: T48 Universal Programmer by Tim Blythman
  9. Project: Automated Test Bench by Richard Palmer
  10. Project: Silicon Chirp – the pet cricket by John Clarke
  11. Feature: Using TestController by Richard Palmer
  12. Serviceman's Log: Tips on kit and bits by Dave Thompson
  13. Product Showcase
  14. Vintage Radio: Browning-Drake 6A by Dennis Jackson
  15. PartShop
  16. Market Centre
  17. Advertising Index
  18. Notes & Errata: Secure Remote Mains Switch, July & August 2022; Capacitor Discharge Welder, March & April 2022; Programmable Hybrid Lab Supply with WiFi, May & June 2021
  19. Outer Back Cover

This is only a preview of the April 2023 issue of Silicon Chip.

You can view 39 of the 112 pages in the full issue, including the advertisments.

For full access, purchase the issue for $10.00 or subscribe for access to the latest issues.

Articles in this series:
  • Underwater Communication (March 2023)
  • Underground Communications (April 2023)
Items relevant to "500W Class-D Mono Amplifier":
  • 500W Class-D Amplifier cutting diagrams (PDF download) (Panel Artwork, Free)
Items relevant to "Wideband Fuel Mixture Display Part 1":
  • Wideband Fuel Mixture Display PCB [05104231] (AUD $10.00)
  • PIC16F18877-E/PT programmed for the Wideband Fuel Mixture Display (WFMD) [0510423A.HEX] (Programmed Microcontroller, AUD $15.00)
  • Wideband Fuel Mixture Display short-form kit (Component, AUD $120.00)
  • Firmware for the Wideband Fuel Mixture Display (WFMD) [0510423A.HEX] (Software, Free)
  • Wideband Fuel Mixture Display PCB pattern (PDF download) [05104231] (Free)
Articles in this series:
  • Wideband Fuel Mixture Display Part 1 (April 2023)
  • Wideband Fuel Mixture Display, Pt2 (May 2023)
  • Wideband Fuel Mixture Display, Pt3 (June 2023)
Items relevant to "Automated Test Bench":
  • Automated Test Bench Swiss Army Knife PCB [04110221] (AUD $10.00)
  • 5V to ±15V boost module (Component, AUD $5.00)
  • ESP32 DevKitC microcontroller module with WiFi and Bluetooth (Component, AUD $25.00)
  • Testbench Swiss Army Knife short form kit (Component, AUD $50.00)
  • Laser-cut UB1 Jiffy box lid for the Test Bench Swiss Army Knife (PCB, AUD $10.00)
  • Firmware and laser cutting files for the Automated Test Bench Swiss Army Knife (Software, Free)
  • Automated Test Bench Swiss Army Knife PCB pattern (PDF download) [04110221] (Free)
Items relevant to "Silicon Chirp – the pet cricket":
  • Silicon Chirp cricket PCB [08101231] (AUD $2.50)
  • PIC16F15214-I/SN programmed for Silicon Chirp [01810123A.hex] (Programmed Microcontroller, AUD $10.00)
  • Silicon Chirp kit (Component, AUD $25.00)
  • Firmware for Silicon Chirp [01810123A.HEX] (Software, Free)
  • Silicon Chirp cricket PCB pattern (PDF download) [08101231] (Free)

Purchase a printed copy of this issue for $11.50.

Review by Tim Blythman The T48 universal programmer is the latest revision of the popular TL866II, often referred to as the ‘MiniPro’ . Chinese company XGecu sent us one to try out and we found it a worthy successor. XGecu T48 Universal Programmer L ast year, we purchased an XGecu TL866II Universal Programmer, having heard that they could program a wide range of chips. We subsequently published a review of it in the February 2022 issue (siliconchip. au/Article/15209). We found that the TL866II is wellmade and easy to use. The accompanying software is straightforward and familiar enough to those who have used other programming software, such as the MPLAB X IPE from Microchip. The ZIF (zero insertion force) socket in the top means that you can use it on a wide variety of parts without worrying about pinouts and programming adaptors. The programmer configures its connections to go to the correct pins. We remarked that the TL866II supports many parts and is relatively fast at programming. There is a Multi Programming interface, making it easy to use up to four programmers. With the ZIF socket, it could be a handy tool in a small production environment. It can read from devices and output to HEX and binary files, so it is a handy tool for saving and backing up chips too. However, for most of our purposes, typically involving modern PIC devices, the TL866II was not helpful as it does not support the newer microcontrollers we use. Nevertheless, we use it for chips that it supports (such as AVRs and EEPROMs), as the integrated ZIF socket makes it easy to operate and fast enough for our volumes. It has The unit they sent us for testing was accompanied by a pair of TSOP-48 adaptors, one for NAND flash and one for NOR flash. The NOR flash adaptor uses the 16-way IDC cable to plug into a socket on the programmer so it can provide the extra pins needed beyond the 40 on the ZIF socket. A USB cable is also included. 54 Silicon Chip Australia's electronics magazine excellent support for older chips, so it is definitely handy if you are working with legacy devices. The new T48 The latest variant in the TL866 series is the T48, also known as the TL866-3G. We were sent a unit to try out for this review. It can also be found on the XGecu eBay store in various combinations with adaptors for surface mounting parts and socket adaptors for PLCC (plastic leaded chip carrier) components. If you visit their eBay store you will find a range of packages starting at just under $100 for a bare programmer and USB cable (siliconchip.au/link/abjk). Note that there is also a different and more expensive programmer called the T56, which has a similar appearance. The store offers bundles that include other accessories like a PLCC chip puller, IDC breakout cables and even a UV EPROM eraser. The price point of under $100 for the unit with a USB cable only puts it on par price-wise with devices like the PICkit 4. Like the TL866II, the T48 consists of a two-part plastic case with a 40-pin ZIF socket on the top. The T48 is marginally larger and arguably more stylish, with a black case, black ZIF socket and curved corners. The two LEDs are marked the same (POW and RUN), but there is also a 16-way IDC header box instead of the 6-way ICSP header of the TL866II. The unit we were given for testing came with two TSOP-48 socket adaptors, one for NOR flash chips and another for NAND flash chips. siliconchip.com.au Interestingly, the NOR flash adaptor sports a SOIC-8 chip without any discernible markings and features a 16-way IDC header that is clearly meant to be connected to the matching header on the programmer with a supplied IDC cable. This is the simple way to get around programming chips with more pins than are available on the ZIF socket. The more expensive T56 programmer has a 48-pin ZIF socket. You can find the complete supported parts list for the T48 at www. xgecu.com/MiniPro/T48_List.txt In the time between receiving the T48 and completing the review, the supported parts list had increased by around 4000 parts and was nearly double the size of the corresponding list for the TL866II. Hardware Like the TL866II, the case of the T48 is held together by four screws, so we opened it up to see what makes it tick. Like its predecessor, the internals consists of two PCBs connected by a straightforward dual-row header pin and socket arrangement. This runs parallel to the ZIF socket, making for a simple PCB layout. The upper PCB is smaller than the lower one and has numerous transistors and resistors on both sides. The top features four 74HC595 shift registers, and more chips are underneath. We didn’t separate the two boards as they are also locked together by soldered wires. The lower board has a large QFP (quad flat pack) chip which is probably the main microcontroller. Like the TL866II, we could not see which specific part is used, although it would need to be a part that can support the advertised 480MHz (high speed) USB. There are also some relatively large (compared to the smaller resistors and transistors) inductors, which we expect are part of the circuitry to generate the higher voltages (up to 25V) needed to program certain devices. Table 1 – main differences between the TL866II and T48 TL866II T48 (TL866-3G) 16-bit, 32MHz 32-bit, 120MHz Microcontroller Full speed (12MHz) High speed (480MHz) USB Interface 1.8-6.5V in 32 steps 1.8-6.5V in 64 steps Target supply voltage 9-18V in 32 steps 9-25V in 64 steps Target prog. voltage Fixed at 3.3V 1.8-3.6V in 16 steps Target I/O voltage 17,000+ 32,000+ Supported parts and has a positive snap action. Interestingly, the markings on the T48 indicate that the target IC is inserted at the opposite end of the socket to the TL866II. We can see why this might be preferred from an ergonomic point of view. It means that the lever is at the opposite end of the socket to the chip, which gives more clearance. It isn’t really a problem for most chips under 40 pins but could help if you are using 40-pin chips or an adaptor socket that needs to slot into the ZIF socket. Some TSOP adaptors even have a notch at one end to allow for the swing of the ZIF socket handle. The ZIF socket is the only moving part on either programmer, so it could suffer wear-and-tear over time and eventually break. Still, we have yet to have a failure on either programmer (more than we can say for some of the cheap ZIF sockets we use in our own programming ‘jury-rigs’!). Overall, there are no big surprises inside the T48; it is an evolution of the TL866II design, although there has clearly been some development on the software and firmware too. With their common features and shared heritage, much of this review will reflect the differences between the T48 and its predecessor. The general comments we made on the TL866II will apply to the T48. XGecu provides information comparing the TL866II and the T48; an excerpt of some characteristics is seen in Table 1. Many of the remaining comparisons are related to speed, so we will perform our own tests later to compare the speed of the TL866II and the T48. We’ve tried to test with much the same parts as our previous review. The range of supported parts also differs. The comparison documentation generally indicates that the T48 supports all those supported by the TL866II and more. Software Both programmers depend on the Windows-based XGPro software for operation. At the time of writing, we are testing with version 12.39 of the software; this version supports the TL866II as well as the T48. We also tried version 12.45 of the software but did not notice any substantial Comparison Since the TL866II can only provide up to 18V for programming, rather than the 25V of the T48, the T48 can clearly support a broader range of parts. The T48 documentation notes that it incorporates a better ZIF socket than the TL866II. It does feel more robust siliconchip.com.au The T48 shares heritage with the TL866II. A microcontroller with many pins on the bottom PCB interfaces to the 40-pin ZIF socket on the top PCB via an array of passive devices. The 16-way IDC socket can be seen at right; this allows connection to a breakout board and thus parts with more than 40 pins. Australia's electronics magazine April 2023  55 Screen 1: most of the XGPro window is taken up by the memory contents, with a status log at right and numerous function buttons along the top. You can adjust the SPI clock frequency for some chips that use an SPI interface, such as the flash chip shown here. differences. Screen 1 shows the main window of the XGPro software. This software updates the firmware in the programmer, adding features and support for a greater range of parts. So it’s likely that even more target devices will be supported in the future. We noted the existence of the thirdparty “minipro” software for driving the TL866II during our previous review, but at this stage, it does not appear to support the T48, and there is no indication that it might. The overall layout and functionality of the newer 12.39 version of XGPro are much the same as the older 10.75 version we used for our tests of the TL866II, but we found a few differences. Firstly, the software picked up on an error we made at one point: placing the chip at the wrong end of the ZIF socket. We expect we were not the first and will not be the last to do so! Screen 2 shows the specific warning that is given in that case, remarking on the difference in markings between the T48 and TL866II. Software features Screen 2: one subtle difference between the T48 and its predecessor is the location of the lever for the ZIF socket; fortunately, the software designers have included a check and error message that picks up this particular error that we (and no doubt many others) had made. Screen 3: the XGPro software provides clear and simple diagrams for interfacing with ICs via the 16-way IDC header socket. This typical diagram for parts that use an SPI interface makes it easy to build custom adaptors for programming parts in-circuit. 56 Silicon Chip Australia's electronics magazine We found several new features and improvements in the XGPro software. Many of these features appear to work with the TL866II as well as the T48, although we didn’t check them all. For example, there is now the option to set the clock speed for some chips that use an SPI interface. Screen 1 shows the speed option at the bottom. We did not run into any situations requiring running at lower than maximum speed, but it could be handy if you use the T48 via the IDC header cable or on parts already fitted to a PCB. Editor’s note: some AVR chips require low-speed programming when their fuses are set to run at a low clock speed. Screen 3 shows a wiring diagram for a chip that uses SPI. This is provided from the Device.Info tab inside the XGPro program. Each part has at least a diagram showing how it should be fitted in the ZIF socket, plus arrangements for using the IDC header, if appropriate. Screen 4 shows the wiring diagram of a DIP adaptor for a PLCC socket that will allow it to be fitted to the ZIF socket. Such an adaptor is typical of what can be purchased with the siliconchip.com.au programmer, although the information here makes it easy to build your own. One small catch we noticed when trying to program an ATF16V8 PLD (programmable logic device) with the older TL866II and version 10.61 software was that verification would fail if we enabled “Encryption”. It appears that the newer versions allow this now. The data is now programmed and verified, and only then is the security bit programmed to prevent read access. Speed tests Using version 12.39 of the XGPro software, we ran comparative speed tests between the T48 and TL866II. The way that the software versions relate to the firmware versions of the programmer means that it is not possible to revert to older versions, so we were unable to do comparative tests with the older versions of the software or compare the performance of the different firmware versions. XGPro allows basic editing of memory spaces and can also fill regions with certain data bytes or even random data. Our test data involved reading the memory and then changing it to random data. We then saved these random data files to ensure consistency between tests. Screen 5 shows the window used for editing data; it is straightforward enough. It’s also possible to edit data directly in the main window by clicking on a value and typing over it. Performing a program operation on the main memory space of these chips typically involves bulk erasing the device (if necessary), programming the data and then verifying it (by reading it back and comparing it to the original file). The results of the speed tests are shown in Table 2. Unsurprisingly, the T48 is as fast, if not faster, in nearly all cases; only the programming of an FM25640 SPI FRAM chip was slower. Still, that difference was a fraction of a second and probably would not be noticeable to the user. For comparison with the T48, a Snap programmer can program the entire 14kiB memory space of a PIC16F1705 in less than a second. The Microchip IPE only provides timestamps with one-second resolution, so comparing read and erase times is difficult (and perhaps pointless). We also performed some tests on siliconchip.com.au Table 2 – time (ms) for operations on the entire main memory space Operation TL866II T48 Read/Verify 6891 1563 Erase 8609 7547 Program 14172 8172 Read/Verify 4032 2438 Erase 407 391 Program 25172 21859 Read/Verify 140 47 Erase 31 31 Program 1641 1328 Read/Verify 125 109 Erase 828 828 Program 3500 3407 24LC256 32kiB I2C EEPROM Read/Verify 4343 2937 Program 10250 8578 24LC512 64kiB I2C EEPROM Read/Verify 8734 5813 Program 12594 9328 FM25640 8kiB SPI FRAM Read/Verify 172 62 Program 312 469 Read/Verify N/S 23860 Erase N/S 1188 Program N/S 35937 Read/Verify N/S 453 Erase N/S 31 Program N/S W25Q32 4MiB SPI flash chip SST39SF040 512kiB parallel flash chip AT28C64 8kiB parallel EEPROM AT16V8B 2194 bit PLD MT29F1G08ABAEAWP 128MiB NAND flash PIC16F1705 14kiB flash memory microcontroller 33141 N/S = not supported. Screen 4: the PLCC32 to DIP-32 adaptor shown here was included with our TL866II and can be purchased as part of the deal. Still, the pinout diagram makes it easy to design and assemble your own and troubleshoot those connections. Screen 5: the main memory window allows values to be directly edited, but if you need to set a large block of memory to a particular value, it can be done in the Fill Block dialog box. It can also fill a block with random data, which is what we did for our tests. Australia's electronics magazine April 2023  57 parts that are only supported by the T48, including one that requires the use of a TSOP-48 adaptor. The MT29F1G08ABAEAWP 128MiB NAND flash chip was the highest-capacity part we could quickly and easily acquire. Its capacity is large enough that the log noted that we had sufficient hard drive space to store the image! The time taken to program this chip is the same order of magnitude as expected from the data sheet, considering communication overheads. Programming PICs Since we often use PIC microcontrollers in our designs and also sell programmed microcontrollers in the Silicon Chip Online Shop, we were interested to see how handy the T48 would be for our purposes. The supported devices list for the T48 shows several 8-bit (PIC10, PIC12, PIC16 and PIC18) parts but no 16-bit (PIC24/dsPIC33) or 32-bit (PIC32) Microchip parts. Also listed are some of the older AVR parts, such as the ATmega328, as found in the Arduino Uno. Such AVR parts now fall under Microchip’s purview since their takeover of Atmel in 2016. The PIC16F1705 is one of the newer 8-bit ‘mid-range enhanced core’ PIC microcontrollers and is supported by the T48. We used this chip in the Flexible Digital Lighting Controller from October -December 2020 (siliconchip. au/Series/351) In our review of the TL866II, we noted that support for modern parts was lacking, so it is good to see that some newer parts are now supported. The PIC16F1709 (which is similar to the PIC16F1705 but has 20 instead of 14 pins) is also supported. You can also see from Table 2 that programming the PIC16F1705 is relatively slow at 30 seconds. Microchip’s Snap programmer (driven from the Microchip IPE program) can program this part in around a second, and a PICkit 4 is similar. For now, our advice for newer Microchip parts is to continue using their programmers. Support for more PICs The XGPro software has a feature to “Add IC by user”, which is ideal for parts like Microchip microcontrollers. It is intended for parts with the same programming interface as a listed part but a different device ID. The PIC16F1455 is a microcontroller we use frequently; it’s one of a handful of 8-bit PICs with a USB peripheral. It is pretty similar to the PIC16F1705, but unfortunately, different pins are allocated for programming on these two chips, so we couldn’t use this feature to add the PIC16F1455. Using the PIC16F1709 settings, we also tried communicating with some of the newer 20-pin PICs (October 2022; siliconchip.au/Article/15505). Parts like the PIC16F18146, PIC16F17146 and PIC16F18045 have the same pinout for their programming pins, so they might be expected to work. Unfortunately, we could not even retrieve a device ID, so we could not use this feature to work with other chips as we hoped we might. There may be some variations in the programming protocol for these newer PICs. Editor’s note: even Microchip’s older programming hardware & software won’t work with those chips, so that’s likely to be the case. Since different devices often have different flash memory sizes and configuration fuses, adding support in GPS-Synchronised Analog Clock with long battery life ➡ Convert an ordinary wall clock into a highlyaccurate time keeping device (within seconds). ➡ Nearly eight years of battery life with a pair of C cells! ➡ Automatically adjusts for daylight saving time. ➡ Track time with a VK2828U7G5LF GPS or D1 Mini WiFi module (select one as an option with the kit; D1 Mini requires programming). ➡ Learn how to build it from the article in the September 2022 issue of Silicon Chip (siliconchip. au/Article/15466). Check out the article in the November 2022 issue for how to use the D1 Mini WiFi module with the Driver (siliconchip.au/Article/15550). Complete kit available from $55 + postage (batteries & clock not included) siliconchip.com.au/Shop/20/6472 – Catalog SC6472 58 Silicon Chip Australia's electronics magazine siliconchip.com.au Here is a side-by-side comparison of the T48 (right) with the TL866II (left). The T48 is only slightly larger and has a black case with curved corners. A similar case is used for the more expensive T56 programmer, although this (confusingly) sports a 48-pin ZIF socket, unlike the T48, which has a 40-pin socket. this way may be tricky as there will be other factors to consider. Interestingly, you can select the PIC16F1705 in the newer version of the XGPro software while a TL866II is connected, but it will not work and an error message indicates that it is not supported. We have contacted the XGecu company about adding support for some of the newer Microchip parts, and they responded that it should be possible. We hope to see this support in a future software version. memory spaces and thus take some time to program. Conclusion The T48 is superior in just about every way to its predecessor, the TL866II. It supports a greater range of parts and, handily for us, this includes some of the newer PIC microcontrollers. The XGPro software is also being updated and, even in the time we have been reviewing it, we have seen a substantial increase in the number of supported parts. It does cost a bit more than the TL866II, but you would be hardpressed to find a case where the extra cost is not worth the extra capabilities. We’d have no hesitation in recommending the T48 over the TL866II. If you work with many older parts, such as reading ROM chips to preserve their contents or dabbling with recreations of older designs, then the T48 is well suited. We hope that support for modern PIC microcontrollers continues to expand, ideally including the newer parts we reviewed last year, such as the PIC16F18146. The T48 is available from various online stores. Prices start at just under $100 and go up from there depending on which adaptors you wish to bundle into your purchase. Still, given the proliferation of clones of this type of device, it’d be safer to stick with one of the XGecu official stores: eBay official store ebay.com/str/xgecuofficialstore AliExpress official store xgecu.aliexpress.com Amazon store www.amazon.com/xgecu SC Multi Programming We mentioned the Multi Programming feature of the XGPro software in the previous review, but since we only had one programmer, we couldn’t try it out. With two (albeit different) programmers, we were now able to do so. Screen 6 shows this, with the two programmers each programming a 24LC512 EEPROM chip. As you can see, both have run to successful completion in their own time. We did need to plug each programmer directly into the computer as we did not have a powered USB hub; note the warning text at the top of the window. Otherwise, the programmers complained about insufficient power when connected via an unpowered hub. Multi Programming is a handy feature, but not one that we’re likely to use except for chips that have large siliconchip.com.au Screen 6: now that we had two programmers, we could try out the Multi Programming feature. XGecu recommends using the same programmers, but we had no trouble with two different models. Make sure that each device has sufficient power by, for example, using a powered hub. Australia's electronics magazine April 2023  59