PCM Hammer Release 014

They go by many names, P01, P59, VPW, '0411 etc. Also covering E38 and newer here.
pman92
Posts: 464
Joined: Thu May 03, 2012 10:50 pm
cars: HZ One Tonner
VE Ute
Location: Castlemaine, Vic

Re: PCM Hammer Release 014

Post by pman92 »

Looking at the 6C and 6D header byte and SAE Documentation:
Both have a priority of 3.
6C is a "Physical Node to Node" message type
6D is a "Reserved - Manufacturer" message type

Not sure if that's any help
VR-VY Holden BCM Simulator: View Post
MrModule.com.au
User avatar
antus
Site Admin
Posts: 8237
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Re: PCM Hammer Release 014

Post by antus »

Ive reached out to NSFW to see what he thinks is the best option here. The logic is common to a lot of parts of the app, and its not clear the best way to create this exception for this pcm in this one part of the app. I think we may need a global pcmbugs variable, and this becomes the first enum in a list that we can set for the LB7 pcm. But even then it looks like we'll need anonymous arguments so the logic in the core of the app can understand the context and change its behavior for this one situation. But i'd like to hear others thoughts on that and it takes some understanding of C# OO to implement. I think its clear we need to accept this message, in this case, but the question is how to do it while keeping solid error checking in place for the rest of the app?
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
User avatar
Gampy
Posts: 2331
Joined: Sat Dec 15, 2018 7:38 am

Re: PCM Hammer Release 014

Post by Gampy »

I just sent a test build to In-Tech with the following change.

Code: Select all

        public Response<bool> ParseUploadResponse(Message message)
        {
-            return this.DoSimpleValidation(message, Priority.Block, Mode.PCMUpload);
+            // The following logic is due to what appears to be a bug in the E54 ECU (LB7 Duramax)
+            // It responds to a Priority 0x6D with a 0x6C, is this a GM Bug??
+            Response<bool> response = this.DoSimpleValidation(message, Priority.Block, Mode.PCMUpload);
+
+            if (response.Status == ResponseStatus.Success || response.Status == ResponseStatus.Refused)
+            {
+                return response;
+            }
+
+            return this.DoSimpleValidation(message, Priority.Physical0, Mode.PCMUpload);
        }
Last edited by Gampy on Tue Jul 14, 2020 2:07 pm, edited 1 time in total.
Intelligence is in the details!

It is easier not to learn bad habits, then it is to break them!

If I was here to win a popularity contest, their would be no point, so I wouldn't be here!
User avatar
antus
Site Admin
Posts: 8237
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Re: PCM Hammer Release 014

Post by antus »

That looks good, and if it works it probably just needs a comment to explain that its for the LB7 PCM :thumbup:
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
User avatar
Gampy
Posts: 2331
Joined: Sat Dec 15, 2018 7:38 am

Re: PCM Hammer Release 014

Post by Gampy »

antus wrote:That looks good, and if it works it probably just needs a comment to explain that its for the LB7 PCM :thumbup:
Bah, who needs comments, comments are for those that CRS!

Oh, Yea, that's me!

Done! ;)
(Review patch post)
Intelligence is in the details!

It is easier not to learn bad habits, then it is to break them!

If I was here to win a popularity contest, their would be no point, so I wouldn't be here!
In-Tech
Posts: 778
Joined: Mon Mar 09, 2020 4:35 pm
Location: California

Re: PCM Hammer Release 014

Post by In-Tech »

Sent logs to Gampy, it uploads the kernel now and gets appropriate response that it is executing but doesn't identify the kernel. More details in PM unless you guys want this here.

The last one was a bit longer since I didn't get the boot on the first attempt. Also the first one failed immediately but then went through my normal power down/up procedures and it moved forward.

My procedure is to turn on power supply for at least 30 seconds(main battery),
Then switched 12v for at least 30 seconds, then attempt. This one needs the boot ground to get past security.

I know it doesn't need to be that long but I try to keep attempts consistent.
User avatar
antus
Site Admin
Posts: 8237
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Re: PCM Hammer Release 014

Post by antus »

Yeah you can post up here, its for those learning to see what we're up to. If the logs are long put them in a txt and attach it so the thread doesnt get too full of logs when browsing. Actually a new thread for LB7 would be even better.
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
User avatar
Gampy
Posts: 2331
Joined: Sat Dec 15, 2018 7:38 am

