B4A Library Limitless LED Library

LimitlessLED
Comment: Library for sending commands to Limitless LED bulbs through the optional WiFi bridge.

See http://www.limitlessled.com for more detail.

The bulbs are sold under other brands/names in other regions (Limitless LED, Dekolight, iLight, applight, applamp, LEDme, EasyBulb, MiLight)

NOTE: The library only contains commands for the Dual White LED bulbs at this point in time.
Author: Trevor Hart
Version: 1.05
  • LimitlessBridgeCommands
    Fields:
    • AllFull As Int
      Turn on fullmode for all groups
    • AllNight As Int
      Turn on nightmode for all groups
    • AllOff As Int
      Turn off all groups
    • AllOn As Int
      Turn on all groups
    • BrightnessDown As Int
      Decrease brightness for the selected group
    • BrightnessUp As Int
      Increase brightness for the selected group
    • ColorTempDown As Int
      Decrease colour temperature (towards warm white) for the selected group
    • ColorTempUp As Int
      Increase colour temperature (towards cool white)for the selected group
    • Group1Full As Int
      Turn on fullmode for group 1
    • Group1Night As Int
      Turn on nightmode for group 1
    • Group1Off As Int
      Turn off group 1
    • Group1On As Int
      Turn on group 1
    • Group2Full As Int
      Turn on fullmode for group 2
    • Group2Night As Int
      Turn on nightmode for group 2
    • Group2Off As Int
      Turn off group 2
    • Group2On As Int
      Turn on group 2
    • Group3Full As Int
      Turn on fullmode for group 3
    • Group3Night As Int
      Turn on nightmode for group 3
    • Group3Off As Int
      Turn off group 3
    • Group3On As Int
      Turn on group 3
    • Group4Full As Int
      Turn on fullmode for group 4
    • Group4Night As Int
      Turn on nightmode for group 4
    • Group4Off As Int
      Turn off group 4
    • Group4On As Int
      Turn on group 4
    • RGBAllOff As Int
      RGB Only - Turn off all RGB lights
    • RGBAllOn As Int
      RGB Only - Turn on all RGB lights
    • RGBBrightnessDown As Int
      RGB Only - Decrease brightness for all RGB lights
    • RGBBrightnessUp As Int
      RGB Only - Increase brightness for all RGB lights
    • RGBColour_Aqua As Int
    • RGBColour_BabyBlue As Int
    • RGBColour_Fusia As Int
    • RGBColour_Green As Int
    • RGBColour_Lavendar As Int
    • RGBColour_Lilac As Int
    • RGBColour_LimeGreen As Int
    • RGBColour_Mint As Int
    • RGBColour_Orange As Int
    • RGBColour_Pink As Int
    • RGBColour_Red As Int
    • RGBColour_RoyalBlue As Int
    • RGBColour_SeafoamGreen As Int
    • RGBColour_Violet As Int
    • RGBColour_Yellow As Int
    • RGBColour_YellowOrange As Int
    • RGBDiscoLast As Int
      RGB Only - Previous disco mode for all RGB lights
    • RGBDiscoNext As Int
      RGB Only - Next disco mode for all RGB lights
    • RGBSpeedDown As Int
      RGB Only - Decrease disco speed for all RGB lights
    • RGBSpeedUp As Int
      RGB Only - Increase disco speed for all RGB lights
    • RGBWAllOff As Int
      RGBW Only - Turn off all RGBW lights
    • RGBWAllOn As Int
      RGBW Only - Turn on all RGBW lights
    • RGBWBrightness As Int
    • RGBWColour As Int
    • RGBWDiscoMode As Int
    • RGBWDiscoModeFaster As Int
    • RGBWDiscoModeSlower As Int
    • RGBWGroup1Night As Int
    • RGBWGroup1Off As Int
      Turn off group 1
    • RGBWGroup1On As Int
      Turn on group 1
    • RGBWGroup1White As Int
    • RGBWGroup2Night As Int
    • RGBWGroup2Off As Int
      Turn off group 2
    • RGBWGroup2On As Int
      Turn on group 2
    • RGBWGroup2White As Int
    • RGBWGroup3Night As Int
    • RGBWGroup3Off As Int
      Turn off group 3
    • RGBWGroup3On As Int
      Turn on group 3
    • RGBWGroup3White As Int
    • RGBWGroup4Night As Int
    • RGBWGroup4Off As Int
      Turn off group 4
    • RGBWGroup4On As Int
      Turn on group 4
    • RGBWGroup4White As Int
    • RGBWNight As Int
    • RGBWWhite As Int
  • LimitlessBridgeFinder
    Methods:
    • Close
      Close the connection to the UDP socket.
    • GetBridges As Boolean
      Search for bridges on the network. Calls EventName_Result when complete.
      Returns False if there isnt a valid broadcast IP address on the network.
    • GetBroadcastIP As String
      Get the actual broadcast IP address from the network.
      Returns an empty string if no broadcast IP available.
    • Initialize (host As String, port As Int, EventName As String)
      Initializes the UDP socket for sending the broadcast.
    • IsConnected As Boolean
      Returns a value indicating if the UDP socket is connected or not.
    • IsInitialized As Boolean
      Returns a value indicating if the UDP socket is initialized
    Permissions:
    • android.permission.ACCESS_WIFI_STATE
    • android.permission.INTERNET
  • LimitlessWiFiBridge
    Methods:
    • BrightnessFadeDown (group As Int)
      Fade the brightness of the group down.
    • BrightnessFadeUp (group As Int)
      Fade the brightness of the group up.
    • Close
      Close the connection to the Wifi Bridge.
    • ColorFadeCool
      Fade the colour of the selected group to cool white.
    • ColorFadeWarm
      Fade the colour of the selected group to warm white.
    • DWFull (group As Int)
    • DWNight (group As Int)
    • DWOff (group As Int)
    • DWOn (group As Int)
    • GetBroadcastIP As String
      Get the actual broadcast IP address from the network.
    • GetBroadcastIP2 As String
    • GetMyWifiIP As String
      Returns the IP address of the wifi network. Returns "127.0.0.1" (localhost) if not connected.
    • Initialize (host As String, port As Int)
      Initializes the WiFi Bridge for sending commands
      - host = WiFi Bridge IP address eg 10.1.1.1
      - port = WiFi Bridge port number eg 8899
    • IsConnected As Boolean
      Returns a value indicating if the WiFi Bridge is connected or not.
    • IsInitialized As Boolean
      Returns a value indicating if the WiFi Bridge initialized
    • Ping (host As String, count As Int) As String
      Pings the WiFi bridge using the Android Ping command.
      Ping command is not available on all devices. Returns "Error" if unable to run Ping command.
    • Ping2 (host As String, port As Int) As String
      Pings the WiFi bridge using the bridge control commandset.
      Returns MAC address of the WiFi bridge is successful or empty string unsuccessful.
    • RGBColour (colour As Int)
    • RGBWBrightnessFadeDown (group As Int)
    • RGBWBrightnessFadeUp (group As Int)
      Fade the brightness of the group up.
    • RGBWOff (group As Int)
    • RGBWOn (group As Int)
    • RGBWSetBrightness (group As Int, brightness As Int)
    • RGBWSetDiscoMode
    • RGBWSetDiscoModeFaster
    • RGBWSetDiscoModeSlower
    • RGBWSetNight (group As Int)
    • RGBWSetWhite (group As Int)
    • Send (message As Int)
      Sends a message to the WiFi Bridge (1 byte)
    • Send2 (message1 As Int, message2 As Int)
      Sends a message to the WiFi Bridge (2 bytes)
    • avaiableSdcard As Boolean
    Permissions:
    • android.permission.ACCESS_WIFI_STATE
    • android.permission.INTERNET
 

