Version: 1.0.1 (2017.11.22)
This solution bases on two VDs. One is Controller VD, and shall be installed once at HC2. Second is Client VD, shall be installed once per each iEAST device in the network.
- All iEAST devices (StreamAMP AMP-i50B, AM160, StreamPRO M30, SoundStream M20 and also AudioCast M5) with firmware version v3.6.4xxx or newer
- Latest list of iEAST devices at iEASTAudio.com
Functions (Controller VD):
- Monitors and shows connection state of all available devices
- Keep networked configuration of all devices and share it with Client VDs
- Network configuration available for developers (json)
- Global Play/Pause and Mute On/Off buttons
- Reports wifi signal strength
- Reports master-slave connections (master index is displayed in brackets)
- Multiroom configuration with sample code for connecting one device to a master, or all devices to one master. Button to cancel all master-slave connections
- VD Start / Stop option (to stop and activate network traffic when necessary – f.ex. off when home is empty)
- Option to Scan network, find and register all connected iEAST devices, option to Clear configuration.
- Option to force manual configuration of connected devices.
- IP-independent settings and device management (based on unique SSID names of devices)
Installation and initial configuration (Controller VD):
- Controller device have five “slots” (labels) for displaying states of 5 connected iEAST devices. Number of slots does not limit number of controlled devices, it is used only for showing states to the user. When more slots are required, can be added with proper name (Device6, Device7 etc). User can also remove slots when has less than 5 devices.
- For multiroom configurations two sample codes are prepared at buttons 🏠1 and 🏠2. To make it working user has to set proper SSID names of devices at the beginning of LUA code. One button is to connect to devices into master-slave relation. Second is to connect all devices to one master. Button ⚡ disconnects all the existing slaves, and switch all the devices into standalone mode.
- Manual configuration of devices can be entered into Scan (ButtonRescan) code (setManualConfiguration() function, that is not called by default). Manual configuration is required when devices cannot be scanned automatically due to some reasons.
- Icon numbers for 2 states: active/inactive VD, shall be set in variables in the beginning of mainloop.
Functions (Client VD):
- One Client VD per one iEAST device, easy setup via SSID name (no IP configuration/setting required)
- Connects to iEAST Controller to obtain networked configuration of device
- Shows playback status and fanart
- Playback control (Play/Pause/Stop/Next/Prev)
- Shows and allow to change playback time and position
- Volume and mute control (also for connected slaves)
- Volume and mute control when device plays as a slave
- Source selector (USB/BT/AUX)
- Play presets (links to iRadio, Spotify, Tidal playlist etc, defined via mobile app)
- Plays iRadio or other stream by direct URL
- Repeat modes
- Sleep timer settings and status
- Quick solo mode switch (disconnecting all slaves)
- Button to disconnect from the master
- Switch 🎨 for different sizes of fanart graphics and for hiding it when not supported (ex. by Fibaro mobile application)
- Plays at info, with list of connected slaves
- VD deactivation option (VD stops connecting Controller and stops all network traffic)
Installation and initial configuration (Client VD):
iEAST device SSID must be entered into IP Address field (can be found on the list of devices scanned by iEAST Controller, SSID can be also checked and updated by iEAST mobile application)
- ID of iEAST Controller virtual device must be entered into TCP Port field.
- Buttons ♫ 1-4 contain sample code for internet radio stations with URL from shoutcast.com, can be easily updated and/or multiplicated.
- Icon numbers for 5 states: offline, online/idle, playing, slave, inactive-VD, can be set in variables in the beginning of mainloop.
- s_jPlayerState structure available in mainloop, updated at every loop. Contains full information about state of device. Structure can be stored in global variable, or in a label at VD, for access from other LUA code (see end for updateUI() function)
- iEAST devices obtain IP addresses from DHCP server, it is recommended to setup router/DHCP server to fix IP assignment for iEAST device MAC address. Otherwise Rescan function at Controller VD will have to be called on each change.
- When device is connected to a master (synchronized with other iEAST device), Client VD can only control its volume (show, change, set mute on and off), and disconnect from the master. Other buttons and options are not active.
- Controller VD cannot find iEAST devices active as slaves and not connected via LAN (slave devices are not connected to local Wifi network) It is recommended to cancel all slave connections before rescan.
- Older iEAST devices (firmware v3.6.3xxx or older) can work partly, some functions may not be available (as for example sleep timer)
ZIP file for download:
- iEast_Controller.vfib file with Virtual Device, to import to HC2
- iEast_Client.vfib file with Virtual Device, to import to HC2
- 4 PNG icons (can be used for states: offline, idle, playback, inactive VD)
- PNG screenshots