I have verified that the .HEX file that MPLab generated is in fact a valid .HEX file that can be directly burned to a PIC. I have the soic-28 to dip adapter pcb's that I need on order, and as soon as they arrive (probably Fri 5/15) I will burn a PIC and put it in my MXT and test for functionality.
Assuming it works (I expect it will) I will begin converting the assembly into C as reference code for this project. BTW I'm old school and don't have AI tools so if anyone wants to run that assembly code thru Claude or something, that would be great!
Also in the background I'm chipping away at creating a complete component list, and will soon begin the schematic with a thought towards a build procedure document.
Announcement
Collapse
No announcement yet.
Let's make a closely MXT like detector!
Collapse
X
-
I am on the road until the beginning of June. So I can't check which pic processor I have. I'll pm you when I can get the number. It will be interesting to see what AI can do to generate a C listing from the assembly. Thanks
Leave a comment:
-
Thanks. MPLab also generated a .HEX file but it didn't appear to be a binary file, but I only glanced at it, so I still need to verify it is a ready to burn file. If so I'll burn one and see if it operates in my MXT. The PIC16C76's that I have on hand are SOIC-28's but my old version C MXT board takes a 28 pin DIP, so I'll also need to see if my SOIC to DIP adapter will fit into the MXT...Originally posted by Altra View PostGreat work KR. Have you tried cloning and testing a new pic in the mxt? In my cnc controller it is a F series. Do you think it is readable also?
...and I think the F series would be easier to read than the C series chip...can you tell me specifically which PIC18Fxxx it has?
Leave a comment:
-
Great work KR. Have you tried cloning and testing a new pic in the mxt? In my cnc controller it is a F series. Do you think it is readable also?
Leave a comment:
-
Well here it is - attached - the disassembled file of the PIC16C76 from my MXT - for your viewing pleasure. Has a column of the ascii of the binary, and a column of the PIC16Cxx assembly code - complete from memory location 0x0000 thru 0x1FFF - hoping someone can prep this with some regex magic and then turn the assembly into C.
Also, if the column with ascii representation of the binary was turned back into a binary 8k x 14 bit hex file it could be burned back to a PIC (I also have the configuration bits needed at burn time) - as Altra may find interesting for his CNC...off topic though...Attached Files
- Likes 2
Leave a comment:
-
First a note - again - this project going forward will use a STM32 micro, the below is just for those who want to try to access the code burned into a PIC....Originally posted by Altra View PostHi KRinAZ, can you tell us what your "fun tools" are? I have an old cnc machine controller that uses a pic18f. The company that made the controller has been out of business for at least 15 years. I would like to build a back up controller if I can dump the hex. Thanks
The tools that I was able to use to produce (disassembled from program memory) assembly code from a 16C family PIC (e.g. the code from the PIC16C76 in my MXT) are:
One of
PICStart Plus - beige p/n 10-00157 Revision 10 thru 19 (I have r10, had to burn another PIC17C44, then install it, to do a firmware upgrade) running v3.11.00 firmware (called Picstart Plus OS 3.11.00, included with MPLab IDE v5.7.4)
PICStart Plus - beige p/n 10-00157 Revision 20 thru 22 (better, can download firmware directly to update it)(should work? but I haven't tested)
PICStart Plus - black p/n 10-00379 any Revision (best, can also download firmware directly to update it)(should work? but I haven't tested)
no other programmer, or debugger, to my knowledge, will work
MPLab IDE v5.7.4 - (still accessible at Microchip site) which is ancient and requires true Win95 or Win95 emulation (Win98 is too new and doesn't work) via Win10x32 with NTDVM - but includes tools that are removed from later versions of the MPLab IDE (like outputting usable disassembled assembly code).
no other newer MPLab, to my knowledge, will work.
I have not yet found a way to copy out the binary code directly into a .hex file, but I believe the assembly code can produce a binary file if needed via MPLab...Last edited by KRinAZ; 05-06-2026, 05:46 PM.
Leave a comment:
-
Agreed 100%Originally posted by Carl-NC View PostWhy would you want to use a C-series micro? They are OTP and non-debuggable. If you want to stick with PIC use a more modern chip with plenty of flash and MPLabX support.
This bit of the conversation - with any talk about a PIC or MPLab - is purely about the effort to get the code from the PIC16C76 from my MXT. Believe me, I am sold on using a modern micro for this project, and over in post #113 I cover my choice of STM32's for this project, and why I chose the ones I did. If I do ever mess around with PIC micros it would be with F (flash based) ones, but I don't see myself messing with PICs - other than trying to read code from them when the need arises - e.g. Altra's desire to get the code from the PIC in his CNC machine...but that is off topic for this thread...
The talk about the debugging capabilities of the PIC16Cxx only relates to an easier vs harder route to getting the code from the PIC (if possible) for potential use of code bits in this project.
Thanks for making this point - this project is STM32 based for sure, 100%, no worries, I already have a NUCLEO-F303K8 to use for the early breadboarding and prototyping for this project. The schematic and control board won't use a NUCLEO though, but a (currently) STM32F303K8T6 LQFP32 chip.
Leave a comment:
-
Even then, use an F-series chip that is reprogrammable and debuggable.
Leave a comment:
-
I believe He is attempting to extract the hex from some old pic16c chips
Leave a comment:
-
Why would you want to use a C-series micro? They are OTP and non-debuggable. If you want to stick with PIC use a more modern chip with plenty of flash and MPLabX support.
Leave a comment:
-
Well the better news is that since I upgraded the firmware in my PICStert Plus I can now run the latest (and last, before MPLab X IDE) version of MPLab IDE - v8.9.2
The less than better news is that the PIC16C76 appears to not have any debugging capability designed into it's silicon, and therefore is not supported by any of Microchip's debuggers as seen in the attached screenshot. Just the same I'll take a shot at my PIC and see what I can do...
Leave a comment:
-
Dont bother you already have it "The PICSTART Plus" is a legacy Microchip development programmer designed for programming old PICmicro microcontroller devices. Its Just not have an in circuit debbuger capabilities like MICD2 has with special daughter board and 6pin piggy cable. The daughter board is inserted into the chip socket on the MXT PCB motherboard, and on the daughter board itself there is a socket for the PIC Microchip MCU controller and 6pin cable connector RJ-11 type to MICD2. Then MPLAB IDE can debug software with hardware stop points for program and in real time debug&edit firmware of the working development device.
When learned microelectronics PIC16C76 is a with Eprom type memory inside, but don't have quartz window for deleting with UV-C light lamp for 20-30 min. So there is not posibble to hack it PIC16C76 with software, after the fuse CP write read protected bits are set. And is one simple brute force solution, but you will need - a microelectronic microscope with more than 2000-5000 optical zoom this will need to use to locate place where these fuse cell are on die crystal in chip first then with a laser emiter UV light or focused UV light Lamp in to thiny beam to locate and charge capacitors of Eprom type memory and with that disable CP protection bits. Rest is to simply read hex-code from chip with any programmer you have will be suitable. Of course you first need to dessolve plastic epoxy resign case to get access to chip die. And there are specialized china's who ask only 1000$ for all that work Original PIC16C76 with code and three blank samples of PIC16C76 required to do all that up described briefly just order, send and pay - and within a week or month you recieve one PIC16C76 with hex program on him coded but not code protected bit set and is up to you to read and share hex code or debug if you like and dissanssemble to source and rewrite algorithm of auto ground balance and other program secrets MXT have like good discrimination for example. Or Just Ask Carl to Explain how is done by memory recall and write new source then to broke enchanted loop ot authors Right's s.h.i.t.y need to go open source by Creative Common like license of this first will get benefit china copier who search for DIY free project on this forum and get you new program source and build "MXT" in serial mass production to flood the market world-wide with a fraction of price of original dead White's who to same end fight with a wind mill's like Cervantes characters and don't give nothing for free or reduce high prices so they re goone Now RIP.Last edited by Hristo; 05-02-2026, 05:08 AM.
Leave a comment:
-
Ok many thanks for that.Originally posted by Hristo View PostYou Will Need MPLAB InCircuit Debuger 2 who has exclusive option to download and debug firmware a developer mode programmer:
It only 2 has a unique feature to download firmware from PIC and dissansembler in IDE MPLAB
Overview created by AI(google):
Yes, MPLAB X IDE, when used with Microchip programmers (like PICkit 3/4/5 or ICD 3/4/5), provides functionality to read/download firmware from a PIC MCU and disassemble that code, which is a key feature for debugging and firmware recovery.
https://stackoverflow.com/questions/...pilers-for-pic
AI responses may contain errors. Learn more AI responses may contain errors. Learn more
The ICD2 requires MPLAB IDE v6 or higher, I'm running v5.7.4, I'll have to see if the firmware in my PICStart Plus programmer will work with MPLab v6 or higher (hope so). If so I'll look into getting an ICD2. I see there are some ICD2's on eBay...
I'll make another Win10x32 To Go drive and install MPLab IDE v6 and see what support looks like. One problem may be PIC16C76 support - I already saw an ICD2 overview doc stating the ICD2 does not support the PIC16F76 (and therefore PIC16C76 also?), but maybe it was an early version doc?...Best way to know is to install the newer IDE to get the readme's and check the support...I'll do that this weekend...
Leave a comment:
-
You Will Need MPLAB InCircuit Debuger 2 who has exclusive option to download and debug firmware a developer mode programmer:
https://www.microchip.com/en-us/deve...-tool/dv164005
It only 2 has a unique feature to download firmware from PIC and dissansembler in IDE MPLAB
Overview created by AI(google):
Yes, MPLAB X IDE, when used with Microchip programmers (like PICkit 3/4/5 or ICD 3/4/5), provides functionality to read/download firmware from a PIC MCU and disassemble that code, which is a key feature for debugging and firmware recovery.
https://stackoverflow.com/questions/...pilers-for-pic
AI responses may contain errors. Learn more AI responses may contain errors. Learn more
Leave a comment:
Leave a comment: