Author Topic: EEVblog #411 - MiniPro TL866 Universal Programmer Review  (Read 1439282 times)

0 Members and 3 Guests are viewing this topic.

Offline PA0PBZ

  • Super Contributor
  • ***
  • Posts: 5114
  • Country: nl
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #175 on: August 12, 2013, 09:34:50 am »
Did you try Right Click -> Run as Administrator?
Keyboard error: Press F1 to continue.
 

Offline Bryan

  • Frequent Contributor
  • **
  • Posts: 618
  • Country: ca
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #176 on: August 12, 2013, 05:05:16 pm »
Thanks...that did the trick. :-[
-=Bryan=-
 

Offline MrAureliusR

  • Supporter
  • ****
  • Posts: 373
  • Country: ca
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #177 on: August 13, 2013, 03:07:02 am »
This device is GREAT.  I have tested it with old (UV) EPROMS (it won't program 2716 and only some 2732, and I have read the larger ones, but haven't tried programming them), GALs (e.g. GAL16V8), Microchip micros (in particular 16F877) using the output from Microchip's XC8, and used it to test some TTL chips.  All worked perfectly fine.

I've got two windowed EPROMs, they're both Texas Instruments TMS 2716, one is the classic 'purple and gold' colour scheme, it says TMS2716JL. Date code 18th week of 1978!! Other one says TMS2716-45JL (I'm guessing for 450ns? Or 45?). Date code 23rd week of 1986. The actual date codes read P7818 and MAP8623 ... don't know what the letters mean.

When I pop them in, I can read them and they read all EB's. If I pop them out, it reads all FF's ... it's funny that it will read at all with no chip in place. I can also program with nothing in the socket, and it works successfully. However, if I put either of them in it instantly stops with 'OverCurrent Protection action! External short circuit/IC reverse or damaged!' ... I know that even though these are both old chips, they were sold to me in MINT condition, never once used or programmed. I don't know if that is a good or bad thing but I figured that the 1986 one at least would program. No matter what options I change it just won't work. For the record, I'm picking the TMS2716 @DIP24 from the list, which is exactly what both of these are...

Dave had the same problem with the 27C128 but then his other EPROM in the video did successfully program...

Should I bother shorting out that cap (C22)? If I wreck the chip I won't mind but if I wreck the programmer I'll be pretty pissed at myself... I get the feeling it's not actually shorting, the hardware is just tripping accidentally because the programmer is using 21V maybe? I don't know. Also, in my experience, blank chips read FF. Are old EPROM's different? I don't have a 'real' eraser, but I can always leave them on the windowsill for a week in the bright sun and see if anything changes? Or can anyone think of a good hack to make a UV eraser? I suppose I could always just buy a UV bulb, make a little box with foil to reflect the UV, and stick them in there for 10-15 minutes. I've got some good project boxes that need a use...

[EDIT: I just wanted to add that the Logic IC test feature of this thing is GREAT!!!! I've used it COUNTLESS times and it works like a charm! I've even intentionally damaged certain sections of chips (on purpose or by accident) and it detects the error every time! Of course, the list could use some expanding, but so far the list does contain more than just basic logic gates - for example a 74LS138, which is a 3-to-8 line demultiplexer/decoder chip... if it can test that then surely it wouldn't be too hard to implement a whole host of other 7400 and 4000 series ICs. But I'm not complaining -- this thing is awesome!]
« Last Edit: August 13, 2013, 03:14:32 am by MrAureliusR »
--------------------------------------
Canadian hacker
 

Offline SeanB

  • Super Contributor
  • ***
  • Posts: 16265
  • Country: za
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #178 on: August 13, 2013, 05:36:00 pm »
Chips are probably OK, just they draw va little too much power for the programmer to handle. I would suggest a switch to short out the overcurrent protection so you can have it selectable for these high power devices. An old original 2716 can draw up to 200mA just in normal operation, the CMOS ones draw practically nothing.

I intend to do the mod so I can read and program some older 8748 parts and read them ( as a backup in case the original ones die and I will then be SOL) safely, as they also are current hogs. I will also likely add a 5V external socket to provide the extra power for this to be done safely.
 

Offline fluxcapacitor

  • Frequent Contributor
  • **
  • Posts: 345
  • Country: gb
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #179 on: August 16, 2013, 03:35:35 am »
'OverCurrent Protection action! External short circuit/IC reverse or damaged!'

Use a powered USB hub without anything else attatched,apart from the tl866 .Works for me .
 

Offline cube1us

  • Contributor
  • Posts: 13
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #180 on: August 19, 2013, 02:23:23 am »
I tried the USB hub route with my 2716's and 2732's and it made no difference.  That may help on some systems that are not supplying enough current on their USB ports - but I suspect that if that were the case one would not see the overcurrent protection message.
 

Offline fluxcapacitor

  • Frequent Contributor
  • **
  • Posts: 345
  • Country: gb
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #181 on: August 19, 2013, 02:41:57 am »
Have you updated to 5.91 firmware ? .This post may be of interest to you,he even mentions eevblog ! :

http://www.insentricity.com/a.cl/196/ItsNotStupidItsEnhanced

"I moved the burner to the computer in my entertainment center running Windows 7 and it worked fine there. I was able to set the voltage to 21V and try burning a 2732. The first one I tried kept stopping every 2-3 bytes and telling me it wasn't able to burn. If I clicked it and made it try again it would get a little further each time. But doing a 1k ROM 2-3 bytes at a time was going to take forever. I grabbed another 2732 and it worked better, it would do 100 bytes at a time. After several tries I was able to get the second 2732 to burn and verify successfully. I think the 2732s really want 25V, but it worked and I was happy."
 

Offline Electro Fan

  • Super Contributor
  • ***
  • Posts: 3148
Getting started with TL866 programming.... Suggestions?
« Reply #182 on: August 19, 2013, 11:31:32 pm »
Hi, I'm kind late to this thread but I've watched Dave's video and some related videos and cruised through the first 13 pages here.

I can't say that I have a good understanding of programmers or that I even have a good first use but I'd like to jump in and learn to copy/clone some chips and in the process learn about firmware - so I'm thinking about purchasing a TL866A primarily as a learning (personal R&D) tool.

Does anyone have some suggested 101-102 type links that would help a first time user get started with the overall process and maybe pick a few initial projects just for the sake of learning?  (If you have any projects that would be both reasonably simple/doable and that would help learn the fundamentals please feel free to suggest them.)

Thanks!  EF
 

Offline olsenn

  • Frequent Contributor
  • **
  • Posts: 993
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #183 on: August 19, 2013, 11:39:06 pm »
Quote
Hi, I'm kind late to this thread but I've watched Dave's video and some related videos and cruised through the first 13 pages here.

I can't say that I have a good understanding of programmers or that I even have a good first use but I'd like to jump in and learn to copy/clone some chips and in the process learn about firmware - so I'm thinking about purchasing a TL866A primarily as a learning (personal R&D) tool.

Does anyone have some suggested 101-102 type links that would help a first time user get started with the overall process and maybe pick a few initial projects just for the sake of learning?  (If you have any projects that would be both reasonably simple/doable and that would help learn the fundamentals please feel free to suggest them.)

These programmers are fairly simple. They are mostly for programming memory chips, which unlike programming a microcontroller, doesn't have a syntax/language. You can enter any data you want to program into a memory chip. The TL866CS can also be used to upload/download a .hex fire onto/from a PIC or AVR MCU, and (at least in the case of AVR) set fuse settings. The actual programming is still done in AVR Studio or MPLAB etc.

May I ask what you are looking for a programmer for? Do you have a project in mind that does/might require a universal programmer?
 

Offline Electro Fan

  • Super Contributor
  • ***
  • Posts: 3148
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #184 on: August 20, 2013, 02:33:17 am »
Quote
Hi, I'm kind late to this thread but I've watched Dave's video and some related videos and cruised through the first 13 pages here.

I can't say that I have a good understanding of programmers or that I even have a good first use but I'd like to jump in and learn to copy/clone some chips and in the process learn about firmware - so I'm thinking about purchasing a TL866A primarily as a learning (personal R&D) tool.

Does anyone have some suggested 101-102 type links that would help a first time user get started with the overall process and maybe pick a few initial projects just for the sake of learning?  (If you have any projects that would be both reasonably simple/doable and that would help learn the fundamentals please feel free to suggest them.)

These programmers are fairly simple. They are mostly for programming memory chips, which unlike programming a microcontroller, doesn't have a syntax/language. You can enter any data you want to program into a memory chip. The TL866CS can also be used to upload/download a .hex fire onto/from a PIC or AVR MCU, and (at least in the case of AVR) set fuse settings. The actual programming is still done in AVR Studio or MPLAB etc.

May I ask what you are looking for a programmer for? Do you have a project in mind that does/might require a universal programmer?

Thanks - that was a helpful orientation; I am starting at square 1 on this.  Based on your post I get that the "programmer" really is just for reading and/or writing a hex file to/from a PIC or AVR MCU, and (in the case of AVR) setting fuse settings - none of which I have had a reason to do but I'm inclined to start trying/learning just for the sake of learning.  The closest I've come to any such projects would be building simple projects with the Arduino, which gives me some exposure to AVR.

For now, I'm inclined to just see if I can take data off of one chip and write it to another and then see if I can modify it, etc.  Learning the chip families alone seems like it could take awhile, but I'd like to start somewhere where I can get some hands-on experience.  Nothing like learning by doing. :)

Do you have any favorite/popular chips that might make sense to start with just to read and write?  (I know that's probably like asking if you have any favorite foods that might be representative of all foods.)  Any reason not to give it a try with an ATmega328?  Or is there something that would be a better to experiment with?  Theoretically, if I could write to a "backup" ATmega328 I could pop the newly written backup chip into my Arduino to see if it still runs my programs :).
« Last Edit: August 20, 2013, 02:34:52 am by Electro Fan »
 

alm

  • Guest
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #185 on: August 20, 2013, 09:41:38 am »
For MCU programming you definitely want a programmer with in-system programming (called ISP for AVRs and ICSP for PICs). Unplugging the micro to program gets old really fast when going through iterative compile-program-test cycles. You can always wire a DIP IC up on a devboard or breadboard with a programming header. I believe standard Arduino Uno includes an ISP header you can directly plug a programmer into.

I would also tend to go with something supported by the manufacturer (eg. AVRISP Mk. II or PICkit 3). This allows you to directly program a chip from the manufacturer supplied IDE (or any other IDE). If you want to save money, at least get something with wide community support (eg. USBasp). This makes troubleshooting and finding help much easier.

I see nothing wrong with starting with an ATmega328, it's a versatile chip that's very popular due to its use in the Arduino. I don't see the point of reading the firmware from an existing MCU, however. Commercial designs will usually have the lock bit set, preventing you from reading the firmware but returning garbage instead. And if you want to modify some Arduino code, then the source to everything is right there on their website. Even if you get the firmware and manage to dissasamble it, then it's still much harder to read than well documented assembler or C code with proper variable and function names.
 

Offline Electro Fan

  • Super Contributor
  • ***
  • Posts: 3148
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #186 on: August 20, 2013, 08:34:42 pm »
Thanks ALM,

I understand the TL866A is going to be operating at a lower level than than say the Arduino IDE; I'm just challenging myself to see if I can figure out the TL866A (and the general environment of such a programmer).  In the process I'd like to find the intersection between what can be done from the PC with the Arduino IDE (or maybe with WinAVR or Atmel Studio) and what can be done with the TL866A and the software that comes with the TL866A.  It's like I've been reading about Rome for a long time and I'm ready to go on site seeing tour. :)

I saw this thread that seems to be touching on some similar questions:
http://forum.pjrc.com/threads/19212-Better-alternative-to-arduino-IDE

I think I'm on a different path than many users here who have lots of skill and experience and who use test equipment largely to test, design, debug, build, etc.  I use the equipment almost entirely as a "learning platform".  With a small power supply, a couple DMMs, a scope, a couple breadboards, some parts, and a few other things I can tinker, hypothesize, test, figure out (slowly) what works and what doesn't, what causes what and what doesn't.  It's a journey more than a specific destination although I have a few small objectives that I hope to accomplish as I get a few things figured out.  For starters, I want to prove I can learn/understand, configure and control analog circuits well enough to (among other things) convert A to D to encode specific bit streams and then (with a scope and a serial decoder) I want to prove I can decode my home made bit streams.  Along the way I'm trying to learn to harness the notion of pullup and pulldown resistors - I know, pretty basic.  (The other day I managed to follow a circuit diagram (not just a fritzing illustration) to make some stuff happen with a 555; it worked on the second try and I was pleasantly surprised.)

Beyond this 101 stuff I'm trying to not only experience the intersection between analog and digital but also gain some hands-on experience with how basic analog circuits and functions get embedded and accessed and managed on chips.  In 102 or 201 I hope to figure out how to work with I2C and SPI.  JTAG entirely fascinates me.  No doubt, I see a ton of hardware, firmware, and software learning ahead on the "hands-on" road from analog to digital.

One of the reasons I'd like a highly dependable power supply is that I'd like to know that the values I'm seeing when working with the fundamentals (volts and amps along with ohms and watts) are pretty reliable so I don't have to wonder if it's my calculations or the gear that's causing a different than expected result (I'm steadily working my way thru stuff like burden voltage.)  In general, to help avoid errors and confusion I like my rulers to be accurately ruled so as to help avoid this:  |O :-DD

(And of course I'd like a power supply that protects my other gear, DUTs, and generally keeps me safe.)

So .... back to the TL866A, the TL866A might (metaphorically) be a diving board to help learn what goes on in the deep end  ;D

To me, this forum is a gateway to a huge amount of learning opportunities.  It is a great place with lots of deluxe people and I appreciate all the info and advice.

EF
« Last Edit: August 20, 2013, 08:43:05 pm by Electro Fan »
 

Offline MrAureliusR

  • Supporter
  • ****
  • Posts: 373
  • Country: ca
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #187 on: August 21, 2013, 04:13:16 am »
I have to suggest - get yourself the TL866A (or whichever has the ICSP port) instead. Its got the in circuit programming header built-in so you can tinker with both in one package. Its slightly more expensive but probably worth it.

Typed using Hacker's Keyboard for Android

« Last Edit: August 21, 2013, 04:14:47 am by MrAureliusR »
--------------------------------------
Canadian hacker
 

Offline joh

  • Contributor
  • Posts: 28
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #188 on: August 21, 2013, 03:28:25 pm »
Many thanks @radioman and your gifted Russion cryptographer.
 

Offline jinzo

  • Contributor
  • Posts: 40
  • Country: si
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #189 on: August 24, 2013, 04:31:30 pm »
Hello,

I own a TL866A and when I tried to read/write a ST93CS46 in-system I got the over current protection error. I then proceeded to short C22 as suggested here (Thanks everyone!) and it worked. But I couldn't find an answer if that could be dangerous to the TL866A (Someone said it's not dangerous to the chip...)? I guess that protection is in place for a reason?
There were some mentions about people wishing for Linux support, did anyone contact AutoElectric with that wish? This device would be great if had linux support (and later down the road ability to add your own chips - anyone contacted them about that?)

Also thanks to everyone, this thread was full of useful information. You rock!
 

Offline SeanB

  • Super Contributor
  • ***
  • Posts: 16265
  • Country: za
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #190 on: August 24, 2013, 04:46:26 pm »
Linux support is by using Oracle Virtualbox and a copy of XP inside it. A little like a sledgehammer for a peanut, but it does work.
 

Offline radioman

  • Regular Contributor
  • *
  • Posts: 168
  • Country: ro
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #191 on: August 24, 2013, 08:46:21 pm »
Shorting C22 will disable only over current protection notifications, not over current protection itself. When i worked in the reverse engineering of this programmer, i developed a custom firmware to help me, and if i remember correctly, i tested this ovc protection by putting a pin driver to VDD and GND  simultaneously for about one hour. A couple of transistors/resistors became warm but nothing serious.

Regarding to Linux support, well, i sent a few emails to Autoelectric with that wish but no response.  :(
 

Offline .::Rizwan::.

  • Newbie
  • Posts: 8
  • Country: pk
  • Knowledge=>Power
    • The Unlocker
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #192 on: August 24, 2013, 09:49:16 pm »
@radioman
So you suggest that shorting C22 for getting work done regarding incircuit Read write operations is safe?
If yes then we can make a simple switch to make & break short to be on safe side.
One Machine can do the work of 50 Ordinary Men,
No Machine can do the work of One Extraordinary Man.
 

Offline radioman

  • Regular Contributor
  • *
  • Posts: 168
  • Country: ro
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #193 on: August 24, 2013, 10:20:10 pm »
Yes you can try this, but remember: by shorting the C22 the over current protection will not be disabled, instead the ovc signal will never inform the uC about the over current condition and this will allow the firmware to continue the read/write procedure. The ovc signal work at the interrupt  level of the uC, once triggered, the internal firmware will reset the pin drivers in hi-z state and abort current operation, then the pc software will be informed about this situation. Due to the in circuit connection, the ovc signal can be false triggered and this will stop the read/write operation. shorting the C22 can help in some situations but is not a universal solution, depends on the situation. You can try to mount a switch for that purpose and when needed to short the C22 easily, and yes this is safe for both programmer and the chip.
 

Offline .::Rizwan::.

  • Newbie
  • Posts: 8
  • Country: pk
  • Knowledge=>Power
    • The Unlocker
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #194 on: August 24, 2013, 10:32:30 pm »
As per my experience, it always false triggered when using incircuit.
One Machine can do the work of 50 Ordinary Men,
No Machine can do the work of One Extraordinary Man.
 

Offline jinzo

  • Contributor
  • Posts: 40
  • Country: si
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #195 on: August 25, 2013, 04:59:15 pm »
@radioman
Thanks for all the info and great work you did.
When you reverse engineered this stuff, did you maybe look at the USB communication between the device and the program? I guess it should be preatty straight forward protocol/communication?
I'll probably do some sniffing and poking in that direction.
 

Offline radioman

  • Regular Contributor
  • *
  • Posts: 168
  • Country: ro
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #196 on: August 25, 2013, 06:13:32 pm »
When you reverse engineered this stuff, did you maybe look at the USB communication between the device and the program? I guess it should be pretty straight forward protocol/communication?
I'll probably do some sniffing and poking in that direction.

Yes i have looked at the USB communication protocol, but believe me it's a nightmare. In bootloader mode there are only four commands for ex. (reset,erase,write,report) but these are simple commands. In normal mode are a lot of commands and reverse engineering them is not so easy, you must know how the pc software and uC firmware works,for example as a hint, at this moment all the supported chips are grouped by categories, every category is implemented as unique protocol/algorithm in the software/firmware and afaik these protocols/algorithm are 41 in number  in the current firmware implementation, plus the control commands. Yes sniffing is easy to do but interpreting the result is hard, the pc software is a mess, adding a new chip is done by recompiling the source, there is no config files, nothing, nada, and most of the chips info are hardcoded in infoic.dll and the main software minipro.exe, the system is closed, the only way is the hard work in the reverse eng. communication protocol, good luck!
 

Offline jinzo

  • Contributor
  • Posts: 40
  • Country: si
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #197 on: August 25, 2013, 07:44:47 pm »
When you reverse engineered this stuff, did you maybe look at the USB communication between the device and the program? I guess it should be pretty straight forward protocol/communication?
I'll probably do some sniffing and poking in that direction.

Yes i have looked at the USB communication protocol, but believe me it's a nightmare. In bootloader mode there are only four commands for ex. (reset,erase,write,report) but these are simple commands. In normal mode are a lot of commands and reverse engineering them is not so easy, you must know how the pc software and uC firmware works,for example as a hint, at this moment all the supported chips are grouped by categories, every category is implemented as unique protocol/algorithm in the software/firmware and afaik these protocols/algorithm are 41 in number  in the current firmware implementation, plus the control commands. Yes sniffing is easy to do but interpreting the result is hard, the pc software is a mess, adding a new chip is done by recompiling the source, there is no config files, nothing, nada, and most of the chips info are hardcoded in infoic.dll and the main software minipro.exe, the system is closed, the only way is the hard work in the reverse eng. communication protocol, good luck!
Damn, I thought they're using a simpler interface (but on the other hand I don't know anything about programming chips)... So with each PC software update comes a new FW for the device.
And here I am, dreaming of a device with configurable and drivable pins via PC software and whatnot.  :-DD
Maybe one day...
 

Offline krivx

  • Frequent Contributor
  • **
  • Posts: 765
  • Country: ie
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #198 on: August 26, 2013, 06:22:07 pm »
I've been playing with a TL866 and some old EPROMs and had an odd problem. If I read some old 27c256 chips the correct chip ID is recognized and the dumps have correct data (I can see interesting ASCII strings with error messages, instructions and so on). If I try some AM27c512 chips, an incorrect chip ID is recognized and the data doesn't correct (no obvious patterns or strings). This is the case for 5 chips that I've tried. Also, with the AM27c512 if I click "Chip ID" repeatedly a different chip ID is sometimes reported. I'm not sure what's going on, can the TL866 read a 27c512? Or are all my chips bad? I could understand that the incorrect ID value was written to them when programmed but changing chip ID is confusing. I haven't tried erasing and reprogramming one yet.

edit: I found an AT27c512R (PLCC package) and that reads fine...
« Last Edit: August 26, 2013, 06:35:24 pm by krivx »
 

Offline olsenn

  • Frequent Contributor
  • **
  • Posts: 993
Re: EEVblog #411 - MiniPro TL866 Universal Programmer Review
« Reply #199 on: August 26, 2013, 06:41:46 pm »
Quote
Damn, I thought they're using a simpler interface (but on the other hand I don't know anything about programming chips)... So with each PC software update comes a new FW for the device.
And here I am, dreaming of a device with configurable and drivable pins via PC software and whatnot.

Sounds to me like you are looking for an Arduino or general purpose microcontroller. Even a Bus Pirate perhaps. Only limitation here is that you're limited to TTL/CMOS voltage levels. Boost converters are available pre-designed in IC's, and you can easily use a digital pot to lower voltage.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf