Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2015-2016 CR-V Touring #98

Closed
energee opened this issue May 18, 2017 · 40 comments
Closed

2015-2016 CR-V Touring #98

energee opened this issue May 18, 2017 · 40 comments

Comments

@energee
Copy link
Contributor

energee commented May 18, 2017

Working on this with @johnnwvs Fingerprint of the car here:

0.199962   91  80 64 48 01 FF 00 00 01 .dH.....
0.199961  13C  02 23 00 47 00 40 04 0E .#.G.@..
0.199989  154  12 00 00 FE A6 A9 00 0B ........
0.199972  156  00 BD 00 00 07 1C       ......
0.199833  158  00 00 00 00 00 00 00 0A ........
0.199940  17C  00 00 00 00 00 00 00 04 ........
0.199934  18E  00 00 6B                ..k
0.199988  18F  00 00 00 00 06 28       .....(
0.200010  191  01 00 00 A9 A9 01 01 04 ........
0.199953  194  00 00 00 0A             ....
0.199960  1A4  00 66 00 00 00 00 00 0D .f......
0.200104  1A6  00 08 C0 52 52 80 00 2B ...RR..+
0.199917  1AA  7F FF 00 00 00 00 00 0F ........
0.199971  1B0  00 00 00 00 00 01 0B    .......
0.000000  1D0  00 00 00 00 00 00 00 0A ........
0.199978  1DA  FF 7F FF 00 1D          .....
0.199980  1DC  42 00 00 35             B..5
0.200092  1E7  19 80 66 04             ..f.
0.199857  1EA  00 00 00 00 00 00 00 0F ........
0.200033  1ED  01 FF 3A                ..:
0.199924  1FA  00 00 00 80 00 00 00 15 ........
0.199954  1FB  0D                      .
0.200072  21E  00 00 3D 47 60 04 3F    ..=G`.?
0.200168  221  35 00 80 30             5..0
0.199989  255  00 00 00 00 55 55 7A DC ....UUz.
0.200008  294  04 16 00 00 A4 06 40 33 ......@3
0.200008  295  00 00 00 35             ...5
0.200046  305  80 54 00 00 00 00 1E    .T.....
0.199988  309  00 00 00 00 00 00 00 EE ........
0.199880  30C  00 00 8C FF 10 40 40 3B .....@@;
0.199814  320  00 00 00 00 00 00 00 30 .......0
0.199972  324  62 59 00 00 00 00 0E B0 bY......
0.199957  328  00 00 00 00 00 00 40 61 ......@a
0.199877  33D  00 00 00 40 3E          ...@>
0.200148  372  00 2A                   .*
0.199893  374  47 60 00 0B 00 00 2C    G`....,
0.199983  378  0F D2 04 19 25 87 FF 60 ....%..`
0.200002  37B  00 00 00 00 00 00 00 21 .......!
0.199991  37C  F6 00 00 FA 00 00 01 30 .......0
0.198222  39B  00 10                   ..
0.200080  3A1  40 00 00 00 00 00 00 15 @.......
0.199942  3D7  B0 00 00 00 00 00 00 33 .......3
0.199980  3D9  00 80 07                ...
0.300145  400  00 00 02 00 20          .... 
0.300247  403  00 00 00 00 2F          ..../
0.298651  405  00 00 00 00 00 00 00 0F ........
0.299780  409  00 00 00 01 28          ....(
0.300144  40C  09 00 00 00 00 00 00 2D .......-
0.300148  40F  01 0E 15 01 07 04 00 22 ......."
0.299944  421  00 00 01 01 2D          ....-
0.299292  428  06 00 00 00 A4 06 00    .......
0.300348  454  36 F9 02 29 30 00 80 20 6..)0.. 
0.300162  465  00 00 00 00 00 00 01 26 .......&
0.500637  510  00 00 00 00 00 00 00 11 ........
0.505430  555  00 00 00 00 27          ....'
1.000053  590  00 00 00 04 06          .....
1.000064  640  00 00 00 06 08          .....
1.000037  641  15 00 00 00 00 00 00 07 ........```
@energee
Copy link
Contributor Author

energee commented May 18, 2017

The obvious signals i don't see are:

"car_gas", "cruise_buttons", "main_on", "cruise_setting", "steer_torque", "steer_torque_request", and "gas_command"

@energee energee changed the title 2016 CR-V Touring 2015-2016 CR-V Touring May 18, 2017
@geohot
Copy link
Contributor

geohot commented May 19, 2017

Does he have a NEO? Connect it up to log can. I know steer torque request moved.

@energee
Copy link
Contributor Author

energee commented May 19, 2017

Not yet

@johnwaynehacker
Copy link

I have a NEOS, what portion of FCAN can I update to refine the id, byte and bit of the exact steering, braking, gas, etc.., what portion in the C/Python I can modified for different vehicle? What open source software do you guy use to make dbc file? other than Vector tool? I have a neos but need to update for different vehicle.

@energee
Copy link
Contributor Author

energee commented May 21, 2017

Just run the NEO and upload your can data to drive explorer

@pinglianghan
Copy link

Anyone working on porting 2016 CRV?

@energee @geohot , could you tell me how to create the dbcs file based on the sniffed information? How to read the sniffed information?

Thanks,
liangpi

@energee
Copy link
Contributor Author

energee commented May 21, 2017

Steering looks like 194. Only messages that stop sending (at the OBDII port) when cam is unplugged are:

194
1FA
30C
33D

@geohot
Copy link
Contributor

geohot commented May 22, 2017

The set speed is on 30C, same as the ilx and civic. This controls gas.

So looks like the only change is E4 -> 194

@geohot
Copy link
Contributor

geohot commented May 22, 2017

And we made the dbc files using a text editor :)

