<div dir="ltr">I'm well on the way to finishing bms and vector support in scripted vehicle implementation via the DBC infrastructure.<div><br></div><div>This is the documentation I'm adding into the 'DBC Introduction' page.</div><div><br></div><div>It's kind of the correct place, but it's going to be common to the other script support for polling.. so maybe I should link to it in a common area.</div><div> </div><div>//.ichael</div><div><br></div><div><div><br></div><div><h2 style="box-sizing:border-box;margin-top:0px;font-family:"Roboto Slab",ff-tisa-web-pro,Georgia,Arial,sans-serif;font-size:24px;margin-bottom:24px">DBC Signals<a class="gmail-headerlink" href="#dbc-signals" title="Link to this heading" style="box-sizing:border-box;color:rgb(41,128,185);text-decoration-line:none;display:inline-block;font-variant-numeric:normal;font-variant-east-asian:normal;font-variant-alternates:normal;font-size-adjust:none;font-kerning:auto;font-feature-settings:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:1;font-family:FontAwesome;opacity:0;margin-left:0.5em"></a></h2><p style="box-sizing:border-box;line-height:24px;margin:0px 0px 24px">DBC Signal names can be used to store values directly into metrics. Eg a signal <code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:12px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">v_b_soc</span></code> would be sent to the metric <code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:12px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">v.b.soc</span></code>. If the unit name on a signal matches a valid ‘unit code’ or ‘unit label’, then this will be passed on too.</p><p style="box-sizing:border-box;line-height:24px;margin:0px 0px 24px">For signal names, <code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:12px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">_</span></code> will get translated to a <code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:12px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">.</span></code> for looking up metrics (<code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:12px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">.</span></code> is still a valid character in a DBC ID).</p><p style="box-sizing:border-box;line-height:24px;margin:0px 0px 24px">It is also possible to store into a vector by putting a number at the end of the signal id. Eg the signal <code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:12px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">v_t_pressure_0</span></code> would be sent to the first element of the <code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:12px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">v.t.pressure</span></code> vector.</p><h2 style="box-sizing:border-box;margin-top:0px;font-family:"Roboto Slab",ff-tisa-web-pro,Georgia,Arial,sans-serif;font-size:24px;margin-bottom:24px">BMS Targets<a class="gmail-headerlink" href="#bms-targets" title="Link to this heading" style="box-sizing:border-box;color:rgb(41,128,185);text-decoration-line:none;display:inline-block;font-variant-numeric:normal;font-variant-east-asian:normal;font-variant-alternates:normal;font-size-adjust:none;font-kerning:auto;font-feature-settings:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:1;font-family:FontAwesome;opacity:0;margin-left:0.5em"></a></h2><p style="box-sizing:border-box;line-height:24px;margin:0px 0px 24px">There are also special BMS (battery management) targets that make sure the averages etc are calculated. The format is: <span style="box-sizing:border-box;font-weight:700">bms.</span><em style="box-sizing:border-box">{type}</em><span style="box-sizing:border-box;font-weight:700">.</span><em style="box-sizing:border-box">{operation}</em>[<em style="box-sizing:border-box">.</em><em style="box-sizing:border-box">{index}</em>].</p><p style="box-sizing:border-box;line-height:24px;margin:0px 0px 24px">The <em style="box-sizing:border-box">{type}</em> is either <span style="box-sizing:border-box;font-weight:700">v</span> for voltage or <span style="box-sizing:border-box;font-weight:700">t</span> for temperature.</p><div class="gmail-wy-table-responsive" style="box-sizing:border-box;margin-bottom:24px;max-width:100%;overflow:visible"><table class="gmail-docutils gmail-align-default" style="border-collapse:collapse;border-spacing:0px;margin-bottom:24px;empty-cells:show;border:1px solid rgb(225,228,229)"><thead style="box-sizing:border-box;color:rgb(0,0,0);vertical-align:bottom"><tr class="gmail-row-odd" style="box-sizing:border-box"><th class="gmail-head" style="box-sizing:border-box;font-size:14.4px;margin:0px;overflow:visible;padding:8px 16px;border:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Operation</p></th><th class="gmail-head" style="box-sizing:border-box;font-size:14.4px;margin:0px;overflow:visible;padding:8px 16px;border:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Description</p></th><th class="gmail-head" style="box-sizing:border-box;font-size:14.4px;margin:0px;overflow:visible;padding:8px 16px;border:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Has Index</p></th></tr></thead><tbody style="box-sizing:border-box"><tr class="gmail-row-even" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><span style="box-sizing:border-box;font-weight:700">n</span></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Total number of cell voltage readings</p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">No</p></td></tr><tr class="gmail-row-odd" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:1px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><span style="box-sizing:border-box;font-weight:700">m</span></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Readings per module</p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">No</p></td></tr><tr class="gmail-row-even" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><span style="box-sizing:border-box;font-weight:700">r</span></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Reset stats</p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Optional</p></td></tr><tr class="gmail-row-odd" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:0px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><span style="box-sizing:border-box;font-weight:700">c</span></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:0px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Cell value</p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:0px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Yes</p></td></tr></tbody></table></div><div class="gmail-wy-table-responsive" style="box-sizing:border-box;margin-bottom:24px;max-width:100%;overflow:visible"><table class="gmail-docutils gmail-align-default" id="gmail-id1" style="border-collapse:collapse;border-spacing:0px;margin-bottom:24px;empty-cells:show;border:1px solid rgb(225,228,229)"><caption style="box-sizing:border-box;color:rgb(0,0,0);font-style:italic;font-variant-numeric:normal;font-variant-east-asian:normal;font-variant-alternates:normal;font-size-adjust:none;font-kerning:auto;font-feature-settings:normal;font-stretch:normal;font-size:13.6px;line-height:1;font-family:arial,sans-serif;padding:1em 0px"><span class="gmail-caption-text" style="box-sizing:border-box">DBC Examples</span><a class="gmail-headerlink" href="#id1" title="Link to this table" style="box-sizing:border-box;color:rgb(41,128,185);text-decoration-line:none;display:inline-block;font-style:normal;font-variant-numeric:normal;font-variant-east-asian:normal;font-variant-alternates:normal;font-size-adjust:none;font-kerning:auto;font-feature-settings:normal;font-stretch:normal;font-size:14px;line-height:1;font-family:FontAwesome;opacity:0;margin-left:0.5em"></a></caption><thead style="box-sizing:border-box;color:rgb(0,0,0);vertical-align:bottom"><tr class="gmail-row-odd" style="box-sizing:border-box"><th class="gmail-head" style="box-sizing:border-box;font-size:14.4px;margin:0px;overflow:visible;padding:8px 16px;border:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Example</p></th><th class="gmail-head" style="box-sizing:border-box;font-size:14.4px;margin:0px;overflow:visible;padding:8px 16px;border:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Description</p></th></tr></thead><tbody style="box-sizing:border-box"><tr class="gmail-row-even" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:10.8px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">bms.t.n</span></code></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Set total number of cell temperature readings to incoming value.</p></td></tr><tr class="gmail-row-odd" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:1px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:10.8px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">bms.t.m</span></code></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Set total number of cells per grouping to incoming value.</p></td></tr><tr class="gmail-row-even" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:10.8px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">bms.v.r</span></code></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Reset stats for cell voltages (ignore value)</p></td></tr><tr class="gmail-row-odd" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:1px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:10.8px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">bms.v.r.0</span></code></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Reset stats and set Voltage at index <em style="box-sizing:border-box">0</em> to incoming value</p></td></tr><tr class="gmail-row-even" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:10.8px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">bms.t.c.2</span></code></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:rgb(243,246,246);border-bottom:1px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Set cell temperature at index <em style="box-sizing:border-box">2</em> to incoming value.</p></td></tr><tr class="gmail-row-odd" style="box-sizing:border-box"><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:0px solid rgb(225,228,229);border-left:0px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px"><code class="gmail-docutils gmail-literal gmail-notranslate" style="box-sizing:border-box;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",Courier,monospace;font-size:10.8px;max-width:100%;background:rgb(255,255,255);border:1px solid rgb(225,228,229);padding:2px 5px;color:rgb(231,76,60);overflow-x:auto"><span class="gmail-pre" style="box-sizing:border-box">bms.v.c.5</span></code></p></td><td style="box-sizing:border-box;vertical-align:middle;font-size:14.4px;overflow:visible;padding:8px 16px;background-color:transparent;border-bottom:0px solid rgb(225,228,229);border-left:1px solid rgb(225,228,229)"><p style="box-sizing:border-box;line-height:1rem;font-size:0.9rem;margin:0px">Set cell voltage at index <em style="box-sizing:border-box">5</em> to incoming value.</p></td></tr></tbody></table></div></div></div></div>