Helvar Router

Here is the same command using Packet sender:
As you can see #3 is the packet i send to the Dali router, #2,1 is the response from the router.

the problem is the missing >

did you try to escape it with \ ?

I’ve tried this:

Produces an error:
Switch Dali “Dali” {tcp=">[ON:192.168.1.230:50000:’\>V:2,C:11,G:1,K:1,B:1,S:1,F:900#’]"}
Switch Dali “Dali” {tcp=">[ON:192.168.1.230:50000:\’>V:2,C:11,G:1,K:1,B:1,S:1,F:900#’]"}

No error but it does not work. I see in Wireshark that the message is wrong:
Switch Dali “Dali” {tcp=">[ON:192.168.1.230:50000:’\>V:2,C:11,G:1,K:1,B:1,S:1,F:900#’]"}
Switch Dali “Dali” {tcp=">[ON:192.168.1.230:50000:\’>V:2,C:11,G:1,K:1,B:1,S:1,F:900#’]"}

try with double escape (or even triple)

Switch Dali "Dali" {tcp=">[ON:192.168.1.230:50000:'\\>V:2,C:11,G:1,K:1,B:1,S:1,F:900#']"}
Switch Dali "Dali" {tcp=">[ON:192.168.1.230:50000:'\\\>V:2,C:11,G:1,K:1,B:1,S:1,F:900#']"}

what is the diff between the first 2 lines and the bottom 2 lines in your post above?

Ps: When posting configs, use Code fences

I see the forums does not like the the fore slashes :stuck_out_tongue:

first line is there are 1 fore slash. Second line is 2 fore slashes.

first two lines have the quote before the slash. Second have the quote after the slash.

Produces an error:
Switch Dali "Dali" {tcp=">[ON:192.168.1.230:50000:'\>V:2,C:11,G:1,K:1,B:1,S:1,F:900#']"}
Switch Dali "Dali" {tcp=">[ON:192.168.1.230:50000:\'>V:2,C:11,G:1,K:1,B:1,S:1,F:900#']"}

No error but it does not work. I see in Wireshark that the message is wrong:
Switch Dali "Dali" {tcp=">[ON:192.168.1.230:50000:'\\>V:2,C:11,G:1,K:1,B:1,S:1,F:900#']"}
Switch Dali "Dali" {tcp=">[ON:192.168.1.230:50000:\\'>V:2,C:11,G:1,K:1,B:1,S:1,F:900#']"}

time for a triple escape ! :slight_smile:

Careful with the position of the single quotes (')

Why do you have the single quote outside of the ]? this gives me a error.

Switch Dali "Dali" {tcp=">[ON:192.168.1.230:50000:'\\>V:2,C:11,G:1,K:1,B:1,S:1,F:900#]'"}

By the way triple slashes does not work :stuck_out_tongue: the only way i get it to work is where it produses the parse input error :stuck_out_tongue:

typo… I edited the post above :slight_smile:

ok… .let’s try another trick:

Switch Dali "Dali" {tcp=">[ON:192.168.1.230:50000:'MAP(ASCII.map)'"}

install MAP transformation and use: /etc/openhab2/transform/ASCII.map

ON=>V:2,C:11,G:1,K:1,B:1,S:1,F:900#

play with escape chars :slight_smile:

Ok, I got it to work.
Had to escape the : as well as the >

Sitemap:

		Switch item=Dali1 label="Dali 100%" mappings=[ON="100%"]
		Switch item=Dali2 label="Dali 50%" mappings=[ON="50%"]
		Switch item=Dali3 label="Dali 0%" mappings=[OFF="0%"]

Items:

Switch Dali1 "Dali 100%"     {tcp=">[ON:192.168.1.230:50000:'MAP(Dali1.map)']"}
Switch Dali2 "Dali 50%"      {tcp=">[ON:192.168.1.230:50000:'MAP(Dali2.map)']"}
Switch Dali3 "Dali 0%"       {tcp=">[OFF:192.168.1.230:50000:'MAP(Dali3.map)']"}

Dali1.map

ON=\>V\:2,C\:11,G\:1,K\:1,B\:1,S\:1,F\:900#
\>V\:2,C\:11,G\:1,B\:1,S\:1,F\:900#=ON
\>V\:2,C\:11,G\:1,B\:1,S\:3,F\:900#=ON
\>V\:2,C\:11,G\:1,B\:1,S\:16,F\:900#=OFF

