Navigation

    • Register
    • Login
    • OpenHardware.io
    • Categories
    • Recent
    • Tags
    • Popular
    1. Home
    2. mcauser
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    mcauser

    @mcauser

    1
    Reputation
    2
    Posts
    189
    Profile views
    0
    Followers
    0
    Following
    Joined Last Online

    mcauser Follow

    Best posts made by mcauser

    • RE: IKEA UTRUSTA

      I wrote a MicroPython driver for the Ansluta one and can give you some details I learned along the way.

      The $20 Ansluta one-button remote uses a 2.4GHz TI CC2500 to transmit one of four 6 byte commands.
      https://www.ikea.com/au/en/catalog/products/90300773/

      I am using it to control 10W and 30W Ansluta transformers with Forbattra under-kitchen-cupboard LED panels.
      https://www.ikea.com/au/en/catalog/products/10320181/
      https://www.ikea.com/au/en/catalog/products/80300764/
      https://www.ikea.com/au/en/catalog/products/80316878/

      It seems the whole Ansluta range is using 2.4GHz CC2500 chips, while the Utrusta range was on 433MHz.

      Each time you press the remote's button, it cycles through 0%, 50%, 100%, 50%, 0% brightness.
      The inspiration for writing my own driver was so that I could go straight to 100% brightness, and use a microcontroller with PIR and timer to illuminate the panels.

      To pair, hold down the pair button on the transformer until it blinks.
      Then press and hold the remote button to send the pair command.
      After that, the transformer only listens to commands from the remote's unique 16-bit address.

      The remote's unique 16-bit address can't be changed.
      I sniffed the pair command from a few lights inside IKEA and can confirm each remote has a unique address.

      One remote can control multiple transformers, if you pair the remote with each.
      Each transformer can only listen to one 16-bit remote address.
      The transformers can also be chained.

      Instructions:

      • 0x01 set brightness to 0% (LEDs off)
      • 0x02 set brightness to 50%
      • 0x03 set brightness to 100%
      • 0xFF pair

      The SPI tx packet looks like this:

      • 0x7F enter CC2500 TX burst mode (sends each of these bytes without toggling CS pin)
      • 0x06 packet length
      • 0x55 begin ansluta command 1/2
      • 0x01 begin ansluta command 2/2
      • 0x66 remote unique address 1/2
      • 0x77 remote unique address 2/2
      • 0x01 instruction (see above)
      • 0xAA end ansluta command
      • 0xFF end of packet

      When you press the button on the remote, it sends the command 50 times to ensure the receiver is awake and receives it.
      Communication is unidirectional. Remote -> Transformer. There is no acknowledge or data sent back from the transformer.

      You can adjust the TX power of the CC2500 in code.
      Set register 0x3E to 0xFF.
      I am not sure what the original TX power level of the one-button remote is, but it works from at least 5m away.

      I made a breakout board for making a CC2500 module breadboard friendly, available on OSH Park for around $3.50 for 3x.
      https://oshpark.com/shared_projects/chUQvFmW

      posted in General Discussion
      mcauser
      mcauser

    Latest posts made by mcauser

    • RE: IKEA UTRUSTA

      This is the receiver inside the 10W Ansluta transformer:

      receiver

      The U1 G2231 chip is the MSP430G2221 microcontroller.
      http://www.ti.com/lit/ds/symlink/msp430g2231.pdf

      The U2 chip is the CC2500 transceiver.
      http://www.ti.com/lit/ds/symlink/cc2500.pdf

      The Q1 chip in the bottom corner controls the LED brightness.
      Fairchild FDD8880 30V N-channel MOSFET.
      https://datasheet.octopart.com/FDD8880-Fairchild-datasheet-480105.pdf

      posted in General Discussion
      mcauser
      mcauser
    • RE: IKEA UTRUSTA

      I wrote a MicroPython driver for the Ansluta one and can give you some details I learned along the way.

      The $20 Ansluta one-button remote uses a 2.4GHz TI CC2500 to transmit one of four 6 byte commands.
      https://www.ikea.com/au/en/catalog/products/90300773/

      I am using it to control 10W and 30W Ansluta transformers with Forbattra under-kitchen-cupboard LED panels.
      https://www.ikea.com/au/en/catalog/products/10320181/
      https://www.ikea.com/au/en/catalog/products/80300764/
      https://www.ikea.com/au/en/catalog/products/80316878/

      It seems the whole Ansluta range is using 2.4GHz CC2500 chips, while the Utrusta range was on 433MHz.

      Each time you press the remote's button, it cycles through 0%, 50%, 100%, 50%, 0% brightness.
      The inspiration for writing my own driver was so that I could go straight to 100% brightness, and use a microcontroller with PIR and timer to illuminate the panels.

      To pair, hold down the pair button on the transformer until it blinks.
      Then press and hold the remote button to send the pair command.
      After that, the transformer only listens to commands from the remote's unique 16-bit address.

      The remote's unique 16-bit address can't be changed.
      I sniffed the pair command from a few lights inside IKEA and can confirm each remote has a unique address.

      One remote can control multiple transformers, if you pair the remote with each.
      Each transformer can only listen to one 16-bit remote address.
      The transformers can also be chained.

      Instructions:

      • 0x01 set brightness to 0% (LEDs off)
      • 0x02 set brightness to 50%
      • 0x03 set brightness to 100%
      • 0xFF pair

      The SPI tx packet looks like this:

      • 0x7F enter CC2500 TX burst mode (sends each of these bytes without toggling CS pin)
      • 0x06 packet length
      • 0x55 begin ansluta command 1/2
      • 0x01 begin ansluta command 2/2
      • 0x66 remote unique address 1/2
      • 0x77 remote unique address 2/2
      • 0x01 instruction (see above)
      • 0xAA end ansluta command
      • 0xFF end of packet

      When you press the button on the remote, it sends the command 50 times to ensure the receiver is awake and receives it.
      Communication is unidirectional. Remote -> Transformer. There is no acknowledge or data sent back from the transformer.

      You can adjust the TX power of the CC2500 in code.
      Set register 0x3E to 0xFF.
      I am not sure what the original TX power level of the one-button remote is, but it works from at least 5m away.

      I made a breakout board for making a CC2500 module breadboard friendly, available on OSH Park for around $3.50 for 3x.
      https://oshpark.com/shared_projects/chUQvFmW

      posted in General Discussion
      mcauser
      mcauser