@johnwaynehacker
Copy link

so I need to change E4-->194 in the dbc file and rename as 15/16 crv touring ? Do I need change the python code "hondacan.py"? You mention drive explorer, the drive explorer on neos phone platform? How can change the control to add learning different drive? Ai Drive change learning? If I can modify to code to allow cruise to below 25mph, then will your system work for city driving? Steering I might not able to change.

@johnwaynehacker
Copy link

I mention modified the vehicle code to allow cruise control under 25mph

@geohot
Copy link
Contributor

geohot commented May 22, 2017

It's more than that. The message content is different as well.

There's no easy way to modify for the higher torques and low speeds required for city driving. And whenever you make modifications, always make sure you are following the safety guidelines in https://github.com/commaai/openpilot/blob/master/SAFETY.md

@johnwaynehacker
Copy link

in the hondacan.py where does it distinguish for which dbc file.
194 message alive and counter checksum change.
the lsb steering factor change.
where do I change that? in here?

how can I change the lsb, and where is the pointer to point to certain dbc file in this command line?
"
def create_steering_control(apply_steer, idx):
"""Creates a CAN message for the Honda DBC STEERING_CONTROL."""
msg = struct.pack("!h", apply_steer) + ("\x80\x00" if apply_steer != 0 else "\x00\x00")
return make_can_msg(0xe4, msg, idx, 0)
"

@johnwaynehacker
Copy link

Oh, it look like the steering command factor is 1 for 0E4 is ilx? can I change it to more precise lsb factor? and the range is off.

how does the following command relate to 0E4? Some value is just 0 or 1, how come range is 127?
BO_ 228 STEERING_CONTROL: 5 ADAS
SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS
SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS
SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS
SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|0] "" EPS
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS
SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EPS

@energee
Copy link
Contributor Author

energee commented Jun 1, 2017

Good news coming soon for this car!

@johnwaynehacker
Copy link

@energee That's good news!
Are you working for comma.ai?
I can send you the dbc file update for CRV.
What fingerprint and control file should I modified to read new dbc for 2015-2016 crv?
I update gas pedal lsb, brake value, steering lsb request range on 194, update checksum count number.

@johnwaynehacker
Copy link

Crv have cvt transmission, content same as Civic

@energee
Copy link
Contributor Author

energee commented Jun 3, 2017

We have a completed dbc, will upstream soon.

@johnwaynehacker
Copy link

@energee that is great.
I modified the accord for crv car controller, because the range is +-9,

what is this does? #add 2015-2016 CRV touring
elif CS.crv2015:
idx = frame % 2
can_sends.append(hondacan.create_crv2015_steering_control(apply_steer, idx))
#end 2015-2016 CRV touring

I modified carcontroller,carstate and hondacan & make new dbc file.
How can access the driveexplorer, the neo oneplus 3t one doesn't show up.
filemodified.zip

@johnwaynehacker
Copy link

