diff --git a/sufst-openlogger/.idea/workspace.xml b/sufst-openlogger/.idea/workspace.xml index 0b1d5141c2f1bdb148594d6fb2cc9d5dfff4f196..54a3d4bc39dd631041ed04929393599d8ebc276e 100644 --- a/sufst-openlogger/.idea/workspace.xml +++ b/sufst-openlogger/.idea/workspace.xml @@ -10,12 +10,13 @@ </component> <component name="ChangeListManager"> <list default="true" id="81322c4e-6adb-4223-9d00-22249012da89" name="Default Changelist" comment=""> + <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/buffer.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/buffer.cpp" afterDir="false" /> <change beforePath="$PROJECT_DIR$/openLogger.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/openLogger.cpp" afterDir="false" /> <change beforePath="$PROJECT_DIR$/../sufst-openlogger_controller/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../sufst-openlogger_controller/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/../sufst-openlogger_controller/buffer.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/../sufst-openlogger_controller/buffer.cpp" afterDir="false" /> <change beforePath="$PROJECT_DIR$/../sufst-openlogger_controller/openLoggerController.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/../sufst-openlogger_controller/openLoggerController.cpp" afterDir="false" /> <change beforePath="$PROJECT_DIR$/../sufst-openlogger_controller/openLoggerController.h" beforeDir="false" afterPath="$PROJECT_DIR$/../sufst-openlogger_controller/openLoggerController.h" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/../sufst-openlogger_controller/sufst-openlogger_controller.ino" beforeDir="false" afterPath="$PROJECT_DIR$/../sufst-openlogger_controller/sufst-openlogger_controller.ino" afterDir="false" /> </list> <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> <option name="SHOW_DIALOG" value="false" /> @@ -31,20 +32,20 @@ </component> <component name="FileEditorManager"> <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> - <file pinned="false" current-in-tab="true"> + <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/sufst-openlogger.ino"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="357"> - <caret line="21" selection-start-line="21" selection-end-line="21" /> + <state relative-caret-position="255"> + <caret line="15" column="37" lean-forward="true" selection-start-line="15" selection-start-column="37" selection-end-line="15" selection-end-column="37" /> </state> </provider> </entry> </file> - <file pinned="false" current-in-tab="false"> + <file pinned="false" current-in-tab="true"> <entry file="file://$PROJECT_DIR$/openLogger.cpp"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="764"> - <caret line="204" column="5" selection-start-line="204" selection-start-column="5" selection-end-line="204" selection-end-column="5" /> + <state relative-caret-position="-384"> + <caret line="221" lean-forward="true" selection-start-line="221" selection-end-line="221" /> </state> </provider> </entry> @@ -64,8 +65,8 @@ <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/buffer.cpp"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="663"> - <caret line="83" column="25" lean-forward="true" selection-start-line="83" selection-start-column="25" selection-end-line="83" selection-end-column="25" /> + <state relative-caret-position="2081"> + <caret line="128" lean-forward="true" selection-start-line="128" selection-end-line="128" /> </state> </provider> </entry> @@ -83,7 +84,6 @@ </component> <component name="FindInProjectRecents"> <findStrings> - <find>read</find> <find>Read</find> <find>Write</find> <find>UartCir</find> @@ -113,6 +113,7 @@ <find>unitSizeBytes</find> <find>sdB</find> <find>sdBufferUsedBytes</find> + <find>write</find> </findStrings> <replaceStrings> <replace>DEBUG_OPENLOGGER</replace> @@ -132,16 +133,16 @@ <option value="$PROJECT_DIR$/circularBuffer.cpp" /> <option value="$PROJECT_DIR$/sufst-openlogger.ino" /> <option value="$PROJECT_DIR$/buffer.h" /> - <option value="$PROJECT_DIR$/buffer.cpp" /> <option value="$PROJECT_DIR$/openLogger.h" /> + <option value="$PROJECT_DIR$/buffer.cpp" /> <option value="$PROJECT_DIR$/openLogger.cpp" /> </list> </option> </component> <component name="OCFindUsagesOptions" text="true" ivars="false" properties="true" derivedClasses="false" /> <component name="ProjectFrameBounds"> - <option name="x" value="1417" /> - <option name="width" value="2432" /> + <option name="x" value="1909" /> + <option name="width" value="1940" /> <option name="height" value="2111" /> </component> <component name="ProjectLevelVcsManager" settingsEditedManually="true" /> @@ -211,14 +212,14 @@ <servers /> </component> <component name="TimeTrackingManager"> - <option name="totallyTimeSpent" value="75188000" /> + <option name="totallyTimeSpent" value="77388000" /> </component> <component name="ToolWindowManager"> - <frame x="945" y="0" width="1621" height="1407" extended-state="0" /> + <frame x="1273" y="0" width="1293" height="1407" extended-state="0" /> <editor active="true" /> <layout> - <window_info content_ui="combo" id="Project" order="0" sideWeight="0.4972549" visible="true" weight="0.2094811" /> - <window_info active="true" id="Structure" order="1" sideWeight="0.5027451" side_tool="true" visible="true" weight="0.2094811" /> + <window_info content_ui="combo" id="Project" order="0" sideWeight="0.4972549" visible="true" weight="0.2652068" /> + <window_info active="true" id="Structure" order="1" sideWeight="0.5027451" side_tool="true" visible="true" weight="0.2652068" /> <window_info id="Favorites" order="2" side_tool="true" weight="0.32916266" /> <window_info anchor="bottom" id="Message" order="0" /> <window_info anchor="bottom" id="Find" order="1" /> @@ -250,13 +251,6 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/buffer.cpp"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="663"> - <caret line="83" column="25" lean-forward="true" selection-start-line="83" selection-start-column="25" selection-end-line="83" selection-end-column="25" /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/openLogger.h"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="374"> @@ -267,17 +261,24 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/openLogger.cpp"> + <entry file="file://$PROJECT_DIR$/sufst-openlogger.ino"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="764"> - <caret line="204" column="5" selection-start-line="204" selection-start-column="5" selection-end-line="204" selection-end-column="5" /> + <state relative-caret-position="255"> + <caret line="15" column="37" lean-forward="true" selection-start-line="15" selection-start-column="37" selection-end-line="15" selection-end-column="37" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/sufst-openlogger.ino"> + <entry file="file://$PROJECT_DIR$/buffer.cpp"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="2081"> + <caret line="128" lean-forward="true" selection-start-line="128" selection-end-line="128" /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/openLogger.cpp"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="357"> - <caret line="21" selection-start-line="21" selection-end-line="21" /> + <state relative-caret-position="-384"> + <caret line="221" lean-forward="true" selection-start-line="221" selection-end-line="221" /> </state> </provider> </entry> diff --git a/sufst-openlogger/buffer.cpp b/sufst-openlogger/buffer.cpp index e8a4d740e9227202835fe34c66002ab6ca8947ca..ad56e022c64d4bc80b7cbb4d3d1a4f498c88d629 100644 --- a/sufst-openlogger/buffer.cpp +++ b/sufst-openlogger/buffer.cpp @@ -78,7 +78,8 @@ void cirBufferWriteBytes(cirBuffer_handle cirBuff, void *src, uint16_t len) } if (cirBuff->full) { - cirBuff->tail = (cirBuff->tail + (len - remainingBytes)) & cirBuff->capacity; + cirBuff->tail = (cirBuff->tail + (len - (cirBuff->capacity - remainingBytes))) & (cirBuff->capacity - 1); + } cirBuff->head = head; diff --git a/sufst-openlogger/openLogger.cpp b/sufst-openlogger/openLogger.cpp index 0dcb9ee724bccc387bae4d246b6a85dd36b1b648..99b9d8deee1e6bd57c6092e1f2d00138fa122039 100644 --- a/sufst-openlogger/openLogger.cpp +++ b/sufst-openlogger/openLogger.cpp @@ -264,37 +264,6 @@ void openloggerStarting() void openloggerRunning() { -} - -void openloggerStopping() -{ -#if DEBUG_OPENLOGGER - Serial.println("OPLOG: stopping "); -#endif // DEBUG_OPENLOGGER - - if (file.close()) { - if (ledStatus) { - digitalWrite(5, LOW); - - ledStatus = false; - } - - openloggerInformMaster(uartInfoStopped); - - openloggerState = idle; - } - else { - - openloggerInformMaster(uartInfoStopError); - - openloggerState = running; - } - -} - -void openloggerProcess() -{ - static uint8_t sdPayload[OPENLOGGER_BYTES_PER_BLOCK_WRITE]; if (cirBufferAvailable(&sdCirBuffer) >= OPENLOGGER_BYTES_PER_BLOCK_WRITE) { @@ -322,7 +291,35 @@ void openloggerProcess() sdBlocksWritten = 0; } } +} + +void openloggerStopping() +{ +#if DEBUG_OPENLOGGER + Serial.println("OPLOG: stopping "); +#endif // DEBUG_OPENLOGGER + + if (file.close()) { + + openloggerInformMaster(uartInfoStopped); + } + else { + + openloggerInformMaster(uartInfoStopError); + } + + openloggerState = idle; + + if (ledStatus) { + digitalWrite(5, LOW); + ledStatus = false; + } + +} + +void openloggerProcess() +{ openloggerState_ptrs[openloggerState](); } diff --git a/sufst-openlogger_controller/.idea/workspace.xml b/sufst-openlogger_controller/.idea/workspace.xml index b0bb38e02d5d6c1ab7f89a759da041a7d4463139..e0c2f6f66af603836a75e1675dff5f159c2d5072 100644 --- a/sufst-openlogger_controller/.idea/workspace.xml +++ b/sufst-openlogger_controller/.idea/workspace.xml @@ -11,11 +11,12 @@ <component name="ChangeListManager"> <list default="true" id="e173ebdc-c119-4235-9653-364cc21b27a5" name="Default Changelist" comment=""> <change beforePath="$PROJECT_DIR$/../sufst-openlogger/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../sufst-openlogger/.idea/workspace.xml" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/../sufst-openlogger/buffer.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/../sufst-openlogger/buffer.cpp" afterDir="false" /> <change beforePath="$PROJECT_DIR$/../sufst-openlogger/openLogger.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/../sufst-openlogger/openLogger.cpp" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/buffer.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/buffer.cpp" afterDir="false" /> <change beforePath="$PROJECT_DIR$/openLoggerController.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/openLoggerController.cpp" afterDir="false" /> <change beforePath="$PROJECT_DIR$/openLoggerController.h" beforeDir="false" afterPath="$PROJECT_DIR$/openLoggerController.h" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/sufst-openlogger_controller.ino" beforeDir="false" afterPath="$PROJECT_DIR$/sufst-openlogger_controller.ino" afterDir="false" /> </list> <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> <option name="SHOW_DIALOG" value="false" /> @@ -48,8 +49,8 @@ <file pinned="false" current-in-tab="true"> <entry file="file://$PROJECT_DIR$/sufst-openlogger_controller.ino"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="714"> - <caret line="68" column="34" lean-forward="true" selection-start-line="68" selection-start-column="34" selection-end-line="68" selection-end-column="34" /> + <state relative-caret-position="856"> + <caret line="70" column="23" selection-start-line="70" selection-start-column="23" selection-end-line="70" selection-end-column="23" /> <folding> <element signature="e#57#90#0" expanded="true" /> </folding> @@ -57,52 +58,11 @@ </provider> </entry> </file> - <file pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/ecuCan.cpp"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="-2485"> - <caret line="19" selection-start-line="19" selection-end-line="19" /> - <folding> - <element signature="e#39#58#0" expanded="true" /> - <element signature="e#767#962#0" expanded="true" /> - <element signature="e#1017#1048#0" expanded="true" /> - <element signature="e#1415#1610#0" expanded="true" /> - <element signature="e#1665#1696#0" expanded="true" /> - <element signature="e#2008#2203#0" expanded="true" /> - <element signature="e#2258#2289#0" expanded="true" /> - <element signature="e#3273#3468#0" expanded="true" /> - <element signature="e#3523#3554#0" expanded="true" /> - <element signature="e#3914#4109#0" expanded="true" /> - <element signature="e#4164#4195#0" expanded="true" /> - <element signature="e#4492#4687#0" expanded="true" /> - <element signature="e#4742#4773#0" expanded="true" /> - <element signature="e#5086#5281#0" expanded="true" /> - <element signature="e#5336#5367#0" expanded="true" /> - <element signature="e#5683#5878#0" expanded="true" /> - <element signature="e#5933#5964#0" expanded="true" /> - <element signature="e#6301#6496#0" expanded="true" /> - <element signature="e#6551#6582#0" expanded="true" /> - <element signature="e#6899#7094#0" expanded="true" /> - <element signature="e#7149#7180#0" expanded="true" /> - </folding> - </state> - </provider> - </entry> - </file> - <file pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/ecuCan.h"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="357"> - <caret line="21" selection-start-line="21" selection-end-line="21" /> - </state> - </provider> - </entry> - </file> <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/openLoggerController.cpp"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="346"> - <caret line="171" column="60" lean-forward="true" selection-start-line="171" selection-start-column="60" selection-end-line="171" selection-end-column="60" /> + <state relative-caret-position="576"> + <caret line="175" column="87" selection-start-line="175" selection-start-column="87" selection-end-line="175" selection-end-column="87" /> <folding> <element signature="e#40#73#0" expanded="true" /> </folding> @@ -110,20 +70,11 @@ </provider> </entry> </file> - <file pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/ecuOpenloggerTags.h"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="119"> - <caret line="7" column="38" selection-start-line="7" selection-start-column="8" selection-end-line="7" selection-end-column="38" /> - </state> - </provider> - </entry> - </file> <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/openLoggerController.h"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="272"> - <caret line="16" column="37" selection-start-line="16" selection-start-column="37" selection-end-line="16" selection-end-column="37" /> + <state relative-caret-position="187"> + <caret line="11" column="37" lean-forward="true" selection-start-line="11" selection-start-column="37" selection-end-line="11" selection-end-column="37" /> </state> </provider> </entry> @@ -140,26 +91,8 @@ <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/buffer.cpp"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="30"> - <caret line="80" column="82" lean-forward="true" selection-start-line="80" selection-start-column="82" selection-end-line="80" selection-end-column="82" /> - </state> - </provider> - </entry> - </file> - <file pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/can.cpp"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="306"> - <caret line="18" lean-forward="true" selection-start-line="18" selection-end-line="18" /> - </state> - </provider> - </entry> - </file> - <file pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/can.h"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="401"> - <caret line="28" column="15" selection-start-line="28" selection-start-column="15" selection-end-line="28" selection-end-column="15" /> + <state relative-caret-position="763"> + <caret line="47" column="1" lean-forward="true" selection-start-line="47" selection-start-column="1" selection-end-line="47" selection-end-column="1" /> </state> </provider> </entry> @@ -168,7 +101,6 @@ </component> <component name="FindInProjectRecents"> <findStrings> - <find>Cir</find> <find>cir</find> <find>open</find> <find>openloggerStopped</find> @@ -195,9 +127,10 @@ <find>OPENLOGGER_TX_BUFFER_LEN</find> <find>startTag</find> <find>&</find> - <find>&=</find> <find>tx</find> + <find>&=</find> <find>openloggerProcess</find> + <find>cirBuffer</find> </findStrings> <replaceStrings> <replace>Serial1</replace> @@ -221,16 +154,16 @@ <option value="$PROJECT_DIR$/ecuOpenloggerTags.h" /> <option value="$PROJECT_DIR$/ecuCan.cpp" /> <option value="$PROJECT_DIR$/buffer.cpp" /> - <option value="$PROJECT_DIR$/sufst-openlogger_controller.ino" /> - <option value="$PROJECT_DIR$/openLoggerController.cpp" /> <option value="$PROJECT_DIR$/openLoggerController.h" /> + <option value="$PROJECT_DIR$/openLoggerController.cpp" /> + <option value="$PROJECT_DIR$/sufst-openlogger_controller.ino" /> </list> </option> </component> <component name="OCFindUsagesOptions" text="true" ivars="false" properties="true" derivedClasses="false" /> <component name="ProjectFrameBounds"> - <option name="x" value="976" /> - <option name="width" value="2873" /> + <option name="x" value="691" /> + <option name="width" value="3158" /> <option name="height" value="2111" /> </component> <component name="ProjectLevelVcsManager" settingsEditedManually="true"> @@ -300,14 +233,14 @@ <servers /> </component> <component name="TimeTrackingManager"> - <option name="totallyTimeSpent" value="93438000" /> + <option name="totallyTimeSpent" value="100996000" /> </component> <component name="ToolWindowManager"> - <frame x="948" y="0" width="1619" height="1407" extended-state="0" /> + <frame x="461" y="0" width="2105" height="1407" extended-state="0" /> <editor active="true" /> <layout> - <window_info content_ui="combo" id="Project" order="0" sideWeight="0.49490196" visible="true" weight="0.21167415" /> - <window_info active="true" id="Structure" order="1" sideWeight="0.50509804" side_tool="true" visible="true" weight="0.21167415" /> + <window_info active="true" content_ui="combo" id="Project" order="0" sideWeight="0.49490196" visible="true" weight="0.16136919" /> + <window_info id="Structure" order="1" sideWeight="0.50509804" side_tool="true" visible="true" weight="0.16136919" /> <window_info id="Favorites" order="2" side_tool="true" weight="0.3298872" /> <window_info anchor="bottom" id="Message" order="0" /> <window_info anchor="bottom" id="Find" order="1" /> @@ -338,13 +271,6 @@ </entry> <entry file="file://$PROJECT_DIR$/circularBuffer.cpp" /> <entry file="file://$PROJECT_DIR$/circularBuffer.h" /> - <entry file="file://$PROJECT_DIR$/can.cpp"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="306"> - <caret line="18" lean-forward="true" selection-start-line="18" selection-end-line="18" /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/can.h"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="401"> @@ -352,13 +278,6 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/buffer.h"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="255"> - <caret line="15" column="22" lean-forward="true" selection-start-line="15" selection-start-column="22" selection-end-line="15" selection-end-column="22" /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/ecuCan.h"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="357"> @@ -403,34 +322,48 @@ </state> </provider> </entry> + <entry file="file://$PROJECT_DIR$/can.cpp"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="306"> + <caret line="18" lean-forward="true" selection-start-line="18" selection-end-line="18" /> + </state> + </provider> + </entry> <entry file="file://$PROJECT_DIR$/buffer.cpp"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="30"> - <caret line="80" column="82" lean-forward="true" selection-start-line="80" selection-start-column="82" selection-end-line="80" selection-end-column="82" /> + <state relative-caret-position="763"> + <caret line="47" column="1" lean-forward="true" selection-start-line="47" selection-start-column="1" selection-end-line="47" selection-end-column="1" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/openLoggerController.cpp"> + <entry file="file://$PROJECT_DIR$/buffer.h"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="346"> - <caret line="171" column="60" lean-forward="true" selection-start-line="171" selection-start-column="60" selection-end-line="171" selection-end-column="60" /> - <folding> - <element signature="e#40#73#0" expanded="true" /> - </folding> + <state relative-caret-position="255"> + <caret line="15" column="22" lean-forward="true" selection-start-line="15" selection-start-column="22" selection-end-line="15" selection-end-column="22" /> </state> </provider> </entry> <entry file="file://$PROJECT_DIR$/openLoggerController.h"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="272"> - <caret line="16" column="37" selection-start-line="16" selection-start-column="37" selection-end-line="16" selection-end-column="37" /> + <state relative-caret-position="187"> + <caret line="11" column="37" lean-forward="true" selection-start-line="11" selection-start-column="37" selection-end-line="11" selection-end-column="37" /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/openLoggerController.cpp"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="576"> + <caret line="175" column="87" selection-start-line="175" selection-start-column="87" selection-end-line="175" selection-end-column="87" /> + <folding> + <element signature="e#40#73#0" expanded="true" /> + </folding> </state> </provider> </entry> <entry file="file://$PROJECT_DIR$/sufst-openlogger_controller.ino"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="714"> - <caret line="68" column="34" lean-forward="true" selection-start-line="68" selection-start-column="34" selection-end-line="68" selection-end-column="34" /> + <state relative-caret-position="856"> + <caret line="70" column="23" selection-start-line="70" selection-start-column="23" selection-end-line="70" selection-end-column="23" /> <folding> <element signature="e#57#90#0" expanded="true" /> </folding> diff --git a/sufst-openlogger_controller/buffer.cpp b/sufst-openlogger_controller/buffer.cpp index 7148af5cead03a3f29a97e6562ba76c3f5bdb473..b9f37426c5d6fdadd7b2fc4fd96d831cb21b7924 100644 --- a/sufst-openlogger_controller/buffer.cpp +++ b/sufst-openlogger_controller/buffer.cpp @@ -78,7 +78,7 @@ void cirBufferWriteBytes(cirBuffer_handle cirBuff, void *src, uint16_t len) } if (cirBuff->full) { - cirBuff->tail = (cirBuff->tail + (len - usedBytes)) & (cirBuff->capacity - 1); + cirBuff->tail = (cirBuff->tail + (len - (cirBuff->capacity - usedBytes))) & (cirBuff->capacity - 1); } } diff --git a/sufst-openlogger_controller/openLoggerController.cpp b/sufst-openlogger_controller/openLoggerController.cpp index 29e3e089686809548710f49af9da14e368bd9282..d530acb5318f4ff7451e7cebddbbcddf383edad4 100644 --- a/sufst-openlogger_controller/openLoggerController.cpp +++ b/sufst-openlogger_controller/openLoggerController.cpp @@ -168,18 +168,20 @@ void openloggerRunning() uint16_t uartTxDataAmount = cirBufferAvailable(&openloggerTxDataCirBuffer); - if (uartTxDataAmount >= 32) { + if (uartTxDataAmount > 0) { + if ((uartCurrentMs - uartLastTransmissionMs) >= 5) { - if (Serial1.availableForWrite() >= 40) { + if (Serial1.availableForWrite() >= 35) { + + uint8_t uartTxBytes = (uartTxDataAmount >= 32) ? 32 : uartTxDataAmount; Serial1.write(uartStartByte); Serial1.write(uartTypeData); - Serial1.write(32); - Serial1.flush(); + Serial1.write(uartTxBytes); - cirBufferReadBytes(&openloggerTxDataCirBuffer, uartTxPayload, 32); + cirBufferReadBytes(&openloggerTxDataCirBuffer, uartTxPayload, uartTxBytes); - Serial1.write(uartTxPayload, 32); + Serial1.write(uartTxPayload, uartTxBytes); uartLastTransmissionMs = millis(); } diff --git a/sufst-openlogger_controller/openLoggerController.h b/sufst-openlogger_controller/openLoggerController.h index b0ba5541a0ef4be7909dbabb8b21bbd4c65c3e19..fd48ca605dfe165b8f0d885d9a4f2f7005fef928 100644 --- a/sufst-openlogger_controller/openLoggerController.h +++ b/sufst-openlogger_controller/openLoggerController.h @@ -9,7 +9,7 @@ #define DEBUG_OPENLOGGER 0 -#define OPENLOGGER_TX_BUFFER_LEN 2048 +#define OPENLOGGER_TX_BUFFER_LEN 1024 #define OPENLOGGER_TX_COMMAND_BUFFER_LEN 8 /*