The SparkFun OpenLog serial data collector, is found in selected versions of Machinechat's JEDI software. It allows JEDI to receive streaming sensor data from SparkFun's family of OpenLog Artemis devices and any attached sensors. The collector is loaded by default and seen under Settings -> Data Collectors via the navigation bar:
OpenLog Collector Setup
NOTE: Before attempting to use the software, make sure your OpenLog Artemis board has the latest firmware (found here - v2.4 or above). Check the SparkFun website for details on updating the firmware using the firmware upload GUI and the board configuration.
---
Select the edit icon to open the OpenLog collector configuration.
1. Make sure your OpenLog board is plugged into the computer's USB port. Within the collector's configuration page, click on Serial Port and select the port that the OpenLog board is plugged into. If the port is listed twice, once as cu and once as tty, select the cu entry. In the example below (MacOS), that is /dev/cu.usbserial-10:
2. Configure the Baud Rate, Data Bits, Parity, and Stop Bits to match your OpenLog board, (i.e. 115200, 8, No parity, One Stop Bit).
3. Set the Record Delimiter to Newline, and select: Time Stamp at Server.
4. For the CSV Header - verify that Is After Line is selected and the text entry is: Content-Type: text/csv
5. Select SAVE at the bottom of the page . You may be warned that the collector will be disabled, select SAVE again.
6. If the OpenLog Collector is disabled (like the picture below), click on the green enable icon , it should now show the grey disable icon .
7. Press the reset button on the OpenLog device for about 1 second and release.
8. Go back into the OpenLog Collector and you should see a list of all the data fields being sent from your Openlog device, like this (the list will vary depending on attached sensors, board model, etc):
The data coming in from the device can be used to build dashboards, setup rules, trigger actions, and more. When you go to select the data source for a rule or dashboard widget, the Source name will be OpenLogSerial (unless it was changed from the default in the collector), and the Property will be one of the listed fields coming from the OpenLog device. Please explore support.machinechat.io for more details on dashboards and rules.
Troubleshooting
As mentioned above, make sure your OpenLog Artemis board has the latest firmware (found here - v2.4 or above). Check the SparkFun website for details on updating the firmware using the firmware upload GUI and the board configuration.
---
If no fields show up, make sure your OpenLog is sending data, then press the REFRESH FIELDS button . If there is still an issue, disable the OpenLog Collector (see #6 above), then use the serial monitor of the Arduino programming environment or a program like CoolTerm, to verify the board is sending data as expected. JEDI relies on the header being sent after reset to setup the fields and identify the metrics within the CSV data stream. If the SD-Card is not installed, make sure the OpenLog device is configured to disable logging to the SD-Card.
Verify the proper port, baud rate, data bits, parity, and stop bits have been selected to match your board configuration and saved within the OpenLog Collector configuration. Verify the collector is enabled (see #6 above). Press the reset button on the OpenLog device, the blue and red LEDs will come on after button release, the blue LED will go off, the red LED will stay on, and the green LED will blink when data is transmitted.
JEDI also allows detailed debug information from the collector to be stored in a file. To enable this select it within the OpenLog Collector near the bottom:
Save and then enable the collector. The resulting debugging information can be found on the disk at: <jedi-subdirectory-name>/debug/datacollectors/OpenLogSerial/debug.log
Make sure to replace <jedi-subdirectory-name> with the actual directory you installed JEDI in. The file debug.log is a text file that can be viewed in any editor.