HowTo - Use SDK Drivers with RasberryPi
HowTo - Use SDK Drivers with RasberryPi
First I want that you know the following:
Firstly I want to write a guide how to setup and use the RasperryPi as an SDK Server, but then I found an guide witch provides all needed Information and this one is written almost 100% for our use. Therefor I only provide an Link to the Guide and mention what needs to be changed for our Needs:
If you follow this guide, you only need to add / change the following:
1. Under prepare Remote Desktop you first need to deinstall the RealVNC from Raspberry, therefor type the following into an Terminal window and reboot the Rasperry afterwards:
Sudo apt-get purge realvnc-vnc-server
2. At the Install Node.js Step use the following to install Version 6:
Curl –sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
If you have setup everything correctly, you can reboot the Raspery to activate everything and then open a new Terminal and type the following to implement the NEEO-SDK and the examples:
npm install git+https://github.com/NEEOInc/neeo-sdk.git
2. NEEO-SDK Examples
npm install git+https://github.com/NEEOInc/neeo-sdk-examples.git
You now should see the NEEO SDK and the Examples under
If you like to install a SDK Driver repeat the steps above to install them as example here a provision to install my Enigma2 Driver
npm install git+https://github.com/carp3-noctem/neeo-driver-enigma2.git
After Installation you need to edit the Config in most Dirvers, Coders should provide Infos how to do it on their GitHub Pages about the Driver. For mine you need to edit the controller.js and change the
‘$$LOCAL-IP’ to the IP Adress of your Enigma2 Box, therefor just browse to the folder
and open the controller.js file in an editor (on the Rasperry double click and select open) then change the $$LOCAL-IP to an ip-adress (e.g. 192.168.1.30 ) and save the file.
Then we need a Terminal and Select the node_modules folder, therefor type the following:
enter now brings the Terminal into this folder, then you can start a driver by just typing “node” infront of every Driver Folder (as example my enigma2 driver):
You now should see the following:
This means the SDK Driver is ready to be discovered by NEEO, then you can add the Device with the NEEO App.
Actually the following Issues can occur:
- Using more then one driver, need the change of the Port in the Driver itself
- After restart of the Brain, the SDK Driver needs to be restarted
- Communication times can sometimes be stretched, especially when using WiFi for Brain, RaspberryPi and the Equipment you want to control, therefor I recommend to hardwire everything!
If you have any Questions, do not hesitate to ask, if you willed, you can mention me and I receive an Mail and provide feedback as soon as possible.
Hope this Guide helps everybody to setup a SDK-Driver until NEEO provide a “on the Brain” Solution.
Thanks for your detailed how-to. I‘ll try to implement this on my existing RPi. But I do have one more question to clarify things. My existing RPi 3 now is running Homebridge, manually installed and configured and therefore quite stable. Can I just integrate this driver for NEEO without crashing my exisiting Homebridge config ? As far as I know Homebridge also uses Node.js and I am not that kind of a Linux Crack that I can estimate if this installation would have any impact on my other setup.
Andreas Maier this question can't be answered by myself. I only can say, you can make a image out of your SD-Card and the current running version. Then you can try to install, if it works, it will be fine, if not, you can go back via the saved Image.
OR, maybe Patrick can point someone that maybe have more Node.js and Linux knowledge out of the Team.
Remko The Version 6 is a require from the NEEO-SDK. You can find this Info over on the SDK-Github page under Prerequisite!
I now managed to set up a new homebridge on my Pi. I then installed the NEEO SDK and the examples and was able to start the server on my Pi. It comes up with exactly the message in the manual. „Server running, please use the NEEO App to search for Enigma2“. But the NEEO App does not find any Vu+ entering Enigma2. There are a list of Philips and Magnavox devices showing up, but no Cable reveiver.
Thanks for your tutorial..i'm a absolutely noob to this. My problem is, that the server won't start..
pi@raspberrypi:~ $ node -v
pi@raspberrypi:~ $ cd /home/pi/node_modules/
pi@raspberrypi:~/node_modules $ node neeo-driver-enigma2
NEEO SDK Example "Enigma2" adapter
- discover one NEEO Brain...
I never see the start server and READY Message.. any Idea what i'm doing wrong?
Thank you for the fast answer..!
Sorry..i'm a really noob and my english isn't to good...so you mean ping the NEEO IP from the Raspberry?..
This is the Result :
pi@raspberrypi:~ $ ping 192.168.0.108
PING 192.168.0.108 (192.168.0.108) 56(84) bytes of data.
64 bytes from 192.168.0.108: icmp_seq=1 ttl=64 time=64.3 ms
64 bytes from 192.168.0.108: icmp_seq=2 ttl=64 time=1.34 ms
64 bytes from 192.168.0.108: icmp_seq=3 ttl=64 time=3.45 ms
64 bytes from 192.168.0.108: icmp_seq=4 ttl=64 time=2.45 ms
64 bytes from 192.168.0.108: icmp_seq=5 ttl=64 time=4.54 ms
64 bytes from 192.168.0.108: icmp_seq=6 ttl=64 time=1.69 ms
64 bytes from 192.168.0.108: icmp_seq=7 ttl=64 time=1.33 ms
64 bytes from 192.168.0.108: icmp_seq=8 ttl=64 time=1.35 ms
64 bytes from 192.168.0.108: icmp_seq=9 ttl=64 time=1.49 ms
64 bytes from 192.168.0.108: icmp_seq=10 ttl=64 time=1.37 ms
64 bytes from 192.168.0.108: icmp_seq=11 ttl=64 time=1.37 ms
64 bytes from 192.168.0.108: icmp_seq=12 ttl=64 time=1.38 ms
64 bytes from 192.168.0.108: icmp_seq=13 ttl=64 time=1.39 ms
64 bytes from 192.168.0.108: icmp_seq=14 ttl=64 time=3.89 ms
64 bytes from 192.168.0.108: icmp_seq=15 ttl=64 time=1.33 ms
64 bytes from 192.168.0.108: icmp_seq=16 ttl=64 time=1.37 ms
so..it seems to find the Brain..?
I try to setup this with docker on my synology nas but the server does not start.
I get an error when starting:
I can ping the Brain from within the docker container.
I'm using the following docker image for node.js:
I've followed the steps above to install the neeo sdk and the enigma2 driver.
When installing the neeo sdk I get some warnings (same warnings when install the enigma2 driver):
Any ideas whats wrong in my setup?
Thank you very much for very helpful How-to, it works for me.
Possibly you can answer me a linux question:
I would like to start the drivers, like enigma2 when i reboot the raspberry. If I use rc.local or cron, it sends the node command to the background, but the driver does not work.
If i start the node command from a terminal, send it it to the background, it works.
Any idea, what the problem could be ?
PS: Thats true for every driver, I am using currenty the enigma2 and the mystrom
Thank you very much for your support
I've successfully managed to setup some drivers using this method, thanks!
At the moment I manually start the drivers from Terminal (macOS). Here's an example of one I'm using
$ node /home/pi/node_modules/_neeo-homeassistant/index.js
How are you guys making them auto-start after rebooting the Raspberry Pi, so you don't always have to start them manually?
wondering if anyone still looks at this? I have Wemos set up and working fine on my Neeo but I would like to integrate the Geeni or CE wifi switches into my neeo they both have an app in IOS and android. would this method work to get them on my neeo ?
Wondering if anyone here Markus M or Niels de Klerk could guide me ??