Latest S7 Firmware

Ryan.g
Syvecs Staff - Caretaker
Posts: 527
Joined: Fri May 30, 2008 4:05 pm

Re: Latest S7 Firmware

Post by Ryan.g »

This Link - CLICK HERE is for version 1.711 of the S7 firmware. RIGHT CLICK AND COPY LINK IF DOESN'T AUTOMATICALLY DOWNLOAD


PLEASE ENSURE LATEST SSUITE SOFTWARE IS IN USE BEFORE UPGRADING FIRMWARE!!! http://www.syvecs.com/forum/viewtopic.php?f=8&t=122

Changes Since 1.699

Follow the firmware update guide here - https://www.youtube.com/watch?v=Pi1pp-XbQqw&t=331s

702

* trqFuelSev available as cm axis choice
* trqIgnSev available as cm axis choice
* rev limit DBW limit now beats gear blip DBW jacking
* activation engine speed error threshold for rev limit DBW limit (so can defer activation until rev limit reached)
* add check for revCutActive to lean lambda service
* changed detection of engine stopped for clutch protection of paddle shifts in pit from runMode!=run to rpm==0
* initial help notes on direct injection pump control operation
* remove Syvecs hard-coded RS232 stream
* replaced RS232 can echo with RS232 Generic Transmit (up to 20 frames; mappable content)

705

* change launchInStage to launchState in fixed syvecs CAN stream
* calculate map1/ipp1 and map2/ipp2 as new items mapIppRatio1 and mapIppRatio2
* high load timer decay rate and maximum value

706

* option to disable fuel pump when engine enable switch off
* new item launchStateX (extended/combined launchState and launchInStage)
* change launchState to launchStateX in fixed syvecs CAN stream
launchState should read identically to before. launchStateX should read the same as the old except in stage, where it has a different value (please log both to compare):
launchState : 0=OFF 1=ON 2=CLEARING 100=DISABLED
launchStateX : 0=OFF 1=ON 2=CLEARING 50=STAGE 100=DISABLED


708

* prevent fpoSwitch turning on while engine is running
* cancel fpoSwitch if pump out cancelled
* remove detent switch vehicle speed protection (caused some confusion and downshift from N protection better anyway)
* disable up/down shift inputs for 250ms after device turn on (in case of runt pulses from other hardware powering up)
* auto trans solenoid outputs full off duty modifier (as existing full on duty modifier)

We then have

709

* wheel speed linearisation speed=f(speed) for tyre growth (different front/rear curves)
* raw (nominal) wheel speed monitoring items
* use raw (non-latched / cancelled) override switch states for pedal learning validation

710

* closed loop idle disable by drive ratio error
* closed loop idle base duty learning

711

* help on value of 7 in manual cam checklists
* add cal offset to logOnLoadTime / logOnLoadTimeL / logOnLoadTimeH
* add cal offset to logRunTime / logRunTimeL / logRunTimeH
* new monitoring item ppsClosed (works from ppsFinal)
* preblip no longer forces orfc but works through gear blip torque reduction
* significant overrun fuel cutoff changes
- option to enable by ppsClosed rather than by tpsClosed
- disabled by gear blip even if pps used for activation
- new monitoring item orfcPct; ramps in and out when orfc engaged / disengaged
- orfc ignition retard applied according to orfcPct; fuel cuts applied when orfcPct is 100%
- NOTE THAT ORFC FUEL REINSTATE MULTIPLIER IS LOST; ORFC IGNITION CUT OPTION IS LOST
* update ECU with new list of output statuses from 2-20-x PDUX firmware
* changed yaw to second transmission of rpm in default Syvecs rs232 stream content
Ryan.g
Syvecs Staff - Caretaker
Posts: 527
Joined: Fri May 30, 2008 4:05 pm

Re: Latest S7 Firmware

Post by Ryan.g »

This Link - CLICK HERE is for version 1.752 of the S7 firmware.

Help Video on 1.752 here - https://youtu.be/U_HK5wiVDAw