sorry why idx = frame % 2? and other one %4? if the lsb of 194 is
BO_ 228 STEERING_CONTROL: 4 ADAS
SG_ STEER_TORQUE : 7|16@0- (0.000305,0) [-10|10] "" EPS
SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS
SG_ SET_ME_X00 : 22|1@0+ (1,0) [0|1] "" EPS
SG_ SET_ME_X00 : 31|1@0+ (1,0) [0|1] "" EPS
SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EPS
SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS ?? what checksum is 0 to 3 not 0-10 or 0-15?, does another file account for the checksum?

And does Openpilot have any checksum error if I plug into the car?

@energee
Copy link
Contributor Author

energee commented Jun 4, 2017

BO_ 404 STEERING_CONTROL: 4 NEO
 SG_ STEER_TORQUE : 7|12@0- (1,0) [-2048|2048] ""  EPS
 SG_ SET_ME_X00 : 11|4@0+ (1,0) [0|15] ""  EPS
 SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] ""  EPS
 SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] ""  EPS
 SG_ COUNTER : 29|2@0+ (1,0) [0|3] ""  EPS
 SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] ""  EPS

@abdulrahman004
Copy link

@energee is your work for the 2015/16 CRV Touring only ?

@energee
Copy link
Contributor Author

energee commented Jun 5, 2017

The 15/16 touring is the only CR-V model in these years that has honda sensing.

@johnwaynehacker
Copy link

@energee @geohot
How do modified the openpilot file and upload to the NEO hardware myself? It seen like it install using openpilot.comma.ai . How can reinstall new version.

I drive to open the oneplus 3t manually to access drive. But it seen it can't recognize as an android device.

Sorry maybe this answer somewhere, but I haven't figure it out.

@energee
Copy link
Contributor Author

energee commented Jun 6, 2017

Steering working! Just need to fine tune this a bit and port will be complete.

@energee
Copy link
Contributor Author

energee commented Jun 8, 2017

#102

@johnwaynehacker
Copy link

@energee

2015-2016 CRV and 2016 & 2017 Accord is the same system on 4cylinder vehicle.
Have this work on 2016 Accord 4 cylinder with LKAS? It has the same 194 message across the board for accord just transmission message change.
CRV transmission gear message is break out bit by bit.

@energee @geohot
2. regarding ssh into the phone, i'm keep getting connection time out.
I bought the neo from neodriven, is there anyway to root the neos back to factory oneplus and reinstall neos v3, maybe my key not correct.

or is there to install custom openpilot.comma.ai with custom file change to test the code.

command line use:
ssh -p 8022 -i key/id_rsa 192.168.0.25
key file id_rsa and id_rsa.pub

@pjlao307
Copy link
Contributor

pjlao307 commented Jun 12, 2017

You can run your own custom code by cloning your fork of openpilot onto the neo. That's what I've done. Just make sure your custom code is in the /data/openpilot directory on the neo. Command is something like this:

git clone https://github.com/your/fork.git /data/openpilot

You may want to rename the current folder to something first so you can switch back and forth:

mv /data/openpilot /data/openpilot.v0.3.2

Granted, this doesn't help you if you can't even SSH into the phone. Sometimes I can't connect to the neo via SSH either.

First thing to check is if the IP address of the neo is correct. It may have changed. Can you see the list of DHCP clients on your wifi?

@johnnwvs
Copy link

johnnwvs commented Jun 12, 2017 via email

@LuckyParker
Copy link

@johnwaynehacker I did not buy a neodriven but you should be able to just reflash it with the most current neo is following the same steps. I did this to mine recently.

@johnwaynehacker
Copy link

The IP address I can check on the neos. It show the IP address. I wondering if is the key issue or my wifi.

@johnwaynehacker
Copy link

I own it, but transfer to step sister, but I can borrow and test. I still haven't problem getting neos code to open. Is here any to access one plus 3t without ssh. I'm using a Mac to ssh to it. Unless port forwarding issue on router. I'm haven't check port forwarding on router setting yet.

@johnwaynehacker
Copy link

johnwaynehacker commented Jun 13, 2017

latest try by adding port 8022 and 22 ssh net to neos device ip port forwarding.
successfully login but freeze up a lot.

@johnwaynehacker
Copy link

I try noticed for the CRV in high wind system, the steering is off most of the time.
Which part of lat g setting can change to account for it? It drifts toward the center line too much, and if the highway left side has uneven road layout, if tend to over correction and need to take control.

