Support for j1850 VPW/PWM?

Ok I posted it in my Github repository.

Because J1850 actually has two protocols it is in its own directory for now.

I also plan to add PWM once it works to this.

Since this is working I will use it as the base and go from there.

Again thanks Ben for your time on this.

The github repository was already mentioned above but just in case it was missed here it is:

2 Likes

Great work everyone. We’ve added this library to the main showcase page here:

http://showcase.macchina.cc/libraries.html

1 Like

Thought this might be helpful for getting PWM working:

I haven’t had a chance to play around with it.

Has way more than we need but I will see what I can do.

Going to download and verify that all of the libraries in the spotlight work with my setup then look into this. (Works great with my STN dongle.)

Rodney

Well I can verify the J1850VPW is working…
Trying to get my M2 to recognize the CANBUS stuff on my lab and not working with either M2 device. I will try to see if it will work in vehicle.

Getting jiberish from the bus and not sure why… SavvyCAN isn’t displaying but is saying it is connected.

I did find out that Arduino Studio doesn’t like it if things aren’t in the library directories… Learning every day I guess…

Rodney

1 Like

11 posts were split to a new topic: CAN on a 2006 Chevy 1500?

What is the software being used by dmaxben for parsing the data and only seeing responses, I was able to do some things with my truck last night, I was able to map the steering wheel buttons, as well as window lock and door locks, I can see a ton of messages on the key in switch on position. Once I start the truck messages are far too fast for me to manually see anything… I have an STI tuner for the truck and I can see standard parameters, speed, RPM, temp, etc. With the tuner I have, I can manipulate the transmission shift points and such so I am guessing that I might be able to see that info as well. Is there any way to use SavvyCAN to filter the J1850 messages using your M2 Library?

There CURRENTLY is no utility to map out J1850 responses.

SavvyCAN is only for canbus stuff and won’t work with J1850 or anything other than CAN.

You need to either build your own program to strip out the responses, do it manually or plug into a spread sheet and do comparisons. You CAN do a sort of rows based on what is in them so you can sort a log into like commands and go that route. With no real software to do this for you this is the best route. Your logging software should be able to group stuff together and go that route.

I may be able to get something together that will make this easier after my finals this and next week. Something to at least make the library useful. Shouldn’t be too hard to make an M2 logger that can make a spread sheet importable data file (.CSV). Then you just drop the CSV into your favorite spreadsheet program and sort them.

I have to reference my materials to decode the data structure then create the lines with that structure in place and go from there.

MAY be able to write to the SDcard as well but haven’t played with that yet.

Rodney

I will have a busy week this week as I prepare for my last final exam which is a group presentation. Once I am done with that I will try to build a logger that writes to the SDcard which should allow for VPW stuff to be loaded into a spread sheet. This should help with figuring out commands since you can then import into a spread sheet and sort through the data. That will be as far as I go with this for now until I complete some other stuff I will be working on. Want to get the ELM327 stuff working on the current setup and possibly get BT and WIFi working. Once that is completed then I will try to integrate J1850VPW into it and so on.

Rodney

Is anybody here working on the j1850 PWM implementation?

I don’t believe anyone currently is. I plan to but have a bunch of other stuff to accomplish first.

9 posts were merged into an existing topic: Flashing GM ECU with M2

Hey all. I tried the M2 sketch for J1850 VPW, but had no luck communicating with a PCM. The PCM is otherwise accessible via ELM, etc.

Can anyone please confirm if they were able to get the library working (the one posted at https://github.com/redheadedrod/j1850 - if so, were any changes necessary to get it working? Thx.

Works fine as is. What PCM are you using? I have a lab right now using a 12200411 PCM which it connects to quite easily. Depending on what your using you MAY need a wake up code to be sent which software for the ELM generally does.

If you look in the examples there is basically a serial terminal that sends a code out and receives it printing what it receives.

In examples you want to run “J1850_M2_v1.ino”

I did this just now and I get this from my “411”

TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: E8 FF 10 03 B3
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: E8 FF 40 03 ED
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: E8 FF 10 03 B3
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: E8 FF 40 03 ED
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: 88 83 10 0A 00 00 EB
TX: 48 69 2D 4D 32 21 CC
RX: E8 FF 10 03 B3

Please note that this library will be re-written in the coming months with the intent of being integrated with M2RET and total ELM/STN compatibility. Also intend to be compatible with the new PCM flash software being worked on. I hope to embed the PCM flashing configuration within the M2 for those desiring that capability. It will be an optional add on over the top of J1850VPW

1 Like

Thanks for the quick reply. I’m bench testing it with an ebay PCM from a 2004 Chevy Astro 12586243. As mentioned before, no problems communicating with it using other adapters (ELM, OBDLink LX) via J1850 VPW on torque, etc.

I was excited to play with J1850_M2_v1.ino but unfortunately I only see a “TX: …” message, but never an “RX” reply in the serial monitor.

I was just making sure there were no missing steps, whether hardware on the M2, or software tweaks to get the sketch to run. Not sure about the wakeup you mention and whether it is required for J1850 VPW. I’ll go back and check my work…

All I can tell you is that it has worked with anything I have tested it with so far. Make sure both of your grounds on the port are connected together to a ground on the PCM. Make sure you have 12 volts going to the PCM and DLC port and make sure you have one of the data lines connected between the two. I wouldn’t hook up both of the PCM lines as it might confuse the PCM since generally it appears one is to connect directly to the BCM and the other connects directly to whatever else is in the driveline assuming your PCM has 2 datalines.

I haven’t taken it out to my truck to test which would be more in line with your PCM but should work fine. Others have tested it and it works well so I am not sure what to tell you?

If you have an ODBII Y cable try using that to connect both your ELM and your M2 and see what you see. You may find it chats just fine. The ELM with software may be giving the proper wake up command to get a response.

Got it! Thanks for sticking with me on this. I made a noob mistake where I only had OBD pin 4 (chassis) grounded, but needed to ground pin 5 (signal) as well, and then it started working. I’m guessing a lot of adapters tie 4+5 together (for better or worse), which masked the issue I was having. It’s getting good responses back, about 25ms “round trip” for a mode 01 PID request/response.

Glad to have helped. Yes for benchtop work the DLC should have both grounds connected together. Some adapters only use one ground and ignore the other and other configurations. But you can’t go wrong if you tie them together for a benchtop setup.

Pin 4 would be considered a “Chassie” type of ground. Pin 5 would be considered a “Signal or Data” ground directly from the Pcm. In a lot of cases pin 4 alone will work but some vehicles use a discrete grounding method on the data port connector where pin 4 and 16 are designed to feed the device power and pin 5 is intended to be used as the ground for data communication.

There is also nothing wrong with connecting pin 4 and 5 together. Glad you got it working.

Hello dmaxben,
I am messing around with the HUD and DIC in my '08 Vette - got some things to work, others not.
I do not have onstar to reverse engineer and Us-Chevys are hard to come by in this part of the world ^^
Could you share some of the details of the DIC communication? PM me if you want!
Regards,
Funky Luke