BRICKD(8)
π brickd(8) β the Tinkerforge Brick Daemon, explained by your favorite unix girly
okay so before we even start: the manual name is brickd(8) and it lives in the System Manager's Manual section, which is honestly iconic of it. anyway, sit down, grab a strawberry, we're doing this πβ¨
β¨ NAME β¨
brickd β the Tinkerforge Brick Daemon. that's it, that's the name, slay π
π¦ SYNOPSIS π¦
brickd [--help|--version|--check-config|--daemon [<log-file>]] [--debug
[<filter>]] [--config-file <config-file>] [--pid-file <pid-file>]
πΈ DESCRIPTION πΈ
so brickd is part of the Tinkerforge software infrastructure, and its whole job β its main character moment β is routing Tinkerforge Protocol (TFP) messages between Tinkerforge USB devices (Bricks) and sockets. and bestie, both plain TCP/IP sockets and WebSockets are supported, no cap π₯
the point of all this? it lets your user programs use those sockets to talk to Bricks and their Bricklets connected over USB without ever having to deal with USB themselves π because who has the time. the TCP/IP and WebSocket communication itself is encapsulated in API bindings that exist for various programming languages. nice and tidy, we love to see it β¨
Bricks connected over USB are identified using their vendor ID (16D0) and product IDs (063D and 09E5). memorize those, there might be a quiz π
by default, brickd binds to 0.0.0.0 (IPv4) and listens on port 4223 for incoming TCP/IP connections. listening for incoming WebSocket connections is disabled by default for security reasons β yes, security reasons, respect the boundary π. the bind address (IPv4 or IPv6), listen ports, dual-stack operation and WebSocket support can all be configured in the configuration file. see brickd.conf(5) for further details, iykyk π
π OPTIONS π
--helpβ prints help for the command line options and exits. the "what do I do now" button π«Ά--versionβ prints the version number and exits. quick vibe check on your install β¨--check-configβ checks the configuration file for errors, prints the result and exits. like a friend proofreading your text before you send it π--daemon [<log-file>]β runs as a daemon and writes the log file to an overridable location. yes, the<log-file>is optional, and yes, it overrides the default πΈ--debug [<filter>]β sets the log severity level to debug, overriding the configuration file value. seebrickd.conf(5)for further details. it also takes an optional comma separated list of filter statements that allow you to control the visibility of debug messages (FIXME: Add more details about filter statements). yes bestie, the manpage literally says FIXME, we respect the honesty π--config-file <config-file>β reads config from <config-file> instead of the default location. your config, your rules π--pid-file <pid-file>β writes the PID to <pid-file> instead of the default location π
β SIGNALS β
- when it receives
SIGHUP,brickdwill close and reopen its log file π - when it receives
SIGUSR1,brickdwill scan for added or removed USB devices π
and about that second one: it's only useful if brickd has no other means to detect USB hotplug on its own. that's the case if brickd is using a libusb-1.0 version without hotplug support β meaning libusb-1.0 before 1.0.16. so like, old libusb? you gotta poke it manually. no cap π«
π§ FILES π§
π when run as root
/etc/brickd.confβ the system wide default configuration file. seebrickd.conf(5)for further details. can be overridden using the--config-fileoption β¨/var/log/brickd.logβ the system wide default daemon-mode log file. can be overridden using the optional <log-file> argument to the--daemonoption π/run/brickd.pidβ the system wide default PID file. can be overridden using the--pid-fileoption π
π when run as non-root
~/.brickd/brickd.confβ per user default configuration file. seebrickd.conf(5)for further details. can be overridden using the--config-fileoption πΈ~/.brickd/brickd.logβ per user default daemon-mode log file. can be overridden using the optional <log-file> argument to the--daemonoption π¦~/.brickd/brickd.pidβ per user default PID file. can be overridden using the--pid-fileoption β
π BUGS π
please report all bugs you discover to https://github.com/Tinkerforge/brickd/issues β the devs literally want to know, don't be shy π
π AUTHOR π
Matthias Bolte <matthias@tinkerforge.com> β the legend himself π«Ά
π COPYRIGHT π
Copyright (C) 2012-2018 Matthias Bolte
π₯ LICENSE π₯
brickd is distributed under the terms of the GNU GPL v2+. this is free software; see the source for copying conditions. and, important, in big dramatic letters: there is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. like, zero. none. don't come for them if it breaks π
π SEE ALSO π
brickd.conf(5)- for further information see
https://www.tinkerforge.com
so that's the whole page bestie, you ate that π and for the credits: this page comes from Tinkerforge, it's dated 2018-10-11, and it's filed under BRICKD(8) β periodt. go forth and route some TFP messages π¦β¨π
π¦ where this page comes from
- opensuse-leap 16.0: brickd 2.4.7-bp160.1.9 Β· GPL-2.0-only
- opensuse-leap 16.0: brickd 2.4.7-bp160.1.9 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms