Repository navigation
v0.3.0: Pure-Java Image Engine, Cloud Gallery & Watchfaces, Weather, Hardware Tools
What's New in v0.3.0
🎨 Pure-Java Image Engine (Zero AWT / java.desktop dependencies)
- AWT Independence: Replaced all
java.desktop/AWT image dependencies with a custom, lightweightPixooImageARGB buffer supporting bilinear scaling, letterboxing, and cropping. - Built-in Pure-Java Decoders:
- PNG: Decoded via lightweight
pngj. - Animated GIF: Built-in LZW decoder with full support for local/global color tables, transparent index handling, disposal methods, and variable frame delays.
- BMP: Native decoder for 24-bit and 32-bit uncompressed bitmaps.
- PNG: Decoded via lightweight
- Pure-Java GIF89a Multi-Frame Encoder (
GifEncoder): Built-in multi-frame GIF encoder with color quantization, adaptive palettes, and LZW compression (verified with 100% roundtrip accuracy). - Native Image on Apple Silicon: Completely fixes GraalVM native binary compilation on macOS (
macos-14/ arm64) by eliminatinglibawt/libawt_lwawtlibrary links.
🖼️ Enhanced Image & GIF Options (--crop and --scale-mode)
- Added
-c, --cropoption to crop images to 64x64 or custom bounds. - Added
-s, --scale-mode <fit|stretch>option to select between aspect-ratio preserving letterboxing (fit) or matrix-filling stretch (stretch). - Fast path in
PixooImage.resizeAndFitfor native 64x64 inputs to avoid unnecessary resampling.
🌐 Client-Side Remote GIF Streaming
- Remote GIFs (
pixoo-cli gif https://...) are now downloaded, decoded, scaled, and streamed frame-by-frame client-side viaDraw/SendHttpGif. - Eliminates ESP32 memory exhaustion and device reboots when fetching large or non-optimized GIFs over HTTP.
☁️ Divoom Cloud Gallery, Artist Profiles & Watch Faces
- Community Gallery Search: Search and browse animations with sorting options (
pixoo-cli cloud search). - Watch Face Store: Browse community clock dials and watch faces (
pixoo-cli cloud clock-faces). - Artist Profiles: Query public creations and profile statistics (
pixoo-cli cloud artist). - Strict 64x64 Filtering: Automatically filters cloud queries to 64x64 pixel matrices to prevent matrix distortion.
- Cloud Timeout: Increased HTTP client timeout to 60s for improved stability on slower connections.
🧩 Divoom Binary Asset Decoder (.bin)
- Added
DivoomAssetDecodercapable of unpacking Divoom's proprietary binary animations (macroblocks, compressed palette tables) intoPixooImageframes and standard GIFs.
⏱️ Expanded Hardware Tools Engine
- Sleep Timer: Schedule automatic display shutdown from 1 to 120 minutes (
pixoo-cli tool sleep-timer). - Pomodoro Timer: Configure focus and rest cycles (
pixoo-cli tool pomodoro). - Multi-Alarm Clock: Set, inspect, enable, and delete up to 8 independent hardware alarms with weekday recurrence and alarm tone styles (
pixoo-cli tool alarm).
🌤️ Zero-Auth Divoom Weather Client
- Added
DivoomWeatherClientandpixoo-cli weatherto retrieve real-time weather conditions and forecasts via latitude and longitude without requiring API keys.
📚 Documentation & Protocol Specifications
- Cleaned up
SPECIFICATION.mdinto a strictly language-agnostic HTTP protocol reference for Pixoo 64. - Updated
README.md,RECIPES.md, and thepixoo64agent skill. - Reflected all new records and CLI models in GraalVM
reflect-config.json.
📦 Pre-compiled Native Binaries
Instantaneous startup (<5ms) without requiring a JVM:
- macOS (Apple Silicon / aarch64):
pixoo-cli-macos-aarch64.zip - Linux (x86_64):
pixoo-cli-linux-amd64.zip - Windows (x86_64):
pixoo-cli-windows-amd64.zip