<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">So long as you are calling this in IncomingFrameCan* or IncomingPollReply, that is possibly acceptable, but bear in mind that any other incoming CAN frames will be queued up and possible lost (if the queue overflows) while you are in vTaskDelay.<div class=""><br class=""></div><div class="">Using timers means that the transmission will be in the context of the freertos timer task, but is generally acceptable for short quick jobs (like transmitting a single CAN frame).<br class=""><div><br class=""></div><div>Regards, Mark.</div><div><br class=""><blockquote type="cite" class=""><div class="">On 27 Nov 2017, at 3:00 AM, Geir Øyvind Vælidalo <<a href="mailto:geir@validalo.net" class="">geir@validalo.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html; charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">I use <span style="font-family: Monaco;" class="">vTaskDelay(</span><span style="font-family: Monaco;" class="">50 / portTICK_PERIOD_MS)</span><font face="Monaco" class=""> to delay 50ms. Not sure if that is the correct way, though.</font><div class=""><font face="Monaco" class=""><br class=""></font></div><div class=""><font face="Monaco" class="">Geir<br class=""></font><div class=""><font face="Monaco" class=""><br class=""></font><div class=""><br class=""><blockquote type="cite" class=""><div class="">26. nov. 2017 kl. 12:42 skrev Mark Webb-Johnson <<a href="mailto:mark@webb-johnson.net" class="">mark@webb-johnson.net</a>>:</div><br class="Apple-interchange-newline"><div class=""><div class="">You definitely don’t want to be spinning - that won’t give you any precision on the delay (other tasks may pre-empt), and is also wasteful.<br class=""><br class="">How about a timer (xTimerCreate). Have it fire once every 50ms/100ms. You can xTimerStart start it, and stop when done.<br class=""><br class="">One trick to use is that the freertos objects contain a void* user data you can use to point to ‘this’ (your C++ object).<br class=""><br class="">Regards, Mark.<br class=""><br class=""><blockquote type="cite" class="">On 26 Nov 2017, at 1:38 PM, Tom Parker <<a href="mailto:tom@carrott.org" class="">tom@carrott.org</a>> wrote:<br class=""><br class="">Hi,<br class=""><br class="">To implement the Leaf's remote climate control, I need to send a frame, wait 50ms and then repeat another frame every 100ms for 25 repetitions.<br class=""><br class="">On the v2 hardware I implemented this with a 50ms delay and the ticker10th function. I wasn't able to find any delay functions in v3 so either I didn't look hard enough, nothing needs one, or busy-waiting isn't the right thing to do. Ticker10th isn't implemented. I could refactor the existing ticker task to fire 10 times a second instead of once per second, or I could register a new task for the climate control and cancel it after the the 25 repetitions. Or maybe something else altogether is appropriate?<br class=""><br class="">Thoughts?<br class=""><br class="">_______________________________________________<br class="">OvmsDev mailing list<br class=""><a href="mailto:OvmsDev@lists.teslaclub.hk" class="">OvmsDev@lists.teslaclub.hk</a><br class=""><a href="http://lists.teslaclub.hk/mailman/listinfo/ovmsdev" class="">http://lists.teslaclub.hk/mailman/listinfo/ovmsdev</a><br class=""></blockquote><br class="">_______________________________________________<br class="">OvmsDev mailing list<br class=""><a href="mailto:OvmsDev@lists.teslaclub.hk" class="">OvmsDev@lists.teslaclub.hk</a><br class=""><a href="http://lists.teslaclub.hk/mailman/listinfo/ovmsdev" class="">http://lists.teslaclub.hk/mailman/listinfo/ovmsdev</a><br class=""></div></div></blockquote></div><br class=""></div></div></div>_______________________________________________<br class="">OvmsDev mailing list<br class=""><a href="mailto:OvmsDev@lists.teslaclub.hk" class="">OvmsDev@lists.teslaclub.hk</a><br class="">http://lists.teslaclub.hk/mailman/listinfo/ovmsdev<br class=""></div></blockquote></div><br class=""></div></body></html>