• Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    DALI interface integration in python-dali

    Official EVOK API
    2
    9
    1632
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Martijn Hemeryck
      Martijn Hemeryck last edited by Martijn Hemeryck

      Hi,

      Update: tl;dr: I am really struggling to just getting started with the axon S605. I tried running a sort of "commissioning" with the unipidali implementation you propose, but I can't even read any voltage level responses from any of the outputs (simple voltage reader though, I don't have a scope). Is there any low-level documentation out there for me in order to be able to start programming against it?

      Just recently received by axon S605 for DALI interfacing and I'm currently looking into the scripts you did write for controlling it; https://git.unipi.technology/UniPi/unipi-python-lighting/tree/master/UnipiDali

      Being a python dev myself, I was thinking of tweaking it a bit; I did notice there was an open issue on the upstream python-dali repo related to integrating a unipi-based DALI interface in there: https://github.com/sde1000/python-dali/issues/48

      I was wondering how you feel about this. I haven't done any actual coding on it, but I suppose my solution would be based heavily on yours. Specifically note that they have an LGPLv3 license, so that could be an issue.

      1 Reply Last reply Reply Quote 0
      • Martijn Hemeryck
        Martijn Hemeryck last edited by Martijn Hemeryck

        Did some reading and some (real rough) coding already; https://github.com/sde1000/python-dali/compare/master...mhemeryck:unipi and did try to set up all the hardware.

        For now, I can't detect anything on the bus, so I'd like to check a few things:

        • hw setup: does it matter what kind of wiring I use to connect the DALI bus? I currently used a 8-wire SVV cable (0.8mm2 diameter)
        • wiring: I notice there are 4 "busses" on the axon S605, each having 2 connectors. I guess each of the 4 are for one set of 64 devices and that you have 2 connectors such that you can loop the signal through the bus. For my setup, with only one test LED driver, I guess it's OK to just use one of the connectors (no need to create a loop? Not even sure that's safe ...)

        Implementation; I'm currently just testing the "commissioning". As I understood it, this means a first phase in which the axon scans the bus, find devices and assigns short addresses.

        The particular code I'm using is (taken from your repo):

            bus_driver = SyncUnipiDALIDriver(bus=0)
            logger = logging.getLogger("UnipiDALIDriver")
            bus_driver.logger = logger
            bus_driver.debug = True
            light_bus = Bus(name="1_01", interface=bus_driver)
            light_bus.assign_short_addresses()
            print(light_bus._devices)
        

        i.e. I just check whether any devices were found. Does this make sense? Is the number of the buses 0-based?

        Another implementation note: my understanding is that this driver just does a translation between a modbus (TCP) server that's running on the device. Is it also possible to query the bus device directly, i.e. via a linux block device handle? (is that safe?). Also, how does the mapping modbus (TCP) / DALI driver work?

        Thanks in advance,

        Martin Kudláček 1 Reply Last reply Reply Quote 0
        • Martin Kudláček
          Martin Kudláček @Martijn Hemeryck last edited by

          Hi @martijn-hemeryck, just a quick question - do you have the DALI power supply connected to the bus? The topology of the DALI has to be like this:

          https://sc01.alicdn.com/kf/HTB1I_7_vmtYBeNjSspkq6zU8VXa3/200507234/HTB1I_7_vmtYBeNjSspkq6zU8VXa3.jpg

          Martin

          Martijn Hemeryck 1 Reply Last reply Reply Quote 0
          • Martijn Hemeryck
            Martijn Hemeryck @Martin Kudláček last edited by

            @martin-kudláček Thanks for your reply!

            I indeed do not have a separate DALI power supply, as I was under the impression that this would already have been provided by the Axon module. Do you have some suggestions of a proper DALI-bus specific power supply? Is a single power supply for all 4 busses OK, or does each bus need it own power supply?

            Anyways, glad to learn something's just off with the setup I have.

            Martin Kudláček 1 Reply Last reply Reply Quote 0
            • Martin Kudláček
              Martin Kudláček @Martijn Hemeryck last edited by Martin Kudláček

              @martijn-hemeryck Each channel has to have its own power supply because otherwise you would connect all the buses together.

              We don't have any trusted DALI PSUs, but Meanwell is my personal brand of choice. The only thng you need to select is the wattage and that can be deduced from the devices which you intend to connect to the bus. Some devices are powered only through the bus (switches,..), some devices have their own power supply connections (typically the more power hungry - lights and so on)

              Edit: The DALI PSU is a special power supply, which powers the transcivers in the DALI devices connected to the bus and the maximum current for the bus is 250mA. The reason, why we didn't integrate the PSU into the Axon S605 is the size and the convenience of having the external power supply. The power supply should be in the middle of the bus and when the PSU dies, it is easier to replace it instead of replacing the whole PLC.

              Martin

              Martin Kudláček Martijn Hemeryck 2 Replies Last reply Reply Quote 0
              • Martin Kudláček
                Martin Kudláček @Martin Kudláček last edited by

                @Martijn-Hemeryck See updated answer.

                1 Reply Last reply Reply Quote 0
                • Martijn Hemeryck
                  Martijn Hemeryck @Martin Kudláček last edited by

                  @martin-kudláček yeah, I guess it does indeed make sense to have a separate power supply from a network point of view. I'll try again as soon as I will be able to get one.

                  Apart from the hardware setup, do you have any further documentation on how to address the DALI busses? From what I understand from your python implementation, you just have a modbus server running which you use to update specific registers. I guess this should be good enough for now, but given I'd like to translate between MQTT events and the DALI bus, I would also be interested in learning how to directly interface with it.

                  1 Reply Last reply Reply Quote 0
                  • Martijn Hemeryck
                    Martijn Hemeryck last edited by

                    FYI: got my DALI bus driver in the mail today and did the full setup; managed to get everything up and running!

                    Will keep you posted on any further development wrt to the upstream python-dali library / any MQTT front-end I'd like to add.

                    Martin Kudláček 1 Reply Last reply Reply Quote 0
                    • Martin Kudláček
                      Martin Kudláček @Martijn Hemeryck last edited by

                      Hi @martijn-hemeryck, those are great news! I'm glad we were able to put it together, together:) I'm looking forward for your results.

                      Martin

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post