I would like to know how I can go about adapting our JD tractor which is Autotrack/GPS ready to run on RTK signal using the AOG software.
We can’t afford the Greenstar kit but it seems a shame not to try and get GPS setup on the tractor.
Is there anybody whom has carried out this work before who would be willing to share their experiences and provide some guidance please.
Thank you in advance
It’s not an easy proposition and may never happen. No one has yet sat down to figure out how everything is communicating on the Deere system. We know it uses CAN bus, and I have decoded some of the communication. But there is likely more to it than just knowing the PGNs. Deere’s components interact with each other and much of that uses proprietary PGNs that are not documented anywhere. Even if we find the PGNs associated with the steering valve, there’s no guarantee it will respond without the rest of the system present on the bus.
I spent the afternoon doing some sniffing on my older tractor with a brown box monitor. I discovered that everything happens over the implement bus, and not on the tractor bus like I had thought. The monitor has two can buses going into it, but only one is used apparently. It functions with the other one cut completely.
I have found lots of things that aren’t related to steering. I found SCV settings, Engine RPM, Ground speed, PTO speed, and a bunch of other things.
After all that, it appears that all the magic happens in just one proprietary PGN (65535) that is used for lots of purposes. Fortunately I understand some of these messages already so I can filter it down some more. I will do a bit more digging tomorrow to see if I can isolate the wheel angle sensor and the engage button. I might be able to see the steering valve control messages too, but I think that will be harder to figure out since I can’t make them happen predictably.
I’ve pinned down three messages that I want to investigate more. Two are from the monitor to the tractor and may have something to do with the steering valve: PGN 65535, first byte of payload is 0x31. The other has a first byte of 0x77. These ones appear to change when I was using autosteer, and don’t change much when sitting still. The third message is from the tractor to the monitor (a periodic broadcast) and might include steering angle or sensor info, and the button information. Same PGN, first byte is 0x76.
Of course the challenge then becomes to make sense of the payload.
If you want build an AGO system on an Autotrack ready JD tractor there are some component you can try to use: the hydraulic valve, the wheel sensor, and the steering wheel encoder.
You have to choose if you want to sniff or cut in theses components or just install new ones.
For the hydraulic valve: as @torriem said there is a great possibility that’s an Danfoss valve with an CAN bus head, so not much you can do with this, except maybe swap the head for an pwm one.
So you have to identify the valve on your tractor, and maybe post the details here.
For the wheel sensor you should be able to just sniff the ground and signal on the sensor and bring this to the autosteer board.
For the steering wheel encoder I don’t know if you can sniff for a signal some where, I think JD use 2 encoder?
In my option on JD you will have to go all JD monitor and receiver or AOG and third party receiver.
Yes all machines have some place where the digital meets the analog and you can tap in there. Even the button on the console to engage autosteer can be wired directly into the arduino for AOG.
I’ll continue some explorations of the CAN world and report back. It sure would be slick if it were possible to plug something into the isobus plug and have AOG work with the tractor without hacking any wires! But that’s pretty far fetched at this point.
Give this thread a look over. The danfoss valve with 4 wire plug is what works. JD 8230 hydraulic steering - #8 by JohnP
Hi @Pat @torriem
Thank you for the advice. I suspected that I would be taking on the impossible but it is very interesting to hear your views.
Tractor is a 30 series (7930) so suspect it has a danfoss valve like the 8030 series. Though to be honest I wouldn’t know where to look on tractor to check.
Please excuse my ignorance but my understanding of technical terminology and acronyms is poor. @Pat could you explain what you mean by sniff and cut in please?
The valve is hard to get to on my 7920, probably similar to yours. I once had to have the dealer replace something on the steering valve. He had to remove some of the exhaust piping to get to it. It’s located somewhere down near the back of the engine, where the driveshaft goes into the transmission. Very hard to get to. But maybe the wiring harness is more accessible somewhere along the frame. Read @JohnP’s link. very good stuff that might be applicable.
I think what Pat’s referring to is locating the valve and sensors and cutting into the harness and splicing them into the AOG controller board. Bypassing the proprietary John Deere digital controls.
If you follow your steering wheel column down to underneath the cab the steering wheel would end at the danfoss valve
By sniff I mean just reading voltage on wire in a way I won’t interfere with any sensor or controller, cut in would be more invasive like removing the component from the JD control to use it.
So it seam that not all 30 serie valves are CAN bus? That’s great! How can we identifies it? are there number on the head? By the connector?
CAN and PWM can have the same 4 pin connector I think.
@Pat @JohnP @torriem
Thank you for the explanation.
I’ve taken the panels of the steering column and had a look around. Got a couple of pictures of what I think is the plug to the steering wheel encoder, but can’t reduce in size to upload so put them in my Google album here:
I always find it helpful to see what other companies say about installing their GPS systems. Here’s a document that describes installing an AutoFarm system on a GreenStar-ready 20 series tractor, which is likely similar to your 7930. Page 3 of this document shows accessing the steering wheel encoder harness. It’s two 4-pin connectors. Not sure why they use two different connectors. Redundancy maybe? Doesn’t say what kind of encoder it uses. Most of the cheap ones you’d use with Arduino are just 3 pins, not 4. Anyway, yes it looks like your picture there so I think you’ve found it.
Autofarm works with the Deere steering valve, so it must be something fairly understandable, likely not using CAN bus at this point. If you find your steering valve on your tractor you can identify CAN pretty easily because it will involve a twisted pair of wires .
Spent the afternoon doing some more analysis. Good news I can make sense of everything except the steering commands. Bad news is, it’s complicated and most of it won’t work with AOG at all. The only useful thing is the steering angle sensor. That data comes over the bus all the time. I think it has to be calibrated, though. I am not sure how that’s done but I recall it was done in the diagnostic display once. Even when the brown box monitor is disconnected from the pillar, I can still see the steering angle information. So I imagine that will always be there on a GreenStar ready machine, but could be wrong. PGN is 65535, the first data payload byte is 0x76, and the steer angle is a signed byte in position 2 of those messages. positive is to the left, negative to the right. Range is about +/- 65. Not sure if this is degrees or not.
The autosteer button on the armrest is way more complex. Short version if the tractor can not interact with a monitor with autotrac, the button does nothing. There’s a complex interaction between the monitor, the SSU computer, and the armrest. When you tell the monitor to enable the system, it broadcasts a message to the tractor. If everything is good on the tractor end, the tractor sets some flags in a message that’s broadcast back to the monitor. At that point, the button on the armrest will cause a flag to be set in that same broadcast. The monitor then does its thing and eventually the tractor’s broadcast reflects that everything is good. If you move the steering wheel or put it in neutral, the tractor sets a flag that the monitor sees and then stops steering. Simple, eh.
With the possible exception of the steering angle sensor, you’re better off connecting directly to the steering wheel encode and the autosteer button in the armrest.
I have the problem with my JD 7730 when I disconnect the steering wheel encoder, I get an SSU error message. I saw on the internet that encoder terminators are installed. does anyone know how this can be wired?
I haven’t had any success with connecting the factory encoder without the errors, but if you need to delete the error codes and don’t know how watch this video Reset codes on 30 series John Deere tractor - YouTube . Works for the 8x30 series
Could you pull the fuse on the SSU? If you’re going to bypass it anyway, and go to the sensor and valves directly, there’s no need to have it power on.
Ag Leader has an install document on how they hook into the various sensors and the hydraulic valve on John Deere, and that involves unhooking them from the SSU. Not sure if they simply put dummy caps on all the plugs that give the SSU enough value to keep it happy or what. If I can find the document I’ll post it here. Right now their support server is down.
Pulling out the fuse is a good indication. I will test and report it in the next few days.
I tested it today. when i pull out the fuse, i get a new error message. “ICU communication error”
Bummer. Is this a quadrature encoder sensor? Maybe could be faked somehow with resisters to keep the ICU and SSU happy.
EDIT. I found some information on how Raven uses the John Deere sensor in their third-party autosteer. See here. It looks like they have rigged up some “terminators” to keep the SSU happy. They are Raven part number 063-4001-003. I suspect they are just resistors of some kind, probably tying the two signal wires high or low. In commercial sensors they often use resistance to help the ECU detect whether the sensor is unplugged, or shorted to ground or to high signal. I might have a look tomorrow and see if I can figure out how that works.
I looked that part number up and most dealers want around $45 for that terminator. For nothing but a plug and some resistors. Raven prices for cabling are insane.
I have installed a fixed resistor on the cable that leads from the WAS to the SSU, now I have no more SSU errors.
Is it possible to get information about PTO speed and hitch position via the CAN bus? Has anyone done that before?