Dali2.map

ON=\>V\:2,C\:11,G\:1,K\:1,B\:1,S\:3,F\:900#
\>V\:2,C\:11,G\:1,B\:1,S\:1,F\:900#=ON
\>V\:2,C\:11,G\:1,B\:1,S\:3,F\:900#=ON
\>V\:2,C\:11,G\:1,B\:1,S\:16,F\:900#=OFF

Dali3.map

OFF=\>V\:2,C\:11,G\:1,K\:1,B\:1,S\:16,F\:900#
\>V\:2,C\:11,G\:1,B\:1,S\:1,F\:900#=ON
\>V\:2,C\:11,G\:1,B\:1,S\:3,F\:900#=ON
\>V\:2,C\:11,G\:1,B\:1,S\:16,F\:900#=OFF

good job dude!

it’s complex but it works :slight_smile:

Now for the next challenge: use a Dimmer Item Type and try to find a way to send a variable mapped command to set dynamically from 0% to 100% the light at the DALI endpoint :slight_smile:

By the way: Since you are not collecting the status from the DALI endpoint (not < incoming tcp), you don’t need the reverse maps (from … to ON etc)

Tried to get the dimmer to work with no luck :stuck_out_tongue:
I am having trouble with the binding only accepting ON OFF in the command parameter. If you use anything else it will return an error.
And you need to pass the dimmer value to the string that you are sending.
L:60 is the percentage 0-100% for the light value you wish to set. Here it is set to 60%

>V:1,C:13,G:17,L:60,F:9000#

Btw, you need to have the reverse maps or else it will produce the errors again. Here i removed the reverse maps from Dali1.map

15:01:57.470 [WARN ] [orm.AbstractFileTransformationService] - Could not transform '>V:2,C:11,G:1,B:1,S:1,F:900#' with the file 'Dali1.map' : Target value not found in map for '>V:2,C:11,G:1,B:1,S:1,F:900#'
15:01:57.473 [WARN ] [ding.tcp.protocol.internal.TCPBinding] - Cannot parse input >V:2,C:11,G:1,B:1,S:1,F:900# to match command 0 on item Dali_full
1 Like

Hey, i’m working with these controllers every day and would like to create a binding for them, there are tons more commands with you could use as to discover all of the groups/devices that excist on the controllers and also get feedback from the current states of each dali device individually. I’m not familiar with the openhab ecosystem so if anybody would care to help I would be willing to help out. I’ve got most of the discovery stuff ready in a node.js app, but as said I’dont really know how to transform this into a binding.

grts ,
Kenny

1 Like

Now you 2 guys need a binding developer who uses these DALI Routers to join your team and you have the right mix :slight_smile:

You can always start by reading https://www.openhab.org/docs/developer/contributing/contributing.html & checking the forum @ https://www.eclipse.org/forums/index.php?t=thread&frm_id=271 but it’s not easy… I know

I’m slowly building out a Helvar binding here: https://github.com/tomplayford/openhab-addons/tree/helvarBundle

It’s very, very much a work in progress - but I’ll need some help testing soonish, I’ve only got a very limited set of devices. Let me know if you’re interested in helping out.

Cool. Its been a long time since this was on my mind :stuck_out_tongue: I have a couple of spot lights i could connect. It has been a long time since i had openhab installed. Just post here and i will try to make the time :slight_smile:

Hi. I can help you

Thanks @Ole, @vasilescualexe.

Getting there now - a few more evenings and I’ll have something worth sharing.

Features:

  • Dimmer support
  • DMX & DALI dimmer device auto discovery
  • Group support with scene selection and device level updates
  • Receives group scene changes from router

Todo / limitations

  • Input device support (I have no sensors or buttons) and auto discovery.
  • Full device status support (including power)
  • Colour support (I have no RGB dimmers or devices)
  • Multiple router support (I only have one)
  • Multiple cluster support (as above)

I have combined light / motion sensors and module 4 in helvar, but I have not had time to set them in OH 2.5., to date I am using router 910 with 11 groups of lights under OH2.5. If I can help you, give me a whistle