Skip to content

Commit 0171235

Browse files
committed
Revert "Merge with kegman-gernbyFFsteer-latest (#69)"
This reverts commit 99031cf.
1 parent 99031cf commit 0171235

File tree

7 files changed

+43
-233
lines changed

7 files changed

+43
-233
lines changed

selfdrive/can/parser.cc

+7-37
Original file line numberDiff line numberDiff line change
@@ -166,9 +166,6 @@ class CANParser {
166166
subscriber = zmq_socket(context, ZMQ_SUB);
167167
zmq_setsockopt(subscriber, ZMQ_SUBSCRIBE, "", 0);
168168

169-
forwarder = zmq_socket(context, ZMQ_PUB);
170-
zmq_bind(forwarder, "tcp://*:8592");
171-
172169
std::string tcp_addr_str;
173170

174171
if (sendcan) {
@@ -247,17 +244,8 @@ class CANParser {
247244
// parse the messages
248245
for (int i = 0; i < msg_count; i++) {
249246
auto cmsg = cans[i];
250-
251-
if (cmsg.getDat().size() > 8) continue; //shouldnt ever happen
252-
uint8_t dat[8] = {0};
253-
memcpy(dat, cmsg.getDat().begin(), cmsg.getDat().size());
254-
255-
if (can_forward_period_ns > 0) raw_can_values[cmsg.getSrc()][cmsg.getAddress()] = read_u64_be(dat);
256-
257-
//if (((cmsg.getAddress() == 0xe4 or cmsg.getAddress() == 0x33d) and cmsg.getSrc() == bus) or \
258-
// (cmsg.getSrc() != bus and cmsg.getAddress() != 0x33d and cmsg.getAddress() != 0xe4 and \
259-
// (cmsg.getAddress() < 0x240 or cmsg.getAddress() > 0x24A))) {
260247
if (cmsg.getSrc() != bus) {
248+
// DEBUG("skip %d: wrong bus\n", cmsg.getAddress());
261249
continue;
262250
}
263251
auto state_it = message_states.find(cmsg.getAddress());
@@ -266,38 +254,27 @@ class CANParser {
266254
continue;
267255
}
268256

257+
if (cmsg.getDat().size() > 8) continue; //shouldnt ever happen
258+
uint8_t dat[8] = {0};
259+
memcpy(dat, cmsg.getDat().begin(), cmsg.getDat().size());
260+
269261
// Assumes all signals in the message are of the same type (little or big endian)
270262
// TODO: allow signals within the same message to have different endianess
271263
auto& sig = message_states[cmsg.getAddress()].parse_sigs[0];
272264
if (sig.is_little_endian) {
273265
p = read_u64_le(dat);
274266
} else {
275267
p = read_u64_be(dat);
276-
}
268+
}
277269

278270
DEBUG(" proc %X: %llx\n", cmsg.getAddress(), p);
279271

280272
state_it->second.parse(sec, cmsg.getBusTime(), p);
281273
}
282274
}
283275

284-
void ForwardCANData(uint64_t sec) {
285-
if (sec > next_can_forward_ns) {
286-
next_can_forward_ns += can_forward_period_ns;
287-
// next_can_forward_ns starts at 0, so it needs to be reset. Also handle delays.
288-
if (sec > next_can_forward_ns) next_can_forward_ns = sec + can_forward_period_ns;
289-
std::string canOut = "";
290-
for (auto src : raw_can_values) {
291-
for (auto pid : src.second) {
292-
canOut = canOut + std::to_string(src.first) + " " + std::to_string(pid.first) + " " + std::to_string(pid.second) + "|";
293-
}
294-
}
295-
zmq_send(forwarder, canOut.data(), canOut.size(), 0);
296-
}
297-
}
298-
299276
void UpdateValid(uint64_t sec) {
300-
can_valid = true;
277+
can_valid = true;
301278
for (const auto& kv : message_states) {
302279
const auto& state = kv.second;
303280
if (state.check_threshold > 0 && (sec - state.seen) > state.check_threshold) {
@@ -340,8 +317,6 @@ class CANParser {
340317
UpdateCans(sec, cans);
341318
}
342319

343-
if (can_forward_period_ns > 0) ForwardCANData(sec);
344-
345320
UpdateValid(sec);
346321

347322
zmq_msg_close(&msg);
@@ -376,11 +351,6 @@ class CANParser {
376351
void *context = NULL;
377352
void *subscriber = NULL;
378353

379-
void *forwarder = NULL;
380-
uint64_t can_forward_period_ns = 100000000;
381-
uint64_t next_can_forward_ns = 0;
382-
std::unordered_map<uint32_t, std::unordered_map<uint32_t, uint64_t>> raw_can_values;
383-
384354
const DBC *dbc = NULL;
385355
std::unordered_map<uint32_t, MessageState> message_states;
386356
};

selfdrive/car/honda/carstate.py

+1-6
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ def get_can_signals(CP):
3636
("WHEEL_SPEED_RR", "WHEEL_SPEEDS", 0),
3737
("STEER_ANGLE", "STEERING_SENSORS", 0),
3838
("STEER_ANGLE_RATE", "STEERING_SENSORS", 0),
39-
("STEER_ANGLE_OFFSET", "STEERING_SENSORS", 0),
4039
("STEER_TORQUE_SENSOR", "STEER_STATUS", 0),
4140
("LEFT_BLINKER", "SCM_FEEDBACK", 0),
4241
("RIGHT_BLINKER", "SCM_FEEDBACK", 0),
@@ -243,11 +242,7 @@ def update(self, cp, cp_cam):
243242
self.user_gas_pressed = self.user_gas > 0 # this works because interceptor read < 0 when pedal position is 0. Once calibrated, this will change
244243

245244
self.gear = 0 if self.CP.carFingerprint == CAR.CIVIC else cp.vl["GEARBOX"]['GEAR']
246-
if self.CP.carFingerprint in HONDA_BOSCH:
247-
self.angle_steers = cp.vl["STEERING_SENSORS"]['STEER_ANGLE'] + cp.vl["STEERING_SENSORS"]['STEER_ANGLE_OFFSET']
248-
else:
249-
self.angle_steers = cp.vl["STEERING_SENSORS"]['STEER_ANGLE']
250-
245+
self.angle_steers = cp.vl["STEERING_SENSORS"]['STEER_ANGLE']
251246
self.angle_steers_rate = cp.vl["STEERING_SENSORS"]['STEER_ANGLE_RATE']
252247

253248
#self.cruise_setting = cp.vl["SCM_BUTTONS"]['CRUISE_SETTING']

selfdrive/car/honda/interface.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ def get_params(candidate, fingerprint):
196196
tire_stiffness_factor = 1.
197197
# Civic at comma has modified steering FW, so different tuning for the Neo in that car
198198
is_fw_modified = os.getenv("DONGLE_ID") in ['99c94dc769b5d96e']
199-
ret.steerKpV, ret.steerKiV = [[0.33], [0.10]] if is_fw_modified else [[0.6], [0.18]]
199+
ret.steerKpV, ret.steerKiV = [[0.33], [0.10]] if is_fw_modified else [[0.8], [0.24]]
200200
if is_fw_modified:
201201
ret.steerKf = 0.00003
202202
ret.longitudinalKpBP = [0., 5., 35.]
@@ -211,7 +211,7 @@ def get_params(candidate, fingerprint):
211211
ret.centerToFront = centerToFront_civic
212212
ret.steerRatio = 14.63 # 10.93 is spec end-to-end
213213
tire_stiffness_factor = 1.
214-
ret.steerKpV, ret.steerKiV = [[0.6], [0.18]]
214+
ret.steerKpV, ret.steerKiV = [[0.8], [0.24]]
215215
ret.longitudinalKpBP = [0., 5., 35.]
216216
ret.longitudinalKpV = [1.2, 0.8, 0.5]
217217
ret.longitudinalKiBP = [0., 35.]
@@ -256,7 +256,7 @@ def get_params(candidate, fingerprint):
256256
ret.centerToFront = ret.wheelbase * 0.41
257257
ret.steerRatio = 15.3 # as spec
258258
tire_stiffness_factor = 0.444 # not optimized yet
259-
ret.steerKpV, ret.steerKiV = [[0.6], [0.18]]
259+
ret.steerKpV, ret.steerKiV = [[0.8], [0.24]]
260260
ret.longitudinalKpBP = [0., 5., 35.]
261261
ret.longitudinalKpV = [1.2, 0.8, 0.5]
262262
ret.longitudinalKiBP = [0., 35.]
@@ -283,7 +283,7 @@ def get_params(candidate, fingerprint):
283283
ret.centerToFront = ret.wheelbase * 0.38
284284
ret.steerRatio = 15.0 # as spec
285285
tire_stiffness_factor = 0.444 # not optimized yet
286-
ret.steerKpV, ret.steerKiV = [[0.6], [0.18]]
286+
ret.steerKpV, ret.steerKiV = [[0.8], [0.24]]
287287
ret.longitudinalKpBP = [0., 5., 35.]
288288
ret.longitudinalKpV = [1.2, 0.8, 0.5]
289289
ret.longitudinalKiBP = [0., 35.]

selfdrive/controls/controlsd.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ def state_control(plan, CS, CP, state, events, v_cruise_kph, v_cruise_kph_last,
274274
v_cruise_kph, plan.vTarget, plan.vTargetFuture, plan.aTarget,
275275
CP, PL.lead_1)
276276
# Steering PID loop and lateral MPC
277-
actuators.steer, actuators.steerAngle = LaC.update(active, CS.vEgo, CS.steeringAngle, CS.steeringRate,
277+
actuators.steer, actuators.steerAngle = LaC.update(active, CS.vEgo, CS.steeringAngle,
278278
CS.steeringPressed, plan.dPoly, angle_offset, CP, VM, PL)
279279

280280
# Send a "steering required alert" if saturation count has reached the limit

0 commit comments

Comments
 (0)