Also,
when it brake by itself. I get brake error, and I have turn on and off the car to able to set it again.

@energee
Copy link
Contributor Author

energee commented Jun 26, 2017

Try adjusting the ret.steerKp, ret.steerKi = 6.0, 0.5 values on line 130 of fingerprints.py. It sounds like these variables could be adjusted lower if it is overcorrecting too much.

@johnnwvs
Copy link

It did that for me as well until I had several hours of driving time down. And every time I changed my mount for the Neo it had to be re-trained with several hours of driving. Not just several hours, but also uploading all the data from the previous drives. I am not sure how long it takes after you upload a drive to have the new calibration take effect. I just know after a couple of days it would steer better.

@energee
Copy link
Contributor Author

energee commented Jun 26, 2017

Good point, might need more calibration, try that before changing code

@johnnwvs
Copy link

John,

Most of what you describe sounds like a lack of sufficient driving to train the system. How long have you been driving for and uploading your drives back to comma.ai? Are you changing the way you mount the Neo in any way, or does it tend to stay in the same place?

The brake error seems to happen to many cars, not just the CR-V. You can find people talking about this in other treads.

@johnwaynehacker
Copy link

I been leave the mount at one location. Couples hours first day, and couples hours second days. Mainly I only drive it on the weekend. This holiday I will drive more. For the calibration? Does it need to be driving using the neos it self or it need me to drive it for several hours and then upload the data overnight, then drive using the neos again?

@energee
Copy link
Contributor Author

energee commented Jun 27, 2017

The latter, but calibration doesn't need several hours, only about 30-45 minutes are required using the NEO (openpilot does not have to be engaged) then upload that data to the cloud.

@energee energee closed this as completed Jun 28, 2017
priuscom pushed a commit to priuscom/openpilot that referenced this issue Feb 19, 2019
springermac pushed a commit to springermac/openpilot that referenced this issue Mar 16, 2019
rafcabezas pushed a commit to rafcabezas/openpilot that referenced this issue Oct 31, 2019
* Fix for mock car crash

* fix ALCA module

* do not use

* radar_interface logic improvements

* remove radar logging

* radar_interface refactoring

