jSignage errors are the most technical category of digital signage troubleshooting. jSignage is SpinetiX's JavaScript/SVG content framework — it powers everything from simple playlists to complex data-driven dashboards. Most jSignage issues fall into four categories: layer rendering (things don't appear), data binding (values are wrong or missing), animations/transitions (movement is broken), and JavaScript errors (code exceptions in the console).
Common Errors and Fixes
Error: Layer Not Visible
Symptoms: Content added to the project but nothing appears on screen.
- Fix 1: Check layer dimensions — width and height must be greater than 0
- Fix 2: Check z-order — the layer may be behind an opaque layer
- Fix 3: Check timing — the layer may be outside its active time window
- Fix 4: Check visibility — CSS display/visibility may hide the element
Error: Data Feed Returns Empty
Symptoms: Data placeholders show raw variable names or are blank.
- Fix 1: Verify data feed URL is reachable from the player's network
- Fix 2: Check JSON path — field names are case-sensitive
- Fix 3: Use data callbacks — binding may evaluate before data loads
- Fix 4: Check CORS/proxy — the data endpoint may block cross-origin requests
Error: Transitions Not Working
Symptoms: Playlist items change abruptly without animation.
- Fix 1: Set transition duration — default is 0 (instant, no animation)
- Fix 2: Set transition type — crossfade, slide, or zoom
- Fix 3: Ensure both outgoing and incoming items are fully loaded
Error: JavaScript Exception in Console
Symptoms: Content loads but behaves incorrectly. Console shows errors.
- Fix 1: Check for undefined variables — null checks before accessing properties
- Fix 2: Check for timing issues — DOM elements may not exist when script runs
- Fix 3: Check for API changes — newer firmware may deprecate old jSignage methods
Debugging Tools
| Tool | Access | Best For |
|---|---|---|
| Player web console | Player IP > System > Logs | Runtime JavaScript errors |
| Elementi preview | F5 in Elementi desktop | Design-time testing |
| Browser developer tools | F12 in browser preview | CSS/DOM inspection |
| REST API logs | GET /api/v1/logs | Automated error monitoring |
Key Parameters
| Parameter | Value | Why It Matters |
|---|---|---|
| Framework | jSignage (jQuery + SVG) | SpinetiX-specific content engine |
| Rendering | SVG-based | Vector graphics, resolution-independent |
| Debug access | Player web interface logs | Runtime error visibility |
| Data bindings | Async with callbacks | Data may not be available immediately |
Common Mistakes
- Not using the console for debugging. Guessing at the problem wastes time. The player console tells you exactly what's wrong — file not found, JavaScript exception, data parse error. Always check logs first.
- Modifying jSignage core files. Editing the framework's own files (jSignage.js) causes breakage on firmware updates. Extend functionality through your own scripts, not by modifying the framework.
- Synchronous data access. Trying to use data feed values immediately after requesting them fails because data loads asynchronously. Use jSignage data event callbacks to access data after it loads.
- Testing only in Elementi preview. Elementi preview uses a browser engine that differs slightly from the player's SVG renderer. Always test on actual hardware before deployment to catch rendering differences.