Jump to content

Component: DFPlayer (MP3 / WAV) (Audio Output): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(18 intermediate revisions by 3 users not shown)
Line 14: Line 14:
==DFPlayer (MP3 / WAV) component==
==DFPlayer (MP3 / WAV) component==
A small module capable of streaming MP3 and WAV audio files from a micro SD card. Controlled via a serial UART connection to the microcontroller.  
A small module capable of streaming MP3 and WAV audio files from a micro SD card. Controlled via a serial UART connection to the microcontroller.  
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_DFPlayer.fcfx FC_Comp_Source_DFPlayer.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_DFPlayer.fcfx FC_Comp_Source_DFPlayer.fcfx]


==Detailed description==
==Detailed description==




Line 38: Line 60:




DALI Master Example, reads the value of a keypad and sends out DALI commands based on the key pressed, 1 = switch on a slave's light, 2 = switch off a slave's light, 3 = read the slave's light level.
{{Fcfile|DALI_Master.fcfx|DALI Master Example1}}
DALI Slave Example, listens for DALI messages and checks that the group is correct before attempting to process the request and if required reply to the master.
{{Fcfile|DALI_Slave.fcfx|DALI Slave Example1}}


==Downloadable macro reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
 
 
 
 
No Examples here yet
 
 
 
 
 
 
 
 
 
 
 
==Macro reference==
 