Attachments

  • LimitlessLEDSample.zip
    7.8 KB · Views: 274
  • LimitlessLED.zip
    37.1 KB · Views: 219
Last edited:

susu

Well-Known Member
Licensed User
Longtime User
Do I need WiFi Receiver Bridge 4.0 to control the bulb?
 

tchart

Well-Known Member
Licensed User
Longtime User
Susu, yes you need the WiFi Receiver Bridge 4.0 to control the bulbs using your smartphone. The bulbs are actually controlled using 2.4Ghz RF. You can use a handheld RF remote control or use the WiFi Receiver Bridge to send commands to the bulbs (from other devices eg PC, smartphone etc). The WiFi Receiver Bridge accepts commands via UDP and then issues the relevant RF signals to the bulbs.
 
Last edited:

DonManfred

Expert
Licensed User
Longtime User
May i ask for the java-source of this library to extend it?
I buyed a RGB-Led now...

Thanx in Advance!
 

bluedude

Well-Known Member
Licensed User
Longtime User
Hi cubetennis, I think it works already because this is also called MiLight. BTW, I think you need a WIFI controller too??
 

walterf25

Expert
Licensed User
Longtime User
Limitless LED Library

Comment:
Library for sending commands to Limitless LED bulbs through the optional WiFi bridge.

