Nissan 370Z Forum

Nissan 370Z Forum (http://www.the370z.com/)
-   Tuning (http://www.the370z.com/tuning/)
-   -   370Z CAN Bus Proprietary PID's (http://www.the370z.com/tuning/89695-370z-can-bus-proprietary-pids.html)

DIGItonium 01-01-2015 11:33 AM

I can code to process and display data and manipulate HTML pages on the fly by invoking JavaScript, but I haven't done much graphics coding. Currently in the planning stages to build a development workstation at home.

1cintron 01-02-2015 03:32 PM

We can easily create the javascript framework to interface with the obd module (if not available already) and integrate it to an app built using html+js. There are plenty of libraries out there for making and customizing gauges and other controls (I happen to own licenses for a few of them) that we could use to make a pretty clean, tab-friendly, user interface. On the other hand, I am not sure about the scalability options going that route, I've only developed win8 apps using C#.

HOODEY 01-05-2015 08:46 PM

Interesting.. Keep me posted. I have a little experience with microchip and their can bus.

SouthArk370Z 01-05-2015 10:29 PM

The last language I was proficient at was HyperTalk and I no longer have a Z so I can't do any testing (other than general GUI stuff) ... but I like to see that somebody is taking on this project and would like to help if I can. I have an OBD/CAN wiki set up (see link in sig) that y'all can use. If you're interested, PM me and I'll set you up with some extra privileges.

Paul_S 01-06-2015 10:09 AM

Quote:

Originally Posted by Brad370 (Post 2807985)
Straybytes.com is my blog. I haven't worked on that in a while because I've been distracted by other projects. I can help if you have any questions though.

Hi Brad - thanks for all your hard work on this. It's something that I really want to get into. :tup:

If there is anything I can do to help please let me know!

windex 01-17-2015 01:16 PM

Has anyone tried referencing the uprev DLLs and seeing if you could pull the pids from the uprev files?

windex 01-18-2015 01:05 PM

I forgot one of the dat files was an xml file. Might not be what you're looking for.
[generic] <?xml version="1.0" encoding="utf-8"?> - #hg42RN January 18, 2015 02:04:55 Pastee.Co

Brad370 01-18-2015 01:25 PM

Quote:

Originally Posted by windex (Post 3085050)
I forgot one of the dat files was an xml file. Might not be what you're looking for.
[generic] <?xml version="1.0" encoding="utf-8"?> - #hg42RN January 18, 2015 02:04:55 Pastee.Co

You f*$%ing nailed it! The <Address> tag lines up exactly with the addresses I found for the proprietary PIDs. So the first one is 4353 (in decimal), which in hex is 1101. That's the first one on my spreadsheet and the rest seems to match as well. This has all of the formulas and descriptions as well so it should be what I was looking for. Thanks for posting!

windex 01-18-2015 01:39 PM

I wish i had seen this thread earlier but I've taken a bit of a break on modding my Z and couldn't bare to be on the forums. I'm sure I have a lot more useful info to give you.

Paul_S 01-19-2015 07:50 AM

Great progress!!

Brad370 07-07-2015 09:12 PM

I've updated my dropbox spreadsheet. I was able to use the 745 CAN address and the 30 command to control a lot of things in the car: open the trunk, honk the horn, headlights, blinkers, warning lights, door locks, wipers, interior lights, ignition switch lights, defroster, display screen on dash, ON and ACC relays, etc. The BCM IDs tab has all the items I could control.

This is getting very interesting.

SouthArk370Z 07-07-2015 11:10 PM

Quote:

Originally Posted by Brad370 (Post 3250084)
I've updated my dropbox spreadsheet. ...

Thanks for sharing. :tiphat:

Quote:

Originally Posted by Brad370 (Post 3250084)
This is getting very interesting.

Indeed. I no longer have a 370 but still find this fascinating.

VidkidZ 09-04-2015 03:18 PM

Quote:

Originally Posted by Brad370 (Post 3250084)
I've updated my dropbox spreadsheet. I was able to use the 745 CAN address and the 30 command to control a lot of things in the car: open the trunk, honk the horn, headlights, blinkers, warning lights, door locks, wipers, interior lights, ignition switch lights, defroster, display screen on dash, ON and ACC relays, etc. The BCM IDs tab has all the items I could control.

This is getting very interesting.

i couldn't agree more! This has iOS/Android/raspberry pi written all over it. ive been working with a couple odbii interfaces, building dashboards and this is a perfect addition.

amazing work!

Knio 09-13-2015 10:09 PM

I never noticed this thread, my project is one referenced in OP.

Currently I'm *still* working on getting a windows tablet installed in the cubby and haven't had time to write any code for a long time, but maybe one day..

Brad370, that BCM control stuff is really cool.

I have a web dashboard to debug/view my graphs (operates in realtime in the car, and upload logs to my server) you can see here: CarHack

Brad370 09-14-2015 08:25 AM

Quote:

Originally Posted by Knio (Post 3308382)
I never noticed this thread, my project is one referenced in OP.

Currently I'm *still* working on getting a windows tablet installed in the cubby and haven't had time to write any code for a long time, but maybe one day..

Brad370, that BCM control stuff is really cool.

I have a web dashboard to debug/view my graphs (operates in realtime in the car, and upload logs to my server) you can see here: CarHack

Your project inspired me to start working on this.

I'm working on an Android app that I have running on a cheap Samsung tablet that will fit in the cubby. I have gauges that work and look just like our center cluster gauges. It's nowhere near ready to share, but I'm slowly working on it when I have time.

DIGItonium 09-14-2015 10:09 AM

Brad, Have you looked at getting a Raspberry Pi? You can run Android on it, so you should be able to write apps for it. There's an HDMI touch screen display released for it as well:
http://www.technobuffalo.com/2015/09...touch-display/

Man I honestly hate developing mobile apps, but it's something I'm trying to learn as well. Passing data between fragments is a pain since it gets destroyed when dropped, so I may store data in the MainActivity and pass it into the fragment as arguments when it is loaded again.

Brad370 09-14-2015 10:33 AM

I was going to go the route of building custom hardware, but then I searched for refurbished Android tablets and ended up finding a Galaxy Tab 4 (7" tablet) for under $100. I'm pairing that with an OBDLink LX Bluetooth scan tool. So far this setup seems like it will work.

Mobile programming is a huge pain and I'm not liking it so far as I slowly learn it, but you can't beat the built-in graphics, touch, and BT capabilities.

DIGItonium 09-14-2015 10:55 AM

Quote:

Originally Posted by Brad370 (Post 3308671)
Mobile programming is a huge pain and I'm not liking it so far as I slowly learn it, but you can't beat the built-in graphics, touch, and BT capabilities.

The hardware aspect is nice. The code layout drives me nuts. Also the WYSIWYG editor in Android Studio is buggy, and it depends on which Android version you want to use as well. The DatePicker widget is fussy. C#/Java is pretty easy, and Swift is another new language and style. I can code and skin touch friendly programs in Visual Studio so much more quickly.

Knio 09-15-2015 12:57 AM

Quote:

Originally Posted by Brad370 (Post 3308553)
Your project inspired me to start working on this.

I'm working on an Android app that I have running on a cheap Samsung tablet that will fit in the cubby. I have gauges that work and look just like our center cluster gauges. It's nowhere near ready to share, but I'm slowly working on it when I have time.

I've been watching your blog since we talked a few years ago, I was really happy when you found the odometer :)


Load testing my new hardware today:

https://lh3.googleusercontent.com/jz...w=w986-h658-no

I also don't want to do mobile development, so I've been sticking with windows, but it's taken me the last year and 4 different laptop/tablet/hardware iterations before I got something I'm happy with and think might actually work. Android might still be the easier solution lol.


Quote:

Originally Posted by Brad370
I'm pairing that with an OBDLink LX Bluetooth scan tool. So far this setup seems like it will work.

Can you get the raw CANbus frames over that, or just OBDII PIDs?

critical 09-15-2015 01:57 AM

cool stuff in here. subbed

1cintron 09-15-2015 08:40 AM

I see there's been some great progress! Have ya'll seen CarbonSignal's digital gauges setup? The backend should be no different to what has been accomplished here so far except for the fancy UI for the gauges. Their setup sale price is $600+ (ya I know - ridiculus). We can accomplished something similar for a much lower cost. Consider a setup of:
-Raspberry Pi 2 1GB: $39
-Raspberry Pi 7'' Touch Display: $60 (RASPBERRYPI-DISPLAY - RASPBERRY-PI Raspberry Pi 7" Touch Screen Display with 10 Finger Capacitive Touch | Newark element14)
-Bluetooth Dongle: $10
-OBDII ELM Bluetooth Scanner: $15
Estimated Total: $124

I had started a while back with a quick proof of concept using python and an open sourced OBD library. I needs to be refined, better UI and of course implementation of certain functionality (needs to be defined). I would do this by myself, but honestly, would never finish it since I am always working multiple projects at a time, but if there's more people involved in the coding I will most certainly be available to collaborate. Any ideas? Anyone interested?

**EDITED**
-If your headunit has video input, you won't need the touch screen, but will need some sort of wireless keyboard/touchpad.
-Any C# development/efforts could be ported and tested on the pi using the Mono framework.

Rob298mx 09-16-2015 10:34 PM

How would you interface this into the nav unit like carbonsignal did? Other than the obvious a/v input...

Knio 09-16-2015 11:27 PM

Quote:

Originally Posted by 1cintron (Post 3309409)
if there's more people involved in the coding I will most certainly be available to collaborate. Any ideas? Anyone interested?

I'd help making a better python obdII library (the ones out there kinda suck) that could have all the extended Nissan PIDs.

I already released a GPS library that I made for my project (https://github.com/Knio/pynmea2) for anyone uses an external GPS unit.

1cintron 09-17-2015 08:48 AM

Quote:

Originally Posted by Rob298mx (Post 3310774)
How would you interface this into the nav unit like carbonsignal did? Other than the obvious a/v input...

CarbonSignal is not using the Nav unit display for their system. Instead their kit inclues a 7'' display or a series of smaller displays for each digital gauge.

The easiest way would be to use the a/v input on an aftermarket head unit (needs early raspberry pi models) or the display included in my post above for a second display that could be installed where the cubby/nav-unit sits.

I will be getting that display sometime this week, I will have it test fitted post pictures.

1cintron 09-17-2015 08:51 AM

Also, since many people here have already made some progress with their logging tools and reading and sending commands to the vehicle with implementations on C#/Vb.net. Has any of you put some thought into making the implementation compatible with Windows 10 using the Windows Universal App SDK? Will make it a lot easier to create the gui, and can be run in a raspberry pi.

:)

Rob298mx 09-17-2015 06:50 PM

Quote:

Originally Posted by 1cintron (Post 3310988)
CarbonSignal is not using the Nav unit display for their system. Instead their kit inclues a 7'' display or a series of smaller displays for each digital gauge.

The easiest way would be to use the a/v input on an aftermarket head unit (needs early raspberry pi models) or the display included in my post above for a second display that could be installed where the cubby/nav-unit sits.

I will be getting that display sometime this week, I will have it test fitted post pictures.

Actually they are. They have a group buy at the moment with two options available, one gives you the 7" screen and the other option is utilizing your stock nav unit. I attached the link for the group buy for your review

http://www.the370z.com/body-interior...al-gauges.html

DIGItonium 09-18-2015 10:56 AM

Aftermarket HU especially the multimedia units come with an HDMI input. Drawback is the lack of touch. C|S/Zadatech doesn't support touch either, which is why they resort to using a joystick.

If you want to use a different screen with the C|S/Zadatech product, just give them a heads up and they'll see if they can get their SBC to work with the display as long as it supports HDMI.

DIGItonium 09-18-2015 11:10 AM

Quote:

Originally Posted by 1cintron (Post 3310990)
Also, since many people here have already made some progress with their logging tools and reading and sending commands to the vehicle with implementations on C#/Vb.net. Has any of you put some thought into making the implementation compatible with Windows 10 using the Windows Universal App SDK? Will make it a lot easier to create the gui, and can be run in a raspberry pi.

:)

GUI development in Visual Studio is very easy even for different platforms. But we'll need custom UI controls and display, which requires a lot of custom paint and graphics controls. I'm no good with coding graphics after taking a shot at creating my own gauge face. Bleh.

C# programming is fun to pick up, which leads to a nice transition to learning Java for Android development. The difference is the programming paradigm, which is a pain (IMO, the adjusting to the learning curve).

What I've managed to figure out with the .NET environment, though, is manipulating web content on the fly from the .NET program. Basically you create a form and embed a WebBrowser control (runs IE, unfortunately). You create a simple web page with text fields containing unique attribute IDs. The .NET program pulls these fields in as DOM objects that can be manipulated in real-time. You can also invoke Javascript functions from .NET side, or invoke .NET functions from Javascript. Also, the DOM provides ability to manipulate CSS properties, so you can change font colors or show/hide objects on the fly. It's just string manipulation.

In plain English, you can create a table to display values. Make it fancy with fonts and graphics. The .NET program displays this page, but it is also able to pull data, decode, and display the values. For plots, I use Zedgraph. I can code up a UI resembling an oscilloscope.

Anyhow, I recommend the definitions be stored in a database (Access/SQLite). From there you can search for the PID names or sort them in a TreeView display.

If you guys need a functional flowchart and examples, let me know.

SouthArk370Z 09-18-2015 12:32 PM

I've been working with cars and computers since the early-1970s, think this is a fascinating project(s), and would be willing to do whatever I can to help y'all out. My Googlefu is pretty good so I should be able to help with research. I have a server that could be used for collaboration (I already have a wiki running, see my sig), file sharing, &c. I no longer have a Z but could test non-Z-specific stuff. Any programming skills I had have been obsolete for a while, so I probably can't help much with programming. I might be able to setup rough-but-workable GUIs and other grunt work. If any of y'all need some, let me know.

Brad370 09-18-2015 12:42 PM

Here's a test gauge I made for Android, which can be updated in real time. Still a lot of work to do. Ignore the degrees C, I was testing converting between units.

http://www.the370z.com/attachment.ph...1&d=1442597930

For reference
http://www.the370z.com/attachment.ph...1&d=1442598044

SouthArk370Z 09-18-2015 12:55 PM

Quote:

Originally Posted by Brad370 (Post 3312403)
Here's a test gauge I made for Android, which can be updated in real time. Still a lot of work to do. Ignore the degrees C, I was testing converting between units.

Nice.

FWIW: I don't know if you can use them (or would want to), but you can find idiot light symbols at DashBoardSymbols.com.

DIGItonium 09-18-2015 04:58 PM

Some ideas...
 
Brad, under "Nissan 370Z," can you show the actual value? I think it's nice to see the analog and digital display at the same time.

How about a colored dot as a warning indicator? Then test with a preset threshold value. Here are some approaches to function:
  • Single color indicating overage.
  • Do it by percentage where color is yellow to warn you it is near threshold, and red when you've reached threshold.
  • Flashing indicator similar to our shift indicator.

How about a thin gradient arc like tachometer redline, which is dynamic depending on user set threshold.

1cintron 09-23-2015 07:37 PM

Quote:

Originally Posted by Rob298mx (Post 3311730)
Actually they are. They have a group buy at the moment with two options available, one gives you the 7" screen and the other option is utilizing your stock nav unit. I attached the link for the group buy for your review

http://www.the370z.com/body-interior...al-gauges.html

thanks for the info. Do you know the type of video input the nav display has? New pis have hdmi out, old one has analog vid and hdmi

Sent from my 0PJA2 using Tapatalk

Rob298mx 09-24-2015 08:19 PM

Rca's

Knio 10-04-2015 09:27 PM

I just confirmed with an external 6axis accelerometer/gyro going through some hard turns:

CAN ID 0x292 is the Bosch yaw rate sensor: http://www.bosch-motorsport.com/medi...8925323pdf.pdf

The parameters are a bit different from that datasheet, probably a slightly different version.

0x292 B,C = lateral acceleration (zeroed at 0xf800, 1G = 1024)
0x292 D,E = yaw rate (zeroed at 0x8000, maybe 10240 = 90 degrees?)

http://i.imgur.com/2NytChe.png

sig11 10-09-2015 04:37 PM

Wow! You guys have made some great progress. I just started to look for info on the 350Z CAN bus but ran back across this thread and started to work on my OpenXC firmware for the 370 based on Brad's spreadsheet.

I think OpenXC is dropping messages where the dlc != 8 but I haven't finished tearing into it yet.

Paul_S 10-10-2015 04:58 AM

Such a cool project!
 
Fantastic progress guys! :tiphat:

I've been away from this project but am back on board now. If there's anything I can do let me know :)

Quote:

Originally Posted by Brad370 (Post 3308671)
I was going to go the route of building custom hardware, but then I searched for refurbished Android tablets and ended up finding a Galaxy Tab 4 (7" tablet) for under $100. I'm pairing that with an OBDLink LX Bluetooth scan tool. So far this setup seems like it will work.

Mobile programming is a huge pain and I'm not liking it so far as I slowly learn it, but you can't beat the built-in graphics, touch, and BT capabilities.

I've got an Android tablet in my 370Z now. (I might be repeating myself here...) Mine is an early one without Connect Premium. I'm doing it like this:

http://forums.nissansportz.com/uploa...412_165598.jpg

I've hit some problems with the whole USB OTG and power combination as well as standby power issues but I'm getting there slowly (see here).

So I'd vote to go Android!

Brad370 10-15-2015 02:43 PM

Quote:

Originally Posted by Knio (Post 3322468)
CAN ID 0x292 is the Bosch yaw rate sensor: http://www.bosch-motorsport.com/medi...8925323pdf.pdf

The parameters are a bit different from that datasheet, probably a slightly different version.

Some info I found on the Bosch website. It listed part #'s for the 370Z 09+ models:

Yaw rate sensor, brake system
Bosch Part #: 0 265 005 806
Nissan Part #: 47931 1EA1A

Steering angle sensor, ESP (Electr. Stability Program)
Bosch Part #: 0 265 005 515
Nissan Part #: 47945JY00A

Wheel speed sensor, front
Bosch Part #: 0 265 008 025
Nissan Part #: ?

However, I can't find a datasheet for the yaw rate sensor part # listed there.

VidkidZ 10-26-2015 06:04 PM

2 Attachment(s)
Quote:

Originally Posted by Brad370 (Post 3308553)
Your project inspired me to start working on this.

I'm working on an Android app that I have running on a cheap Samsung tablet that will fit in the cubby. I have gauges that work and look just like our center cluster gauges. It's nowhere near ready to share, but I'm slowly working on it when I have time.

i have a similar codebase on iOS and have been going through some good and some very awful bluetooth API's to access canbus/odbii.

im planning on a multiple unit LCD approach, replacing a gauge or two with android wearables, a tablet feeding the bose stereo and an ipod touch sized screen somewhere in direct line of sight.

ive been developing video games for 20+ years and have been on ios since 2008. lots of great opportunities here thats for sure. Ive been focusing on the platform, less on the presentation as I still don't know what the product will be in the end.

I'll be integrating a 370Z 3d model next, there seems to be a good supply available turbosquid.com. I'll start with the 2009 fairly "free" edition and go from there.

http://www.the370z.com/attachments/t...-155.21-pm.jpg

Knio 10-30-2015 12:51 AM

Quote:

Originally Posted by Paul_S (Post 3325860)

I've hit some problems with the whole USB OTG and power combination as well as standby power issues but I'm getting there slowly (see here).

So I'd vote to go Android!

I had these same issues (though with a windows tablet) and think I finally solved them. (incredibly annoying)

1) I found an OTG USB hub that takes external power, and powers both the tablet + peripheral devices, with a built in relay. It needs to trick the host USB controller though, so only works on a few specific models of tablets.

2) USB chargers suck, and USB cables suck. at 1A of power, if you have even 1 Ohm of resistance in all your cabling and connectors, you're only getting 4V at the end. Even with the best cables I could find, I was only getting ~4.6V at the tablet, and that wasn't enough to make it charge. I ended up solving this from both sides:

- I made my own USB cables using 18Ga wires
- I got an adjustable buck converter, so I can run the source at 5.25V, and then it's still 5.0V at the tablet after all the losses.


All times are GMT -5. The time now is 08:03 PM.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.6.0 PL2