SDC.ini file SDC version 2.00
Below is the SDC.ini file from the distribution for SDC version 2.00. If you are upgrading from an earlier version your ini file will not be updated so as to avoid overwriting your existing configuration. Most new settings have defaults but some sections are entirely new, and if using any of the new functionality you may need to add these sections manually to your existing file.
Of particular interest may be the [dbcmappings]
and [dbc<n>]
sections. Note the [dbc<n>]
sections are commented out through the inclusion of a semicolon at the beginning of their lines. Remove this if you want to include those files when adding to your ini file.
Also of relevance are the additional datamodes in the [datasource]
section.
[gpio]
;gpio<index>=<pin> enables monitoring of the pin
;valid pins are 16, 17, 18, 19, 20, and 21
;attribute gpio<pin> will be 1 or 0 depending on status of pin.
;see docs for more details, including specifying pullup or pulldown
;default is pullup if not specified.
;use gpio20 as the attribute to see this one:
gpio1=20
[wifi]
supplicantloglevel=3
usesupplicant=1
[autotune]
minclt=60
minvisits=2
defaultstate=on
enabled=1
dfcowaittime=2000
accelenrichwaittime=2000
;Speeduino only.
dfcotype=statusbits
;you can use this instead if your ecu is not a speeduino.
;dfcotype=pulsewidth
;pulsewidthattribute=<your attribute>
[datasource]
datamode=playback
playbackfile=c:\playback\playback21.slp
;The following datamodes are speeduino-specific:
;datamode=serial
;datamode=tsusbserial
;datamode=canbus
;datamode=serialcanbusauxin
;datamode=serialcanbusbridgeauxin
;datamode=tsusbserialcanbusauxin
;datamode=tsusbserialcanbusbridgeauxin
;datamode=playbackcanbusbridge
;datamode=haltechcanbus
;datamode=bmwcanbus
;datamode=vagcanbus
;
;The following datamodes are for DBC files and require [dbc<n>] sections enabling
;depending upon the ECU you are using.
;datamode=dbccanbus
;datamode=dbcplayback
;
;Other datasource related settings you may need. Note this may not be all of them.
;See documentation for full details. Some settings are speeduino only.
;usbserialname=
;delayaftertsconnect default is 1000 no need to change this.
;delayaftertsconnect=1000
;Specify usbserialmanufacturer=ATMEL if you are using a genuine arduin Mega with datasource=tsusbserial, tsusbserialcanbusauxin, or tsusbserialcanbusbridgeauxin.
;failure to do so may result in connection failures.
;usbserialmanufacturer=ATMEL
rebroadcastattributes=
extrarebroadcastattributes=
;
; Enable the [dbc1] and [dbc2] sections if you want to use the dbcplayback
; datamode or if you want to use dbccanbus. These will enable support for
; rusEFI and Haltech. rusEFI can be enabled to generate both of these at
; the same time (enable rusEFI broadcast and Haltech dash).
;
;[dbc1]
;dbcname=c:\rusEFI_CAN_verbose.dbc
;dbcnamespace=rusefi
;
;[dbc2]
;dbcname=c:\haltech.dbc
;dbcnamespace=hal
[gps]
enabled=0
usegpsheading=1
[general]
shellupdatelocalpath=c:\kernel\
useRTC=0
master=0
waitforboot=0
timezone=GMT Standard Time
;0=no limit for throttleratehz (e.g. 30 is 30 messages/sec max)
;the internal maximum is 45hz. This can be increased if needed see help.
throttleratehz=30
warnings=1
deviceid=01
debugmode=0
wifi=1
speedsource=vss
speedsourceunits=mph
webserverenabled=1
globalscriptfrequency=500
serverport=3456
broadcastport=9000
stoich=14.7
[warnings]
;attribute=<id>,<min>,<max>,<usemin>,<usemax>,<enginemustberunning>,<mintimebetweenwarnings>
;below is an oilpressure warning at < 30psi and > 100 psi
;oilpressure=1190,30,100,1,1,1,5000
[display]
;xscale=1.0
;yscale=1.0
[pages]
pagefile=c:\pagesxml\demo1.xml
;pagefile=widecluster.xml
indexpage=1
autoindexselect=0
autoindextimeout=10
transitions=1
[consumption]
;injectorflowrate is in cc/min
injectorflowrate=180
tripainjectorseconds=0
tripbinjectorseconds=0
[registration]
;free version demo user
username=Demo User
regcode=0873DC8020D6B1E81504
regcode2=C9EC9FD54EC400FA0000
[settings]
brightness=1,0,0,1000,1,0
day=2,9,1,31,1,1
month=3,10,1,12,1,1
year=4,2022,2021,2030,1,1
hour=5,9,0,23,1,1
minute=6,14,0,59,1,1
baseshiftlightrpm=7,3800,2000,5500,100,0
trackshiftlightbase=8,4800,3500,5500,100,0
booleansetting=9,1,0,1,1,0
minoutputbrightnesscount=10,250,0,1000,50,0
mininputbrightnesscount=11,450,0,1000,50,0
calculatedbrightness=12,0,0,1000,1,0
currentclustermode=13,0,0,10,1,0
lastusedpage=14,0,0,100,1,0
tpmsalarmfilter=15,6,0,255,1,0
averagespeedenabled=16,0,0,1,1,0
selectedtrip=17,1,0,1,1,0
;officialbrightness is deprecated
officialbrightness=18,255,20,255,1,0
screenbrightness=19,242,0,255,1,0
;this custom setting is for canbus control of the brightness setting on a tinysdc device
;not relevant to other implementations.
deviceid3brightness=20,255,0,255,10,0
[gears]
rollingcircumference=1.927
finaldriveratio=3.45
ratio1=2.95
margin1=0.5
ratio2=1.95
margin2=0.3
ratio3=1.34
margin3=0.15
ratio4=1
margin4=0.1
ratio5=0.8
margin5=0.1
[canbus]
controllerid=2001
gpsid=2001
ecuid=2000
accessoryid=1998
clockid=1997
speed=1000
;0=no delay. See documentation for details.
rebroadcastmicroseconddelay=40
loggingratehz=25
[canbusinputs]
rpm=1270,5,2,1,0,0,0,0,Revs Per Minute,rpm
map=1270,2,2,1,0,0,0,0,Manifold Pressure,kPa
fuellevel=1230,0,2,1,0,0,0,0,Fuel Level, litres
oilpressure=1231,0,1,0,0,0,0,0,Oil Pressure,PSI
odometer=1232,0,4,4,0,0,0,0,Odometer,miles
currenttripcounter=1233,0,4,4,0,0,0,0,Current Trip,miles
speedmph=1235,0,1,0,0,0,0,0,Speed,mph
custom=1600,0,1,0,0,10,3,2,Custom Field,dogs/min
[encoder]
enabled=1
halfstep=0
pin1=17
pin2=16
button=18
[buttons]
;13 is the default shutdown button used with the SDC IO hat.
;Enable the line below and check the help to enable controlled shutdown.
;You must have an ignition feed connected to the board otherwise the system
;will shut down as soon as it boots up.
;shutdownbutton=13.pd,shutdown
[datalog]
enabled=0
maxlogfiles=10
attributes=custom,rpm,map,engine,secl,status1,dwell,iat,clt,gammabat,batteryv,o2,gammaego,gammaiat,gammawarm,accelenrich,gammae,ve,afrtarget,pw1,tpsdot,advance,tps,loops,boosttarget,boostduty,spark,rpmdot,ethanolpct,flexcorrection,flexigncorrection,idleload,baro,errors,gear,speedmph,injectionseconds,fuelrange,odometer,tripa,tripb,fuellevel,oilpressure,currentspeedlimit,gpsspeedmph,lat,long,nsatsinview,gpsheading,currenttripcounter
[tpms]
frontpressurelowerlimit=18
frontpressureupperlimit=28
rearpressurelowerlimit=18
rearpressureupperlimit=30
[throttles]
;rebroadcast throttle rates.
;enable if needed (defaults to off if not specified)
disabled=1
;note the code internally has hard coded throttles but they are all set to 0,
;meaning that all data is real-time. If you have bus performance issues, find
;values you don't need that change a lot and throttle them, or exclude them from
;rebroadcast altogether by explicitly defining rebroascastattributes.
;<attribute>=<min gap in ms>
;tpsdot=300
;tps=50
;etc
[performance]
vehiclemass=1060
vehiclecda=0.4
rollingdragfactor=0.013
airdensitykgm3=1.225
bhptimeout=500
drivetrainpowerloss=15
[tinysdc]
;for canbus control of brightness from a different device
;remotebrightness=deviceid3brightness
[pwm]
;<pwm1|pwm0>=<type>,<attribute>,<maxval>,<ppu>,<multiplier>,<divider>[,<duty>]
;
;the example below converts rpm to a square wave pulse whose freqency matches
;a 4 cylinder engine with 2 ignition pulses per revolution. The rpm is converted
;to rps via the divide by 60. The duty cycle will be 50%
;
;PWM1 is always pin 19.
;pwm1=freq,rpm,8000,2,1,60
[dbcmapping]
;The dbcmapping section is only relevant for DBC datamodes (dbccanbus and dbcplayback)
;Mappings are only active if the [dbc<n>] entry being processed has a matching namespace
;otherwise they are just ignored.
;You can still access the primary namespaced attributes directly; you don't have to use
;a mapping. e.g. if you want the rpm from the hal namespace, then you can use hal.rpm
;against a ValueGauge. This is preferred as the data sizes between the internal attributes
;(which originate from speeduino) are not always large enough for values of
;DBC based attributes.
;
;maps a dbc entry to an sdc attribute
;<sdc attribute>=<dbc attribute including namespace qualifier>
;The below mappings will help the rusefidemo.xml file work a bit better as it references
;the internal attributes e.g. rpm quite a lot.
rpm=hal.rpm
map=hal.map
tps=hal.tps
ecufuelpressure=hal.fuelpressure
ecuoilpressure=hal.oilpressure
fuelload=hal.enginedemand
advance=hal.ignangle
injectorduty=injstg1duty
pw1=hal.INJ_STG1_AVG_TM
pw2=hal.INJ_STG2_AVG_TM
pw3=hal.INJ_STG3_AVG_TM
pw4=hal.INJ_STG4_AVG_TM
tsvvt1angle=hal.intake_cam_angle1
tsvvt2angle=hal.intake_cam_angle2
batteryv=hal.batt_volt
boosttarget=hal.target_boost_lvl
baro=hal.baro
clt=hal.coolant_temp
iat=hal.air_temp
fueltemp=hal.fuel_temp