See http://www.limitlessled.com for more detail.

The bulbs are sold under other brands/names in other regions (Limitless LED, Dekolight, iLight, applight, applamp, LEDme, EasyBulb, MiLight)

NOTE: The library only contains commands for the Dual White LED bulbs at this point in time.

Author: Trevor Hart
Version: 1
  • LimitlessBridgeCommands
    Fields:
    • AllFull As Int
      Turn on fullmode for all groups
    • AllNight As Int
      Turn on nightmode for all groups
    • AllOff As Int
      Turn ofall groups
    • AllOn As Int
      Turn on all groups
    • BrightnessDown As Int
      Decrease brightness for the selected group
    • BrightnessUp As Int
      Increase brightness for the selected group
    • ColorTempDown As Int
      Decrease colour temperature (towards warm white) for the selected group
    • ColorTempUp As Int
      Increase colour temperature (towards cool white)for the selected group
    • Group1Full As Int
      Turn on fullmode for group 1
    • Group1Night As Int
      Turn on nightmode for group 1
    • Group1Off As Int
      Turn off group 1
    • Group1On As Int
      Turn on group 1
    • Group2Full As Int
      Turn on fullmode for group 2
    • Group2Night As Int
      Turn on nightmode for group 2
    • Group2Off As Int
      Turn off group 2
    • Group2On As Int
      Turn on group 2
    • Group3Full As Int
      Turn on fullmode for group 3
    • Group3Night As Int
      Turn on nightmode for group 3
    • Group3Off As Int
      Turn off group 3
    • Group3On As Int
      Turn on group 3
    • Group4Full As Int
      Turn on fullmode for group 4
    • Group4Night As Int
      Turn on nightmode for group 4
    • Group4Off As Int
      Turn off group 4
    • Group4On As Int
      Turn on group 4
  • LimitlessWiFiBridge
    Methods:
    • BrightnessFadeDown
      Fade the brightness of the selected group down.
    • BrightnessFadeUp
      Fade the brightness of the selected group up.
    • Close
      Close the connection to the Wifi Bridge.
    • ColorFadeCool
      Fade the colour of the selected group to cool white.
    • ColorFadeWarm
      Fade the colour of the selected group to warm white.
    • Initialize (host As String, port As Int)
      Initializes the WiFi Bridge for sending commands
      - host = WiFi Bridge IP address eg 10.1.1.1
      - port = WiFi Bridge port number eg 8899
    • IsInitialized As Boolean
      Returns a value indicating if the WiFi Bridge initialized
    • Send (message As Int)
      Sends a message to the WiFi Bridge
    Permissions:
    • android.permission.INTERNET
Dang it, i was just about to write a library for this, you beat me to it, Great job and Thanks

:D:D:D:D:D

Walter
 

tchart

Well-Known Member
Licensed User
Longtime User
Uploaded the latest version 1.05. Sorry its taken so long. Lots of changes.
 

tchart

Well-Known Member
Licensed User
Longtime User
@Trevor,
I have this bulb http://iwy-light.de/gb/iwy-starter-sets/iwy-color-single-set-9w.html
and use Magic Color v2 App to control it.
Don't need a Wifi Bridge. The WLAN is inside the bulb.
It's possible to make a library for that too ?

cubetennis, it works with the older IWY lights but not the new "IWY Master" ones. They have built in Wifi and use a different command set. I don't believe the IWY Master lights are made by the same manufacturer as they are not available through Limitless LED.
 

cubetennis

Member
Licensed User
Longtime User
@tchart : thank you for reply

I googled and found out following command set to control the IWY Master lights:

Protocol : TCP, Port 5577
Light ON = 0xCC 0x23 0x33
Light OFF = 0xCC 0x24 0x33
Light control = 0x56 RR GG BB XX MM 0xAA
RR GG BB = 0xFF 0x00 0x00 => Red
0x00 0xFF 0x00 => Green
0x00 0x00 0xFF => Blue
XX = 0x00 => Min. Brightness
0xFF => Max. Brightness
MM = 0xF0 => ColorMode
0x0F => WhiteMode

@bluedude : you don't need a WIFI controller, it is inside the bulb
 
Top