Customer Repair Tracker
ena electronics laboratories

electronics engineering / servo + automation repair

ENA Electronics Blog

Reverse Engineering | Industrial Electronics | Servo Repair

ENA is published!




ENA is published! Foreword by one of our presidents and chapter 4 by our lab manager.



PCB-RE: Real World Examples by Keng Tiong Ng now available on Amazon for purchase HERE



About the Book:


Putting into practice what you've learned is perhaps the most challenging thing to do, especially if there is no practical and detailed example to take reference from. It's with this in mind PCB-RE: Real-World Examples is written.This book completes the earlier works of the author, namely The Art of PCB Reverse Engineering and PCB-RE: Tools & Techniques, by providing the reader an in-depth walk-through on how theory is put into practice. Together they form the trilogy on the PCB-RE subject.While the first book provides a simple example using an ISA-bus SCSI host adapter to illustrate the steps in doing manual PCB-RE, it serves only as a starting point for those embarking on this adventurous journey. Along the way, questions and difficulties will abound, and one is left wondering if the manual approach is even possible, if at all practical to begin with.This book expands on the practical aspect of PCB-RE by tapping on the invaluable experiences of engineers in this field, supplemented with the author's own example of a more complex board. Perhaps the contributions of like-minded engineers will afford budding enthusiasts a peek into the real-world workings of PCB-RE, so they can learn from the strategies and techniques described to develop their own methodologies. As far as the author's example goes, the illustrations are done using Microsoft Visio but the process of solving the interconnectivity puzzle is generic. Prior familiarity with the steps mentioned in his first two books, though not a necessity, is advantageous to get up to speed and essential if the reader intends to use the same diagramming tool.Hopefully, this book will give the reader new perspectives and ideas that will enrich his or her PCB-RE experiences and inspire more engineers to take up this challenging yet rewarding practice that is gaining recognition and importance in the PCB repair and refurbish industry.





Improving or modifying the existing firmware to add extra features is difficult without providing the source code (the original program in its original language), this is because, when a compiler compiles code for a programmed IC the compiled output is translated into machine code which is then downloaded into the IC. This machine code although not impossible to disassemble the machine code into assembly code + thus edit it, it is a process that is certainly not quick + can often result in limited results at best.


In situations where you need to edit or change the algorithm but you do not have the source code we recommend that you get in touch to see how we can help you rewrite your firmware.


We first start by reverse engineering your circuit board + finding out what inputs + outputs are connected to the programmed IC this allows us to make sure the functionality of the new firmware replicates the old. We then take these inputs + outputs + either replace the programmed IC with a modern equivalent or use the make + model of the original IC, buy a new one + then program it to have expanded functionality.


The benefits of redeveloping your firmware is that you will then be able to have backups of your new source file to use for future production + if your new programmed IC or microcontroller ever becomes obsolete you will have the source file allowing you to recompile the code for another microcontroller which is far quicker + faster than redevelopment.


Do you need firmware modifying or improving? If so get in touch to see what solutions we can offer you.

Making Schematics from Printed Circuit Boards - Why We Love Reverse Engineering



There are many reasons why a PCB must be reverse engineered for a client however it is worth asking the question why do we love to reverse engineering printed circuit boards?


One of the biggest reasons we love to reverse engineer circuit boards is that we can learn a lot from the way a circuit board has been manufactured. We love the challenge of taking a circuit that serves a purpose but is now unsupported working out how it was made + then making a replacement.


Sometimes we need to clone or copy a circuit board in a process that involves duplication. Everything down to the routing of the traces is copied + this means that no mistakes are made, this is especially important for those circuit boards that are EMC Seismic + EMI qualified, routing the traces exactly like the original leaves little room for extra noise or crosstalk on the signalling. It’s in reverse engineering circuit boards like this that we learn how to make replicas of technology that might be dated or have modern equivalents + we have the challenge of finding out where to source parts from, how to manufacture mechanical parts + how to assemble the product.


When it comes to feature upgrades or adding something new we love to reverse engineer a circuit board as we are allowed the creativity to make something great again or to add features that the client longed for but could never have, both situations give us great pleasure using our industry knowledge for your advantage.


Reverse Engineering can often feel like a complex + detailed painting however in reality often circuits are patterns + the more you study them the more you recognise the patterns + the easier it is to reverse engineer the circuit. Many circuits have standard layouts (often found in the application note or datasheet) these circuits help us to draw schematics + layouts of your design. The simplicity of this approach is yet another reason why we love electronic reverse engineering.


To see some of our past projects check out our reverse engineering projects page.

How To Clone (Snarf) A Secured IC



