BimmerFest BMW Forum banner
1 - 12 of 12 Posts

·
Registered
Joined
·
4 Posts
Discussion Starter · #1 ·
Hi,

I have a BMW m235i f22 (2014), and i want to control door locks, lights remotely with my computer. I am trying to access the OBD2 port using my Arduino/Spark-fun shield to read the CAN messages, but the only CAN ID i see is 0x130. The CAN ID doesn't change before or after ignition or drive. I am using 500 kbps CAN speed, and am getting the same CAN ID across 2-3 other CAN shields (seeduino, spark fun shield, car loop/particle photon). I have limited knowledge about what could have gone wrong here. Can some one help me out? Highly appreciated.

-Parin
 

·
Registered
Joined
·
193 Posts
0x130 is the "keep alive" message.

What software are you using? Have you configured it to read only specific message ID's? Some software have the option of picking only a few and discarding the rest.

You may want to send a message and see if you are able to read other messages as receipt.
 

·
Registered
Joined
·
193 Posts
Just checked, it does indeed send only 0x130 messages.

After sniffing messages over the OBD, found out that you need to send a 0x7df (PID) message to receive a 0x7e8 which contains data.

To know the list of supported PID's, please google.

When I sent the following data on [0x7DF]:
Code:
02 01 0D 00 00 00 00 00
1st byte: length=2 bytes
2nd & 3rd bytes: PID=010D (Vehicle Speed)
I received the following data on [0x7E8]:
Code:
03 41 0D 00 AA AA AA AA
1st byte: length=3 bytes
3rd byte: SPEED=0 kmph
It implies, to read data you need to send request. If you are looking for continous flow of messages, you will need to tap into one of the available CANBUS's inside the car, for instance, I've tapped into the entertainment bus and have been able to log messages for my other project which displays many parameters of the car on a uController controlled LCD.

EDIT: Adding a screenshot
 

Attachments

·
Registered
Joined
·
4 Posts
Discussion Starter · #5 ·
This is great :thumbup:, thank you. Which software did you use, and which hardware tool? Is there any documentation which i can refer to to try my hands on?

Is it possible to write into steering wheel's ECU's CAN, and control it autonomously?

Thanks again for all the help.
 

·
Registered
Joined
·
193 Posts
I have this module that I got off eBay a few years back, and the software came along with it. The software is full of bugs and can be used only on occasions such as this where you basically are trying to figure out something simple.

You'll very rarely find software that suits your requirement, so the best thing to do is write your own. However, there are some that are openly available on the net, but most are specifically suited to the hardware modules that they sell.

By "write into steering wheel's ECU's CAN" you mean coding? I've never tried that and will never try it too considering the risk involved in experimenting with it. Moreover, there already are software like WinKFP, INPA, etc which do the job, so I would leave it to that.

If you mean sending basic messages to these modules and control simple functions like turning lights on/off, etc., yes, this can be achieved, you only need to know the message(s) and the data you need to send over the bus.
 

·
Registered
Joined
·
4 Posts
Discussion Starter · #7 ·
Hi,

Thanks for the response. Yes, i was initially looking for turning horn, door locks, windows. However, eventually want to look into how to control steering wheel using CAN. I will def try out the one used by you, but need to start looking for ECU location to physically tap CAN H and CAN L.

Thanks,
Parin
 

·
Registered
Joined
·
1 Posts
Hi All,

Just checked, it does indeed send only 0x130 messages.
Does anybody have some news regarding having seen only 0x130 messages?

I also have the same issue. It seems that this is new design to show on OBD2 socket only wakeup messages. Other internal messages seems to be suppressed by a gateway (ZGM block).

I can imagine two options here:
1. There should be either special code to be sent to the gateway (ZGM) to disable filters, or maybe some pin in OBD2 to be pulled to +12.
2. Another CAN-bus to be used to monitor all activities. There should be a hidden socket or something with another CAN-bus in this case.

Does anybody have some news or ideas on this topic?
 

·
Registered
Joined
·
5 Posts
On the F series the can bus cannot be access through the ODB2 port. You can only access the bus lines through the ODB2 port when you connect the BMW diagnosis interface (firewall). Like you i am doing a project trying to hookup a NodeMCU in my car to control everything through an amazon echo which i have embedded in the car. If you would like to access the bus lines easiest way is to tap into the head unit pin 9 can low/ pin 11 can high.
 

·
Registered
Joined
·
346 Posts
F series may have KCAN1, KCAN2, KCAN3, KCAN4, PT-CAN and D-CAN busses, to name just CAN buses. There are also LIN busses, MOST, FlexRay, Ethernet and OABR.
Specific messages are present only on the busses on which they are required.
 
1 - 12 of 12 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top