Re: PCM Hammer Release 014

Post by Gampy »

Either place is fine by me ... I have no secrets.
Or as Antus suggested and create a E54 (LB7 Duramax) thread.

It's either not talking back or not executing ...

Sorry, guess I fudged up, I thought I had included a User Defined Key Dialog mod in that test version ... I'll add it so you can define the key yourself if you know it, if not lets brute force it so we can get past that hurdle easily.

Actually, I'm going to attach one of the logs, more eyes the better ...
PcmHammer_debugLog_20200713@204927.txt
(34.95 KiB) Downloaded 159 times
Intelligence is in the details!

It is easier not to learn bad habits, then it is to break them!

If I was here to win a popularity contest, their would be no point, so I wouldn't be here!
In-Tech
Posts: 778
Joined: Mon Mar 09, 2020 4:35 pm
Location: California

Re: PCM Hammer Release 014

Post by In-Tech »

LB7 thread started viewtopic.php?f=42&t=6826
ColPaul
Posts: 36
Joined: Tue Dec 31, 2019 11:24 am

Re: PCM Hammer Release 014

Post by ColPaul »

I just starting using PCMHammer with ODBX Pro USB. I disconnected the PCM from the wiring harness and used a bench adapter on a Vortec 5.3 (probably an '03 truck engine). I am using a MacBook Pro 13" 2015 Retina running Windows 10.

When I try to download the entire PCM, it works but then fails after "Clearing trouble codes." and doesn't save the file. The log file is attached and the relevant section is pasted below. I reverted to PCMHammer v12 and it works. I'm about to start reflashing the OS to '603 but I would like to get V14 working first.
[04:56:20:144] 0x0FF000 99% 00:00
[04:56:20:144] Read complete.
[04:56:20:160] All read-request messages succeeded on the first try. You have an excellent connection to the PCM.
[04:56:20:175] We're not sure how much retrying is normal for a read operation on a 1024kb PCM.
[04:56:20:191] Please help by sharing your results in the PCM Hammer thread at pcmhacking.net.
[04:56:20:207] Starting verification...
[04:56:20:222] Calculating CRCs from file...
[04:56:20:238] Requesting CRCs from PCM...
[04:56:20:300] Range File CRC PCM CRC Verdict Purpose
[04:56:22:362] 0E0000-0FFFFF A873B6D7 A873B6D7 Same OperatingSystem
[04:56:24:434] 0C0000-0DFFFF 807305D6 807305D6 Same OperatingSystem
[04:56:26:512] 0A0000-0BFFFF 807305D6 807305D6 Same OperatingSystem
[04:56:28:581] 080000-09FFFF CA3CB0F4 CA3CB0F4 Same OperatingSystem
[04:56:30:643] 060000-07FFFF 9A433D6B 9A433D6B Same OperatingSystem
[04:56:32:706] 040000-05FFFF 635F236F 635F236F Same OperatingSystem
[04:56:34:784] 020000-03FFFF 9667FFB0 9667FFB0 Same OperatingSystem
[04:56:36:351] 008000-01FFFF 74C8B461 74C8B461 Same Calibration
[04:56:36:539] 006000-007FFF 3D8662C5 3D8662C5 Same Parameter
[04:56:36:726] 004000-005FFF 85B5BB36 85B5BB36 Same Parameter
[04:56:37:050] 000000-003FFF 6A096F07 6A096F07 Same Boot
[04:56:37:066] The contents of the file match the contents of the PCM.
[04:56:37:082] Clearing trouble codes.
[04:56:38:196] Read failed: System.NullReferenceException: Object reference not set to an instance of an object.
at PcmHacking.OBDXProDevice.<FindResponseFromTool>d__56.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at PcmHacking.OBDXProDevice.<SetVpwSpeedInternal>d__71.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at PcmHacking.Device.<SetVpwSpeed>d__37.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at PcmHacking.Vehicle.<ExitKernel>d__34.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at PcmHacking.Vehicle.<Cleanup>d__33.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at PcmHacking.CKernelReader.<ReadContents>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at PcmHacking.MainForm.<readFullContents_BackgroundThread>d__36.MoveNext() in C:\GitHub\PcmHacks\Apps\PcmHammer\MainForm.cs:line 839
Attachments
PCMHammer14.log
(13.88 KiB) Downloaded 152 times
Post Reply