* Log radar_interface CAN error, Process Comm Errors (commaai#95)

* Log radar_interface CAN error

* Add support for process comm error logging

* Improve Process Comm error logging

* Can and CommError throttling

* Update radar_interface.py

* fixing push per Raf's comments

* ALCA and radar_interface work (commaai#96) (commaai#97)

* do not use

* radar_interface logic improvements

* remove radar logging

* radar_interface refactoring

* Update radar_interface.py

* fixing push per Raf's comments

* fix process comm issue

* switch radard from lane_parser to model

* radar/ALCA changes

* fix lane width

* switched back to not deleting CarParams to avoid radar failure when rebooting EON while driving

* cleanup some debug info to be able to restart ALCA research

* tweaks on safety_tesla.h for can bus isolation

* few more cleanups to safety_tesla.h

* fix start signal logic
SippieCup pushed a commit to SippieCup/openpilot that referenced this issue Nov 14, 2019
* fix ALCA module

* Update ALCA_module.py

* Promote panda fixes from alpha to devel (commaai#98)

* Fix for mock car crash

* fix ALCA module

* do not use

* radar_interface logic improvements

* remove radar logging

* radar_interface refactoring

* Log radar_interface CAN error, Process Comm Errors (commaai#95)

* Log radar_interface CAN error

* Add support for process comm error logging

* Improve Process Comm error logging

* Can and CommError throttling

* Update radar_interface.py

* fixing push per Raf's comments

* ALCA and radar_interface work (commaai#96) (commaai#97)

* do not use

* radar_interface logic improvements

* remove radar logging

* radar_interface refactoring

* Update radar_interface.py

* fixing push per Raf's comments

* fix process comm issue

* switch radard from lane_parser to model

* radar/ALCA changes

* fix lane width

* switched back to not deleting CarParams to avoid radar failure when rebooting EON while driving

* cleanup some debug info to be able to restart ALCA research

* tweaks on safety_tesla.h for can bus isolation

* few more cleanups to safety_tesla.h

* fix start signal logic

* Increase LEXUS_IS safetyParam to 77 (commaai#841)

* use list comprehension (commaai#839)

* use list comprehension

* oops index range fix

* simplify encode/decode in dbc (commaai#840)

* simplify encode/decode

* 2019 Highlander Hybrid Limited Platinum (commaai#843)

fingerprint from ogdragonzypher on Discord

* Allow to lock safety mode to keep gm/tesla cars supported (commaai#844)

* Force subaru to assume the stock camera is connected (commaai#849)

* Revert to using the sum of the lane line probabilities instead of the the product

* Add core OP support for CRC validation, with extra support for Volkswagen MQB (commaai#836)

* Generalized core OP CRC support plus extra bits for Volkswagen MQB.

* Update ref to process_replay regression test

* Remove unneded use of replace, causing json to fail loading the alert

* Add supported car for 2019 Toyota Altis Hybrid (commaai#859)

* add supported car for 2019 Toyota Altis Hybird / Corolla hybrid 2020 (US market)

* remove unnecessary comprehensions (commaai#863)

* Added fingerprint from Sienna XLE AWD (commaai#848)

* Added fingerprint from Sienna XLE AWD

* Update driver_monitor.py

* Update driver_monitor.py

* Update driver_monitor.py

* fix stupid merge issue

* Adds 2019 Lexus ES (non hybrid) (commaai#866)

* Adds 2019 Lexus ES (non hybrid)

* Updated test route

* merge issues

* Update README with now supported Subaru Harness

* Disable LDW for 4 seconds after blinker transition from on to off (commaai#112)

If we want to change lanes with a blinker tap (3 blink mode), then we need to disable LDW for enough time to allow a smooth manual lane change. 4 seconds as it seems the freq is actually around 50Hz, not 100Hz.

* Disable HSO for 3 seconds after blinker has been active (commaai#111)

Avoid HSO will deactivate and try to take the car back into the lane during a manual lane change with blinker tapped (3 blinks mode)

* params learner to only learn @ cons speed

Acceleration/deceleration in turns affect yaw as measured by phone and will create potential issues with learner. This code changes the learner to only adjust parameters when speed is constant

* Update to match new version of python in eons

* python 3 fixes for test client / server

* async/await server

* Don't log for action message as it's too often, and we throttle it internally.

* fix merge issue in thermald

* fixes and tweaks; code simplification

* Saving P,I,F parameters from pid controller (commaai#116)

Added separate save/load functions, try catch - and saving the right constants to the params file.

* Feature/tinklad throttling + linting (commaai#118)

* Throttle tinlkad's attemptToSendPendingMessages

* Remove get_git_remote from registration. It's defined in version already.

* tinklad linting

* tesla linting

* Prevent multiple readings of the pid params file (commaai#119)

..only load the pid values when we initiate the LoC

* missing V_PID_FILE constant (commaai#121)

* show cars in IC for non-radar users (commaai#120)

* bug fixes

* Fix issue where user info was being dropped on no connectivity (commaai#122)

* move pisParams, fix GPS logging

* Bugfix tinklad throttling (commaai#124)

* ALCA4 (still in dev)

* ALCA4 tuning

* ALCA4 alpha release

* ALCA4 tweak for turns

* ACC fix; LDW mite during ALCA

* ALCA polishing

* fix enter_canloader.py for python 3

* should_ldw changes

moved the should_ldw code closer together and added status messages for when LDW is active and inactive

* thermald and ALCA

* ALCA sinplified logic
Lukilink pushed a commit to Lukilink/openpilot that referenced this issue May 4, 2020
* add auto-df

* move dynamic follow into its own module

* updates

* use prettier classes instead of dicts

* move car_data to dynamic_follow

* use more classes!

* remove

* Refactor the df_alert_manager

* fix

* debugging and fix

* fix

* fix recursion

* fix recursion

* fix

* fix

* fixes

* debugging

* fix

* fix

* test

* test

* fix

* fix

* Verify it's working

* benchmark

* benchmark

* benchmark

* only predict if lead and at 5Hz

* wait for initial auto alert to finish before showing predictions, no sound when model predicts a profile

* Fix

* Fix

* Fix

* Fix

* Fix

* This should fix auto alert disappearing quickly

* rename
MoreTore pushed a commit to MoreTore/openpilot that referenced this issue Mar 2, 2024
carleeno pushed a commit to carleeno/openpilot that referenced this issue Aug 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants