Flic for pi3..
-
These boards are new.. so hopefully this is the beginning of a vibrant community and I'm asking in the right place.
I found Flic because I was looking for a simple bluetooth button that I could use to drive home automation. Flic seemed to fit the bill, especially with the implementation of the Linux SDK in response to the request for that feature.
I have an RPi3 that is my test device, with Raspbian Jesse installed. So this is about as simple/straightforward as it gets - no weird bluetooth dongles to play with, nothing exotic like Arch - this should be the most straightforward works-out-of-the-box implementation possible.
The instructions are included at the github repository. They are easy enough to follow, although incomplete for RPi3 - there a few additional libraries needed in order for bluez to build properly.
The troubleshooting steps at the end were helpful and needed to get basic connectivity going. So that's all good.
However, in the end, I was not able to achieve connectivity following the instructions. I went to create an issue on github, only to find after hours of debugging that the issues I ran into were already known: there are known problems with versions of bluez newer than 5.37, although this isn't mentioned in the instructions at all. So anyone following the instructions given will fail.
I'm coming here to request that for Linux developers, an RPi3 has got to be the most basic out-of-the-box hardware that should just work. As in, it should be extremely well-tested that a new developer getting started following your instructions will have success. The barrier to entry here is extremely low - we can buy an RPi3 for about the same price as a single Flic button. So my request is to focus on the RPi3 as a "reference platform" and nail down that new developer experience to make it smooth.
Then if developers want to branch out and go crazy with C.H.I.P. devices or Arduino or some other ARM or x86 platform and you want to support those too, great. But this is my request to please at least make the RPi3 onboarding experience rock solid. I expect you'll have a lot more uptake and people singing your praises if you can tap into the millions of RPI users and make them happy from Day 1 using your product.
Thanks for listening.
-
@bashar_8383 If you get "Client EOF" in the flicd log, it simply means the client connecting to flicd has gracefully exited. I suggest you to ask the people working on home assistant for this kind of issue.
-
Hi
I have the flicd installed as an addon in home assistant https://github.com/pschmitt/home-assistant-addons.
I have one flic v2 button paired to Rpi 4 B and it works great.
The only issue that I'm having that after couple of days i get the message that "flicd client eof" in the log. the button would flash yellow then green or sometimes it flashes red but then when it is pressed again it will flash yellow then green.
Is there a way to keep the connection between the button and the home assistant alive ? is that a know bug and is there a fix for it ?Thank you.
-
@giannis-yt I would guess at the moment the Raspberry Pi Zero Wireless is one of the cheapest options.
-
As a non-coder I can't actually keep up with your conversation, but I would like to ask what's the cheapest board I could use to run the flic skd? I want to experiment a little during the summer and I will have some help so I'd like to know what I should order.
-
Would be great if somebody could implement this for use on a Synology NAS..
-
FLIC buttons can be integrated with home assistant thanks to the flic binary sensor component. For that you need the flic Linux SDK. There are already some topics on this forum about it.
Unfortunately, if you deploy this SDK on the same server as you deploy Home Assistant, the bluetooth device is then usable only for the flic buttons. Currently, there is now way to use Bluetooth for flic SDK AND for other purpose like bluetooth trackers.
Despite what you can read on some occasion, even if you have two USB chips (i.e. embedded and a USB dongle), it will conflict with bluetoothd. And currently, there is no possibility to implement flic with bluetoothd. This is the reason why it is for now also impossible to run any flicd implementation on home assistant if bluetoothd is running (i.e. if you use bluetooth_tracker).
As an alternative, I have deported flicd on a dedicated Raspberry PI 3 as a container.
The Raspberry PI 3 is deployed with Raspbian Stretch (raspbian-stretch-lite.zip)
You can then install docker. DO NOT INSTALL NOR RUN BLUEZ or any kind of instance of bluetoothd.
Once your RPI3 network is configured, you can get the docker on my repository by running the following command:
docker run -d --restart unless-stopped --cap-add NET_ADMIN --net=host --name="flicd" -v /home/autoadmin/flicd:/config superkikim/flicd-rpi3
The -d start the container in background
The --restart parameter ensure the container start at boot, unless it was stopped before reboot
The --cap-add NET_ADMIN allows the container run as a non-root user
The --net parameter indicate to bind the container to the host network
The --name parameter define the name of the container and can be whatever you want
The -v allows to save the flicd database to persistent storage, otherwise, the database will be deleted everytime the container is stoppedTo check the docker log, and ensure it's up and running, run the following command:
docker logs flicd
The result should be:
Available HCI devices found:
hci0Trying hci0 Successfully bound HCI socket Flic server is now up and running! Initialization of Bluetooth controller done!
You can then add the following in your home assistant configuration:
binary_sensor: - platform: flic host: <ip address>
where <ip address> is the IP address of your flicd RPI3.
Restart home assistant. You can then go back to the raspberry pi, and check the container log again. You should see a new line saying "Accepted new client"
Available HCI devices found: hci0 Trying hci0 Successfully bound HCI socket Flic server is now up and running! Initialization of Bluetooth controller done! Accepted new client
To pair a button for the first time, click and hold for at least 7 seconds.
If you're using home assistant, check your Home Assistant log to find the name of your new button. You should find a line saying "Found new button"
2018-01-01 06:28:01 INFO (Thread-2) [homeassistant.components.binary_sensor.flic] Found new button 80:e4:da:XX:XX:XX
The name of the button is flic_macaddress without column. i.e. flic_80e4daXXXXXX
You can then add the button in your automation. Below is an example of a series of action linked to one of my FLIC button. It turns on with single click the power switch where my three monitors and my port replicator are powered, and on double click, it switch them off:
- alias: 'Switch on Mac Desktop Zone' trigger: platform: event event_type: flic_click event_data: button_name: flic_80e4daXXXXXX click_type: single action: - service: switch.turn_on entity_id: switch.bureau_1 - service: switch.turn_on entity_id: switch.bureau_2 - service: switch.turn_on entity_id: switch.bureau_3 - service: switch.turn_on entity_id: switch.bureau_4 - alias: 'Turn off Mac monitors' trigger: platform: event event_type: flic_click event_data: button_name: flic_80e4da7XXXXXX click_type: double action: - service: switch.turn_off entity_id: switch.bureau_1 - service: switch.turn_off entity_id: switch.bureau_2 - service: switch.turn_off entity_id: switch.bureau_3 - service: switch.turn_off entity_id: switch.bureau_4
-
I bump this old topic to say that i can now use my first flic from the first kickstarter compaign with a rpi3.
I use node-red-contrib-flic-buttons and with this i can very easily interact with my domoticz installation.
It's very simple to use and it's work very good! -
I was thinking about how the newer Flic buttons allow for firmware updates. Since I'm assuming these would normally be done through the Android or iOS app, how would we handle these if we've got our buttons paired with a bunch of Raspberry Pis?
-
@Emil Hi, thanks you for your answer. So how does it works with the Linux SDK ? I suppose only "Single click" event comes from the button, isn't it ?
thanks you,
-
@hafager @aytekcan The Linux SDK project is ready to go with the Raspberry Pi 3. The repo on GitHub's been getting updates even this year and I submitted an issue I was having and got a response within an hour.
From my own experience testing it last night, it works with websockets using Node.js. There are a bunch of Python files in there, and I assume those are working too!
I was running Ubuntu Server 16.04 on my Raspberry Pi 3 until I found that it has issues with Bluetooth drivers. After flashing the latest Raspbian JESSIE Lite, I had no further issues. Bluez is not required with the newer SDK.
-
@aconrad2 Hi. You can use Flic Single just like any other Flic with the Linux SDK.
-
Hi everybody,
I'm a new user of Flic buttons.
I'm using a Rapsberry PI 3 with internal bluetooth controler for other bluetooth items (Xiaomi Mi Flora) and a dedicated USB Bluetooth controler for the Flic service, and a Node-Red flow. It works fine for my only one button
I'd like to use some other buttons but... do you know if the Single Flic can be use with the Linux SDK ? Can the action be selected as I want with the Node-Red flow like a standard Flic Button.
If I correctly understand the Single Flic button have only "Single Clic" event, not "Double clic" and hold on event.
Thanks for you answer,
Have a good day. -
Hi All,
Is there any updates on this project?
-
Hi,
Same as @alex, I am curious as to what state the flic - rpi environment is in today.
Is it easy to set up, or easy to work with using linux bluetooth api or abstractions of it through Python or similar? Is it possible at all without being online?
Coding skills is not an issue.Thanks!
-
Hi there,
Is there any update on the ability to connect flics to a raspberry pi.
it would open up a world of options for home automation.
hopefully with some good step-by-step guides for us with limited code skillsThanks
-
@Anshur said in Flic for pi3..:
@Emil Hi,
I've been trying to make some sort of flic-to-LIFX bridge on my RPi 3, but my very basic coding skills seem to be insufficient.....
So I was wondering if you were planning on porting a more beginner friendly flic app to Linux at any point in the future ?
Thanks in any case.
Hello,
Yes, in fact we are currently working on a stand-alone application for linux where a lot of the functionality will be ported over from the mobile apps (LIFX included). I can not comment on a release date yet, but it is definitely a priority for us, so expect some news about it in the (not to distance) future
/A
-
@Emil Hi,
I've been trying to make some sort of flic-to-LIFX bridge on my RPi 3, but my very basic coding skills seem to be insufficient.....
So I was wondering if you were planning on porting a more beginner friendly flic app to Linux at any point in the future ?
Thanks in any case.
-
Hi.
We have just released a new Linux SDK that should work great on RPi 3!
Check it out at https://github.com/50ButtonsEach/fliclib-linux-hci -
I would love if anybody would create a step by step tutorial for setting up flic on a raspberry pi 3.
I'm not much of a coder, but I did purchase de RP3 in roder to turn it into a flic HUB for my LIFX (as the iOS app seems to have trouble reconnecting without relaunching the app after being away).
Anyway, keep up the good work : )