===GetError===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PausePlayResetStop'''
| width="90%" class="mtx-class-macrohead" | '''GetError'''
|-
|-
| colspan="2" | Allows the current playing track to be paused, restarted or reset 
| colspan="2" | Checks for any errors and returns the error code. 1=ModuleBusy, 2=SleepMode, 3=SerialError, 4=ChecksumError, 5=TrackOutOfScope, 6=TrackNotFound, 7=InsertionError, 8=SDFail, 10=Sleep 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Mode
|-
| colspan="2" | 0=Pause, 1=Play, 2=Reset, 3=Stop 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===GetReplyByte===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendCommand'''
| width="90%" class="mtx-class-macrohead" | '''GetReplyByte'''
|-
|-
| colspan="2" | Sends a command to the DFPlayer module 
| colspan="2" | Reads a single byte from the last reply. Each reply contains 4 bytes starting with the command code. 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Command
| width="90%" | Index
|-
|-
| colspan="2" | Command code byte 
| colspan="2" | Range: 0-3 / 0=Command, 1=Feedback, 2=Data MSB, 3=Data LSB 
|-
|-
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Feedback
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
===Initialise===
{| class="mtx-class-macrotable wikitable"
|-
|-
| colspan="2" | Collect feedback byte: Range 0-1 
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''Initialise'''
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| colspan="2" | Sets up the UART and does some housekeeping. Must be called before calling any of the other component macros. 
| width="90%" | Parameter
|-
|-
| colspan="2" | 16-bit Parameter 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 91: Line 128:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===IsPlaying===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''IsPlaying'''
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | Checks to see if the last played track is still playing 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''IsReplyAvailable'''
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
===IsReplyAvailable===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''IsReplyAvailable'''
|-
|-
| colspan="2" | Checks to see if new data has been received from the module. Returns true when new data is available. Collect the data using the GetReplyByte macro. 
| colspan="2" | Checks to see if new data has been received from the module. Returns true when new data is available. Collect the data using the GetReplyByte macro. 
Line 104: Line 156:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===PausePlayResetStop===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetVolume'''
| width="90%" class="mtx-class-macrohead" | '''PausePlayResetStop'''
|-
|-
| colspan="2" | Sets the volume level for the module 
| colspan="2" | Allows the current playing track to be paused, restarted or reset 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Volume
| width="90%" | Mode
|-
|-
| colspan="2" | Range: 0 (min) - 30 (max) 
| colspan="2" | 0=Pause, 1=Play, 2=Reset, 3=Stop 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 122: Line 175:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===PlayTrack===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetEQ'''
| width="90%" class="mtx-class-macrohead" | '''PlayTrack'''
|-
|-
| colspan="2" | Sets the equaliser mode for the module 
| colspan="2" | Plays track from the selected folder. MP3 & Advert folder track numbers should be 4 characters long e.g. 0001 any name.mp3, Other folder track numbers should be 3 characters long e.g. 001 Any name.mp3, Root the Track played in placement order. 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | EQMode
| width="90%" | Directory
|-
| colspan="2" | 0=Root, 1=Folder "01" - 99=Folder "99", 100=MP3, 101=Advert 
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Track
|-
|-
| colspan="2" | Range: 0-5 0=Normal, 1=Pop, 2=Rock, 3=Jazz, 4=Classic, 5=Bass 
| colspan="2" | Track number 1="001*.MP3" / "0001*.MP3", 100="100*.MP3" / "0100*.MP3" 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 140: Line 199:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===SendCommand===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetError'''
| width="90%" class="mtx-class-macrohead" | '''SendCommand'''
|-
|-
| colspan="2" | Checks for any errors and returns the error code. 1=ModuleBusy, 2=SleepMode, 3=SerialError, 4=ChecksumError, 5=TrackOutOfScope, 6=TrackNotFound, 7=InsertionError, 8=SDFail, 10=Sleep 
| colspan="2" | Sends a command to the DFPlayer module 
|-
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | Command
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | Command code byte 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''WhilePlaying'''
|-
|-
| colspan="2" | Blocking function that waits for module to stop being busy. Returns true if the module is still busy and the timeout period has passed. 
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
| width="90%" | Feedback
|-
|-
| colspan="2" | Collect feedback byte: Range 0-1 
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Timeout
| width="90%" | Parameter
|-
|-
| colspan="2" | Number of milliseconds to wait, 0=WaitForever 
| colspan="2" | 16-bit Parameter 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===SetEQ===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''IsPlaying'''
| width="90%" class="mtx-class-macrohead" | '''SetEQ'''
|-
|-
| colspan="2" | Checks to see if the last played track is still playing 
| colspan="2" | Sets the equaliser mode for the module 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | EQMode
|-
|-
| colspan="2" | Range: 0-5 0=Normal, 1=Pop, 2=Rock, 3=Jazz, 4=Classic, 5=Bass 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===SetVolume===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetReplyByte'''
| width="90%" class="mtx-class-macrohead" | '''SetVolume'''
|-
|-
| colspan="2" | Reads a single byte from the last reply. Each reply contains 4 bytes starting with the command code. 
| colspan="2" | Sets the volume level for the module 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Index
| width="90%" | Volume
|-
|-
| colspan="2" | Range: 0-3 / 0=Command, 1=Feedback, 2=Data MSB, 3=Data LSB 
| colspan="2" | Range: 0 (min) - 30 (max) 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===SkipTrack===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SkipTrack'''
| width="90%" class="mtx-class-macrohead" | '''SkipTrack'''
|-
|-
| colspan="2" | Jump to the next or previous track 
| colspan="2" | Jump to the next or previous track 
Line 220: Line 285:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===WhilePlaying===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PlayTrack'''
| width="90%" class="mtx-class-macrohead" | '''WhilePlaying'''
|-
|-
| colspan="2" | Plays track from the selected folder. MP3 & Advert folder track numbers should be 4 characters long e.g. 0001 any name.mp3, Other folder track numbers should be 3 characters long e.g. 001 Any name.mp3, Root the Track played in placement order. 
| colspan="2" | Blocking function that waits for module to stop being busy. Returns true if the module is still busy and the timeout period has passed. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Directory
|-
|-
| colspan="2" | 0=Root, 1=Folder "01" - 99=Folder "99", 100=MP3, 101=Advert 
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Track
| width="90%" | Timeout
|-
|-
| colspan="2" | Track number 1="001*.MP3" / "0001*.MP3", 100="100*.MP3" / "0100*.MP3" 
| colspan="2" | Number of milliseconds to wait, 0=WaitForever 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
| colspan="2" | Sets up the UART and does some housekeeping. Must be called before calling any of the other component macros. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Connections'''
| width="90%" class="mtx-class-propfolder" | Connections
|-
|-
|-
|-
Line 300: Line 346:
| colspan="2" | Controls if we are monitoring the busy pin or not. Used by the IfBusy component macro. 
| colspan="2" | Controls if we are monitoring the busy pin or not. Used by the IfBusy component macro. 
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Simulations'''
| width="90%" class="mtx-class-propfolder" | Simulation
|-
|-
|-
|-

Latest revision as of 14:36, 13 July 2026

Author Matrix TSL
Version 1.0
Category Audio Output


DFPlayer (MP3 / WAV) component

A small module capable of streaming MP3 and WAV audio files from a micro SD card. Controlled via a serial UART connection to the microcontroller.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_DFPlayer.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_DFPlayer.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No Examples here yet






Macro reference

GetError

GetError
Checks for any errors and returns the error code. 1=ModuleBusy, 2=SleepMode, 3=SerialError, 4=ChecksumError, 5=TrackOutOfScope, 6=TrackNotFound, 7=InsertionError, 8=SDFail, 10=Sleep 
- BYTE Return


GetReplyByte

GetReplyByte
Reads a single byte from the last reply. Each reply contains 4 bytes starting with the command code. 
- BYTE Index
Range: 0-3 / 0=Command, 1=Feedback, 2=Data MSB, 3=Data LSB 
- BYTE Return


Initialise

Initialise
Sets up the UART and does some housekeeping. Must be called before calling any of the other component macros. 
- VOID Return


IsPlaying

IsPlaying
Checks to see if the last played track is still playing 
- BOOL Return


IsReplyAvailable

IsReplyAvailable
Checks to see if new data has been received from the module. Returns true when new data is available. Collect the data using the GetReplyByte macro. 
- BOOL Return


PausePlayResetStop

PausePlayResetStop
Allows the current playing track to be paused, restarted or reset 
- UINT Mode
0=Pause, 1=Play, 2=Reset, 3=Stop 
- VOID Return


PlayTrack

PlayTrack
Plays track from the selected folder. MP3 & Advert folder track numbers should be 4 characters long e.g. 0001 any name.mp3, Other folder track numbers should be 3 characters long e.g. 001 Any name.mp3, Root the Track played in placement order. 
- BYTE Directory
0=Root, 1=Folder "01" - 99=Folder "99", 100=MP3, 101=Advert 
- UINT Track
Track number 1="001*.MP3" / "0001*.MP3", 100="100*.MP3" / "0100*.MP3" 
- VOID Return


SendCommand

SendCommand
Sends a command to the DFPlayer module 
- BYTE Command
Command code byte 
- BOOL Feedback
Collect feedback byte: Range 0-1 
- UINT Parameter
16-bit Parameter 
- VOID Return


SetEQ

SetEQ
Sets the equaliser mode for the module 
- BYTE EQMode
Range: 0-5 0=Normal, 1=Pop, 2=Rock, 3=Jazz, 4=Classic, 5=Bass 
- VOID Return


SetVolume

SetVolume
Sets the volume level for the module 
- BYTE Volume
Range: 0 (min) - 30 (max) 
- VOID Return


SkipTrack

SkipTrack
Jump to the next or previous track 
- BOOL Direction
0=Next, 1=Previous 
- VOID Return


WhilePlaying

WhilePlaying
Blocking function that waits for module to stop being busy. Returns true if the module is still busy and the timeout period has passed. 
- UINT Timeout
Number of milliseconds to wait, 0=WaitForever 
- BOOL Return


Property reference

Properties
Connections
Channel
UART Channel selector Software channels are bit banged using generic I/O pins but are not as reliable as hardware channels. Hardware channels use the selected peripheral on-board the target microcontroller. 
Baud Options
Baud rate option selector 
Baud Rate
 
TX
Pin to be used for Transmit data 
RX
Pin to be used for Receive data 
Use Busy Pin
Controls if we are monitoring the busy pin or not. Used by the IfBusy component macro. 
Simulation
Scope Traces
Selects if the scope traces are automatically added to the data recorder window or not. Simulation - draws an approximation of the UART data onto the scope trace. ICT - sets up the scope trace for incoming data and adds UART packet decoding at the correct BAUD. 
Console Data
Selects if the console data is automatically generated or not 
Console Format
Controls if the data is shown as a log with time and date stamps or just as raw data 
Console Columns
Number of characters that can be displayed on a single line of the console. 
Data Source
Simulation data source used to allow the component to connect to various remote devices Nothing - Simulation data is ignored COM port - Routes the communication data to and from a physical or virtual COM port API - Routes the communication data via a data API component on the Panel. 
API
Selects which API component to route the communication data via. Add API components to the panel before they will be available in this list. API components are available from the Comms component category.