Debugging
Debugging Output
We use the debug package and log under the serialport
namespace. Each package has it's own scope
serialport/stream
for all stream released loggingserialport/binding*
for all binding related loggingserialport/*
for everything
You can enable logging through environment variables. Check the debug docs for info.
linux, osx
DEBUG=serialport/stream node myapp.js
DEBUG=serialport/* node myapp.js
DEBUG=* node myapp.js
Windows command prompt notes
CMD
On Windows the environment variable is set using the set
command.
set DEBUG=serialport/*
Example:
set DEBUG=serialport/* & node myapp.js
PowerShell (VS Code default)
PowerShell uses different syntax to set environment variables.
$env:DEBUG = "serialport/*"
Example:
$env:DEBUG='serialport/*'; node app.js
Core dumps
You can enable core dumps on osx with;
ulimit -c unlimited for core dumps
You can "console.log" from c++ with;
fprintf(stdout, "Hellow World num=%d str=%s\n", 4, "hi");
Repl
You can make use of the serialport-repl
command with;
serialport-repl # to auto detect an arduino
serialport-repl /path/name # to connect to a specific port
It will load a serialport object with debugging turned on.