LogoClient: Difference between revisions
Updated by push_wiki.py |
No edit summary |
||
| Line 7: | Line 7: | ||
== Purpose == | == Purpose == | ||
Software | Software from Logopak DE drives labellers in production. When developing or supporting that software it is useful to be able to perform the same low-level operations by hand, and to see exactly what goes across the wire. LogoClient is that tool. It is useful when: | ||
* You need to '''send a layout or data file to a labeller''' and confirm it loads correctly. | * You need to '''send a layout or data file to a labeller''' and confirm it loads correctly. | ||
Revision as of 21:35, 13 June 2026
LogoClient (c4j_logoclient) is a standalone desktop application — and underlying client library — for communicating with Logopak PowerLeap label printers over the network. It connects to a labeller, transfers layout and data files to and from it, sends commands and field data, browses the printer's on-board storage and retrieves its logs. It exists so that the software-to-labeller conversation can be developed, exercised and diagnosed on an ordinary PC, in environments where no physical Logopak labeller is available to test against.
It is the client half of a pair: where a real labeller is not to hand, LogoRenderer can emulate one, and LogoClient talks to that emulator exactly as it would talk to real hardware. Together they let you exercise the whole label-printing workflow with no hardware at all.
Disclaimer: LogoClient is an independent open-source tool and is not a Logopak product. It is not affiliated with, endorsed by, or supported by Logopak. Logopak, PowerLeap and related names are trademarks of their respective owners and are used solely to describe interoperability. The software is intended for local test and development use only — it must not be relied upon for production label printing.
Purpose
Software from Logopak DE drives labellers in production. When developing or supporting that software it is useful to be able to perform the same low-level operations by hand, and to see exactly what goes across the wire. LogoClient is that tool. It is useful when:
- You need to send a layout or data file to a labeller and confirm it loads correctly.
- You want to browse, upload, download or delete files on the printer's on-board drives.
- You are debugging the protocol and want a live, byte-level trace of everything sent and received.
- You need to send raw commands or field data to a labeller and read its replies.
- You want to poll a labeller's pallet log and capture one file per SSCC as labels are applied.
- You want to develop without a physical Logopak by pointing LogoClient at the LogoRenderer printer emulator instead of real hardware.
Supported Printers and Protocols
LogoClient supports both current Logopak controller generations:
| Mode | Hardware | Transport |
|---|---|---|
| PL3 (TCP) | PowerLeap III | Direct TCP socket on the data ports (8000 / 8100 / 8200 / 8300). Carries the full LEAP, LAMA/LACE and LSP command set — layout activation, field data, firmware queries, file management, I/O monitoring and asynchronous reporting. |
| PL6 (SFTP) | PowerLeap 6 | File transfer over SFTP (port 22). PL6 is driven by exchanging files rather than TCP commands, so this mode is focused on uploading, downloading and listing files and reading the pallet log. |
Source Code and Releases
LogoClient is part of the open-source Commander4j suite and is distributed under the GNU General Public License.
Installation
Native install packages for Windows, macOS and Linux are available from the Downloads page and are the preferred installation method. Each installer bundles its own Java runtime, so no separate Java installation is required. Installing creates a native LogoClient launcher that can be started like any other desktop application.
Running from the jar
Alternatively the tool can be run directly as an ordinary Java (Swing) application:
java -jar c4j_logoclient.jar
Running the jar requires a recent Java runtime (Java 21 or later). The bundled JSch library is required only for PL6 (SFTP); PL3 (TCP) has no external dependencies.
The Main Window
The window has a connection bar across the top, a central file-transfer and directory area, a message pane for composing raw commands, and a pair of log panes along the bottom — an activity log and a wire trace. All transfer and command actions are disabled until a connection is open.
Connecting
In the connection bar you choose the connection Type (PL3 TCP or PL6 SFTP), enter the labeller's host / IP address and port, and — for PL6 — a username and password. Pressing the connect button opens the link; a status indicator shows the connected host and port. A real labeller is typically reached at its own network address (for example 192.168.1.100); the LogoRenderer emulator is reached at 127.0.0.1.
Options in the connection area let you list the remote directory automatically on connect, send a periodic heartbeat to detect a dropped link, and set the socket read timeout.
Transferring and Managing Files
The central area lists the files on the printer for a chosen remote path and file mask, showing each file's name, size, modified time and type. From here you can:
- Upload a local file to the printer.
- Download one or more selected files to a chosen local folder.
- Delete selected files from the printer (with confirmation).
- Refresh the listing, and on PL6 navigate into sub-folders.
PL3 exposes the printer's storage areas (/c0/, /c9/, /f0/, /r0/) with file masks such as *.llf or *.pcx; PL6 exposes its SFTP folders.
Sending Commands and Field Data
In PL3 mode the message pane composes and transmits raw text to the labeller. Control characters can be entered as readable tokens such as <STX>, <ETX> and <CR>, and the end-of-line terminator appended on send is selectable. This is how layouts are activated, field data is sent, and LAMA/LSP queries are issued by hand. Replies appear in the activity log and the raw bytes in the wire trace.
Pallet Log Polling
LogoClient can poll the labeller's pallet log at a chosen interval and write the results to disk — one timestamped file per unique SSCC — into a chosen log folder. This reproduces, by hand, the "what was printed" feedback that production software collects, and works against both PL3 and PL6.
Activity Log and Wire Trace
Two panes record what happens. The activity log is a readable, timestamped narrative of connects, transfers, commands and errors. The wire trace shows the raw bytes in both directions — transmitted and received — with control characters rendered as tokens, which is invaluable when diagnosing exactly what a labeller sent or expected. Both panes can be saved to a text file or cleared.
Configuration
The connection details and interface preferences are saved when you quit and restored on the next start, so the tool reopens ready to reconnect to the labeller you last used.
Using LogoClient and LogoRenderer Together
The two tools form a complete bench setup for label development with no Logopak hardware:
- In LogoRenderer, start the printer emulator on a port (default 8000).
- In LogoClient, choose PL3 (TCP), set the host to
127.0.0.1and the matching port, and connect. - Upload a layout, send field data, browse the emulated drives or poll the pallet log — and watch LogoRenderer render the result and log the traffic.
In this arrangement LogoClient stands in for the driving software so you can develop and test against the renderer, while LogoRenderer stands in for the printer so you have something to talk to. LogoClient can equally be pointed at a real Logopak labeller when one is available.
See Also
- LogoRenderer — the companion tool that renders labels and emulates a Logopak printer
- Middleware4j, LabelServer4j, AutoLab4j — production software that drives Logopak labellers
- SocketTest — a raw TCP/IP testing utility