PLEASE ENSURE LATEST SSUITE SOFTWARE IS IN USE BEFORE UPGRADING FIRMWARE!!!
http://www.syvecs.com/forum/viewtopic.php?f=8&t=122

Changes Since 1.711

Follow the firmware update guide here - https://www.youtube.com/watch?v=Pi1pp-XbQqw&t=331s

* VVT base duties a function of two configurable axes, default f(eot,eop)

We couldn't make it import the old settings perfectly no matter what, so for once this means MANUALLY COPYING ACROSS THE VALUES WHEN UPGRADING CALIBRATIONS.

* New item rpmAvgDT, which is rpmAvg rate of change per 1/100s
* rpmAvgDT available as cm axis choice
* Rev limit drive-by-wire gain, min, and max, become f(rpmAvgErr,rpmAvgDT)

This is to allow some derivative calibration on the rev limit drive-by-wire. Note that when the engine speeds drops below the lowest breakpoint, it use to ramp out according to the left-most gain cell value. There is now a whole left-most column (due to the addition of the rpmAvgDT axis) so it uses the TOP-LEFT cell (ie the one that would apply with the most-negative error and the most-negative derivative). This is commented in the F1 help notes.

* Engine coolant pressure trip thresholds are now mappable against engine speed as well as coolant temperature

* Preblip fuel cut severity, ignition cut severity, ignition retard configurable (single points)

This allows the engine-braking severity of the simple pre-blip to be adjusted in a similar (albeit less complex and configurable) way to the overrun fuel cutoff. Default numbers should match previous behaviour.

* Scaled tacho output becomes x rpm for y ms on calSelect change for driver indication (optional)

This allows the tacho drive to indicate cal switch position changes on a rev counter.

* Aircon PWM output

The existing on/off output stays the same but a second PWM output f(rpm,configurable) has been added. You can run the strategy with either one or both outputs configured.

* Idle speed target adder f(idleActiveTime,vehspd)
* Idle duty adder f(idleActiveTime,vehspd)

* Two user-configurable timers

These can be configured to time up to five minutes of a particular condition (two configurable items with configurable thresholds for each timer). The timers can then be used on the axes of configurable maps.

* Three sensor zeroing groups for user-defined sensors (Uxx sensors only - NOT Rxx sensors)
* User-defined sensor zeroing groups via action codes

You can assign which (if any) Uxx sensors are zeroed by which of the three new zeroing groups. This is for things like zeroing of user-defined ride-height sensors. Note that the zeroing does not know about the engineering-unit transformation (scaling and offset) defined for the sensor, so it zeroes to the raw zero value, not the engineering-unit zero value. If the user-definition offset has been set to zero (which it typically is) this makes no difference, but it's worth being aware of.

751 Update - * renamed mapMaxN to mapNMax
* removed mapxN default logging rates

* changed S7 CAN frame {dbw1Duty,dbw1Targ,egt1,egt2} to 100Hz

* pre-throttle-pressure sensors ptp1/2 including ptp1/2DT derivatives
* ptp1/2 available as cm axis choice
* ptp1/2DT available as cm axis choice
* option for key-on bap from ptp1/2
* calculate map1/ptp1 and map2/ptp2 as new items mapPtpRatio1/2
* add ptp1/2 faults to action codes

* option to target wastegate control manifold pressure against ptp1/2 instead of map1/2
* option to target wastegate control dbw limiting against ptp1/2 instead of map1/2

750 -

Option to select normalised manifold pressure as the primary load

There is a built in compensation table that computes multipliers based on act1/act2 from -30C to +140C. These multipliers can be seen in map1NMlt/map2NMlt. The normalised map1/map2 are then computed as map1N/map2N. They will be between 0.75x and 1.25x the un-normalised values. There are also map1NDT/map2NDT (mirroring map1DT/map2DT) and map1NFault/map2NFault, and also a mapMaxN. If you select the new primary load option for normalised manifold pressure (instead of manifold pressure) a whole bunch of things that are currently mapped against map1/map2/mapMax become mapped against map1N/map2N/mapMaxN. These should all be labelled properly in SCal and include main fuelling and ignition and things like fuel angle and blend maps, lambda targets, torque estimation tables and so on. If you do not set the fuelMltAct/ignAddAct tables to 1.000/0.000 you will get a warning (but it won't actually stop you). There are lots of things that may come after this. Ways to target boost pressure from normalised values (consistent torque delivery) but with absolute pressure limitations still (for rules compliance and to protect pipes etc) for example.

The one big thing to note (apart from that we need to carefully test in both the new and original modes) is that you need to set breakpoints and calibrate your fuel and ignition maps to go beyond what you might usually expect, because map1N/map2N can be up to 25% greater than map1/map2 if it gets really cold, and you don't want to go lean or have too much ignition timing. Calibrators need to understand this properly, and NOT use the feature if they are unsure about it.

3) Alternate full-bridge drive mode option

For S8 and S12 the Full bridge drive Frequency will be changed to a lower range to help with motor winding disturbance from engine harmonics

4) Optional thirds-based gear linearisation hysteresis

Until now we linearised gearV (actually gearVF) to gear based on the mid-points of the in-gear voltages. This could generate a lot of changes of value very quickly if the barrel wobbled about between gears, which was especially inappropriate in some situations. For a special project, we switched to changing "gear" only when 2/3 of the way to the new voltage, giving both hysteresis and stability when in a deliberate false neutral. This is likely good for almost any project, so I have defaulted this to ON after a calibration upgrade.

5) Option to disable calibration override uses budgeting

This allows you to use time budgeting only.

6) Drive-by-wire can be limited by overrun fuel cut - see the new tables and "dbwLimitOrfc"

Also this limit, or torque reductions from overrun fuel cut (ONLY) do not disable cruise control, but do prevent enabling it

7) Gear cut/blip configurable maps

CM for gear cut dog kick time multiplier
CM for gear cut closed loop main max time multiplier
CM for gear cut closed loop retry max time multiplier
CM for gear blip dog prep time multiplier

8) Configurable number of closed loop gear cut dog kicks (main kick retry kick retry kick...)

9) Dummy input 'pin' for use for gear-voltage-from-CAN overriding (used with Megaline CAN)

10) Fuel pressure trip now looks at fpp as well as other pressures (default threshold -1000)

11) Sensor zeroing for clutch position via ethernet comms and action codes

12) Sensor zeroing for clutch paddle positions via ethernet comms and action codes

13) Enable/disable sensor zeroing by group in the calibration

This allows competitors in a series to be locked out from anything they shouldn't be zeroing - eg wastegate position, even if their user ID allows zeroing "in principle".

14) Datastream scaled values for ppsFinal and tpsMax


15) Option for low oil pressure light on off thresholds to become margins above eop1Trip

16) On load/off load overrev markers in datalogging

Whenever the logbook count changes, a text marker is dropped if logging is active.

17) Tacho In function now usable to measure clutch slip (for example)

The function is now renamable, called Engine Speed Input and defaults to [Tacho]. There is a new tacho_rpmIn item. You can define teeth per reading separately from teeth per rev. If enabled at the same time as engine control (which used to be an error) it does not set rpm (but still does if engine control is disabled).

18) In-range switch thresholds include their endpoints

19) The code knows the new PDUXB output states for proper naming in datalogging.

20) New choices for configurable map axes

cruiseVehSpeedTarget available as cm axis
cruiseVehSpeedError available as cm axis
cruiseRpmTarg available as cm axis
cruiseRpmError available as cm axis
cruisePps available as cm axis
cruisePpsBase available as cm axis
tbvDuty available as cm axis
fuelPump1Duty available as cm map axis
tacho_rpmIn available as cm axis

21) Fixed Syvecs datastream changes as requested

Change S7 frame {rpm,ppsFinal,tpsMax,adip1Duty} to {rpm,dsPpsFinal,dsTpsMax,adip1Duty}
Change S7 frame {carCode05,carCode06,atSelect,spare} to 20Hz
Added S7 frame 1Hz 625h {IIE_logDistance1H_U,IIE_logDistance1L_U,IIE_logRunTimeH_U,IIE_logRunTimeL_U}
Post Reply