Tuesday 19 August 2014

Example projects, programming and debugging tools to work with Elan EM78 series microcontrollers


I am working on several projects that involve reverse engineering of small microcontroller systems. Increasingly I am finding that these contain Elan Microelectronics Corp microcontrollers in them, most commonly the EM78 series (specifically the EM78P156K and EM78P418N). These appear to be very low cost 8-bit processors with fairly typical peripherals and OTP ROM. This wikipedia page and datasheets suggest they have some similarity with PIC processors, but it would be a stretch to call them clones based on just the information I have.


I presume that they are targeted at cheap mass-produced consumer electronics as OTP ROM makes development awkward.


I have found these in many products across a range of manufacturers now, and I am surprised at how little they are mentioned on the internet as a whole, and how poor the documentation is. EMC does not seem interested in helping those who aren't buying thousands of units.


Here is a PDF of a PowerPoint presentation that refers to the in-system-programming in a roundabout way.


As stated by m.Alin, there is a big page of supporting documentation.


However, most of these 404 for me, and if I google for other copies, they are of poor quality and very disjointed. "AN-023 On Board Program for EM78 Family's OTP" looks interesting - but if this is a google cache of it (going by filename), then it isn't.



There are references to using the UWTR and DWTR programmers. I can't find where to buy these though. There have been listings on ebay, but they are untested and infrequent.


I have just found this document ("How to Implement ICP Using ELAN EM78PXXX General Purpose OTP MCUs") which has a couple of interesting pieces of information:



Note: for manufacturers wanting to develop their own OTP programming hardware, Elan’s OTP programming specifications are available free of charge under NonDisclosure Agreement (NDA).



and



The EM78P156 is pin and function compatible with Microchip PIC 16C54/55/56 (see Elan application note “Replacing Microchip’s PIC 16C54/55/56/57 with Elan Microelectronic’s EM78P156/P447”).



I can't find this application note unfortunately.



There are also references to a robot kit called "Cybot" and how they are PIC clones.


I have yet to get any response from their support and I have tried calling and emailing. The domain "www.elan-europe.com" mentioned on some datasheets is dead, so I am stuck with Taiwan.


So, my questions are:



  1. How close are these to clones of PIC processors? Sounds like the EM78P156K is a direct clone - does this include ISP?

  2. Does anyone know of any example projects, hobbyist or commercial, that are documented on the internet and use this series of processors?

  3. Is there an open source or otherwise freely available toolchain for them?

  4. Mention is made of in system programming in several data sheets and pages, but I can't find any documentation. Does anyone know of any?



Answer




As far as programmers go this might be helpfull.


Here is the manual for the UWTR programmer http://www.emc.com.tw/eng/database/Sa2/Gp/Dt/UWTR_UserGuideV1.8.pdf


This document seems to show how to connect the DWTR and some chips http://www.lbmcu.com/docs/ggg.pdf but I am not sure as I don't understand the chineese(?) chars.


Some "universal programmers" claim to work with the circuts you are describing such as http://www.soselectronic.pl/a_info/resource/c/elnec/BeeProgPlus.pdf I can't find that one on ebay, but there are others that make the same claim.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...