Sometimes we get programmed ICs which cannot be duplicated by conventional means as the ICs have been secured at programming time which stops unauthorised copying. Unfortunately when a manufacturer goes out of business this proprietary code is lost + if the code was secured on the programmed IC then the only solution is to reverse engineer the functionality of the IC.


We have experience in external interface analysis (the black box approach) reverse engineering which is where an IC is probed on its inputs + outputs, inputting a signal onto one pin + detecting any changes on the output for this we use our custom black box tester which we developed just for this purpose.


If you really need we can even do silicon die analysis + work out how the chip is working through a microscope, this is a very time consuming process but can yield some interesting results.


In other situations when we are unable to probe inputs + outputs we have the necessary skills to either simulate the whole system + produce a working replacement (such as developing custom firmware). This process is generally involves re-developing the circuit or at least part of it.


Luckily at ENA Electronics we have the skill to recover your firmware! Get in touch with us for a free no obligation quote.

How to Clone or Snarf A Programmed IC



As mentioned in our previous blog post on Cloning Copying + Duplicating IC’s blog post some IC’s are easier to clone/copy than others.


After a study of the market + ensuring that the IC/PCB is indeed obsolete we will first take your PCB + check that we can clone/copy any programmed ICs on the PCB. We do this by checking the make + model of each programmed IC, these part numbers are usually stamped on the top of the IC + we check it against our database of IC’s that can be programmed. We ensure we can source replacement parts + extract the machine code or hex code from the IC ensuring the chip revision + speed is matched or exceeded. Sometimes we receive IC’s which are not standard pinouts or packages - in such cases we make adapters to convert the IC into the universal programmer adapter type.


Once the code is extracted we view the checksum + view the hex code using a hex viewer in order to ensure data has been read. In 99% of the cases when we see data in the hex file we can duplicate the IC + this allows us to then program a blank IC that we have sourced.


Assuming the cloning process above is successful then the code will work identically to the original IC, will be just as reliable + its functionality is tested in the circuit. The whole process is nondestructive + allows us to copy the original IC without any damage to the original so rest assured your working IC will stay working!


We can help you with your old + obsolete IC cloning, get in touch to see how we can help you.

Cloning, Copying + Duplicating ICs + Microcontrollers for Reverse Engineering



The heart of modern electronics is often a programmed IC (Integrated Circuit) thus the most important step when reverse engineering a PCB is to clone or copy the programmed IC’s. It should be noted that this process is only done after a thorough check to see if the PCB or IC is available, as this is proprietary code + can cause legal issues. You can only proceed given you are not breaching any IP or patents.


The concept of programmed IC duplication is to extract the machine code (often called HEX code) from the original programmed circuit + then write this code back onto a new IC which is critical in order to produce a duplicate PCB.


As electronics have got more complicated, circuit designers use integrated circuits to simplify + add functionality to a circuit. One example, is the use of Complex Programmable Logic Device (CPLD) to remove dozens of logic gates from a circuit by creating them on one chip thus saving cost time + circuit board real estate.


Before the days of microcontrollers circuit designers would use microprocessors, Read Only Memory (ROM) + Random Access Memory (RAM) to do the same thing. The ROM is where the program is stored + when reverse engineering a PCB with ROM on board these ROM’s need to be copied, luckily most universal programmers carry the older types of ROM + the programs are very rarely protected.


As technology has advanced Electronically Erasable Programmable Read Only Memories (EEPROM) have appeared, these often are used to store parameters or settings for a microcontroller, in general these can all be read using a universal programmer.


Microcontrollers are one of the hardest things to work with when reverse engineering a PCB this is because it is extremely easy to secure/copy protect a microcontroller. Often a designer will secure the device when programming it the first time so that it cannot be read properly by a universal programmer. If this is the case then there are ways around this, however, they are generally quite time consuming + involve manually probing each pin + rewriting the programming. It is very common to find microcontrollers on a PCB next to their programing headers - often these programming headers can give a clue to how the designer programmed the device + can sometimes be used for extracting the firmware. Although there are many microcontrollers on the market the main two microcontroller brands are: PIC microcontrollers which generally use the In Circuit Serial Programming (ICSP) interface + Atmel microcontrollers use the In Circuit Emulator (ICE) header.


Field Programmable Gate Arrays (FPGA)s are another type of programmed chip that are more common on more costly electronics + generally on newer electronics. FPGAs are often more complicated to duplicate as they normally have proprietary software/hardware suites + are commonly programmed over (Joint Test Action Group) JTAG or with a special programmer + cannot be read using a standard universal programmer.


If you need help to duplicate your programmed IC then get in touch, we’d love to help!

Home ← Older posts

subscribe to our mailing list

Back to Top

home page | about ena | electronic repair | servo motor repair | reverse engineering | warranty | careers | contact

© 2017 | website by jessica oddi