1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

RPi + Other Software Usbasp device

Discussion in 'Hardware Support' started by penfold42, 5 August 2016.

  1. penfold42

    penfold42 Active Member

    Messages:
    746
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    if anyone's interested, I got a usbasp working today with Hyperion and https://github.com/poljvd/hyperion-usbasp

    It's a $2 USB device designed to program avr microcontrollers but can be reflashed to drive ws2801 or ws281x led strips < 256 LEDs long.

    If you don't already have an avr programmer you need to buy 2 of them so you can reflash one.

    Let me know if you want more details or the pre compiled hex code for it
     
    • Like Like x 1
  2. penfold42

    penfold42 Active Member

    Messages:
    746
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    • Like Like x 1
  3. abccba97

    abccba97 New Member

    Messages:
    6
    Hardware:
    RPi1/Zero, RPi3
    Hey penfold. thank you for your work. Thats exactly what i am searching for.
    Unfortunately i have the APA102 LED Stripe.
    Are you able to add support for it?

    Greetings Julian
     
  4. penfold42

    penfold42 Active Member

    Messages:
    746
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    It might already have support ? If not, it won’t be far off.

    I notice there’s ws2801 support which is also SPI ?
     
  5. abccba97

    abccba97 New Member

    Messages:
    6
    Hardware:
    RPi1/Zero, RPi3
    Thanks for your answer.
    Ok then i will buy it and try it out :)
     
  6. penfold42

    penfold42 Active Member

    Messages:
    746
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    I don’t have any SPI addressable led strips so can’t test anything but can point you in the right direction here
     
  7. abccba97

    abccba97 New Member

    Messages:
    6
    Hardware:
    RPi1/Zero, RPi3
    that would be great, thank you.
    I ordered the usbadp already and it should arrive thursday. I'll write my experience :)
     
  8. Arakon

    Arakon Member

    Messages:
    152
    Hardware:
    RPi1/Zero, RPi3, +Arduino
    While this is a neat thing to do when you have some USBASP laying about, why wouldn't you just get a 2$ Arduino Nano with more CPU power and full FastLED support if you are ordering "fresh"?
     
  9. abccba97

    abccba97 New Member

    Messages:
    6
    Hardware:
    RPi1/Zero, RPi3
    Hmm good point, i am new with this.
    Searching for Arduino nano i only get Artikles with ~20$.

    I want a compact controller to plug in my Windows computer.
    From there i want to play Movies via HDMI on my TV and controll die LED´s directly.
    The USBASP was for me the cheapest solution i found.

    Can you link me a better alternative?
     
    Last edited: 10 April 2019
  10. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    1,890
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
  11. abccba97

    abccba97 New Member

    Messages:
    6
    Hardware:
    RPi1/Zero, RPi3
    Wow great my swabian hearth is lucky :D
    Ok than i will use this instead.

    But because i already ordered the USBASP i will give feedback if APA102 is working.

    Thank you very much.
     
    • Like Like x 1
  12. Arakon

    Arakon Member

    Messages:
    152
    Hardware:
    RPi1/Zero, RPi3, +Arduino
    Thing is, you need 2 USBASP or an USBASP and an Arduino to flash the USBASP in the first place.
    On aliexpress, you can get the nano for 2$, and it can be programmed with USB directly.
     
    • Like Like x 1
  13. abccba97

    abccba97 New Member

    Messages:
    6
    Hardware:
    RPi1/Zero, RPi3
    Oh i didn´t know that.
    I just experimented with the raspberry pi as controller when i saw your USBASP alternative.
    Ok i will try to cancel my Order and use the nano instead :)

    So in my opinion there is no advantage using your USBASP!? (Except you already own one)
     
  14. penfold42

    penfold42 Active Member

    Messages:
    746
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    The form factor is cute - but no, there’s no electronic advantage to the usbasp
     
  15. ModuloFS

    ModuloFS New Member

    Messages:
    5
    Hardware:
    32/64bit, +Arduino, +nodeMCU/ESP8266
    Hello,

    i am using Hyperion 2.0.0 alpha 8 on an Intel NUC7PJYH with Kubuntu 20.04 running on it.
    If i choose the hyperion-usbasp as the LED-controller in the LED-Hardware section under LED-Control, hyperiond stops working.
    This happens with and without the hyperion-usbasp hardware connectet. If i leave the usbasp connectet i am not able to start hyperiond again. If i disconnect it i can start hyperion again. But as soon as i try to turn on the LED-Hardware with usbasp configured as controller, hyperiond stops again.

    Anybody have the same problem?
     
  16. Lord-Grey

    Lord-Grey Moderator Staff Member Developer

    Messages:
    264
    Hardware:
    RPi3, 32/64bit
    Are you able to start hyperiond from the Commandline in Debug Mode -d Option?
    And then share the log output?
     
  17. ModuloFS

    ModuloFS New Member

    Messages:
    5
    Hardware:
    32/64bit, +Arduino, +nodeMCU/ESP8266
    Here you can see the output after i tried to start hyperiond in the commandline with the command "hyperiond -d" and the USBasp device connected:

    Code:
    2020-11-03T00:05:33.025 hyperiond MAIN         : <INFO> Set user data path to '/home/florian/.hyperion'
    2020-11-03T00:05:33.037 hyperiond DAEMON       : <DEBUG> PythonInit.cpp:44:PythonInit() | Initializing Python interpreter
    2020-11-03T00:05:33.062 hyperiond SETTINGSMGR  : <DEBUG> SettingsManager.cpp:107:SettingsManager() | Settings database initialized
    2020-11-03T00:05:33.062 hyperiond DAEMON       : <INFO> CEC handler created
    2020-11-03T00:05:33.065 hyperiond EFFECTFILES  : <INFO> 39 effects loaded from directory :/effects/
    2020-11-03T00:05:33.066 hyperiond EFFECTFILES  : <INFO> 22 effect schemas loaded from directory :/effects/schema/
    2020-11-03T00:05:33.066 hyperiond EFFECTFILES  : <INFO> 0 effects loaded from directory /home/florian/.hyperion/custom-effects
    2020-11-03T00:05:33.076 hyperiond SETTINGSMGR  : <DEBUG> SettingsManager.cpp:107:SettingsManager() | Settings database initialized
    2020-11-03T00:05:33.076 hyperiond BLACKBORDER  : <DEBUG> BlackBorderProcessor.cpp:64:handleSettingsUpdate() | Set mode to: default
    2020-11-03T00:05:33.076 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Blackborder detector: enabled
    2020-11-03T00:05:33.087 hyperiond LEDDEVICE    : <INFO> Start LedDevice 'udpraw'.
    2020-11-03T00:05:33.087 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Smoothing: enabled
    2020-11-03T00:05:33.087 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:147:init() | deviceConfig: [{"colorOrder":"grb","currentLedCount":82,"hardwareLedCount":82,"host":"192.168.178.12","latchTime":0,"port":19446,"type":"udpraw"}]
    2020-11-03T00:05:33.087 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:403:setLatchTime() | LatchTime updated to 0ms
    2020-11-03T00:05:33.087 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:429:setRewriteTime() | RewriteTime updated to 0ms
    2020-11-03T00:05:33.088 hyperiond LEDDEVICE    : <DEBUG> ProviderUdp.cpp:44:init() | Successfully parsed 192.168.178.12 as an IP-address.
    2020-11-03T00:05:33.088 hyperiond LEDDEVICE    : <DEBUG> ProviderUdp.cpp:74:init() | UDP socket will write to 192.168.178.12:19446
    2020-11-03T00:05:33.088 hyperiond FLATBUFCONN  : <INFO> Connecting to Hyperion: 127.0.0.1:19401
    2020-11-03T00:05:33.088 hyperiond EFFECTENGINE : <INFO> Run effect "Rainbow swirl fast" on channel 0
    2020-11-03T00:05:33.089 hyperiond EFFECTENGINE : <DEBUG> EffectEngine.cpp:183:runEffectScript() | Start the effect: name [Rainbow swirl fast], smoothCfg [2]
    2020-11-03T00:05:33.089 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:159:registerInput() | Register new input 'System/EFFECT' with priority 0 as inactive
    2020-11-03T00:05:33.089 hyperiond HYPERION     : <INFO> Initial foreground effect 'Rainbow swirl fast' started
    2020-11-03T00:05:33.089 hyperiond EFFECTENGINE : <INFO> Run effect "Warm mood blobs" on channel 254
    2020-11-03T00:05:33.089 hyperiond EFFECTENGINE : <DEBUG> EffectEngine.cpp:183:runEffectScript() | Start the effect: name [Warm mood blobs], smoothCfg [2]
    2020-11-03T00:05:33.089 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:159:registerInput() | Register new input 'System/EFFECT' with priority 254 as inactive
    2020-11-03T00:05:33.089 hyperiond HYPERION     : <INFO> Inital background effect 'Warm mood blobs' started
    2020-11-03T00:05:33.090 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:159:registerInput() | Register new input 'System/GRABBER' with priority 250 as inactive
    2020-11-03T00:05:33.090 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Framegrabber: enabled
    2020-11-03T00:05:33.090 hyperiond BOBLIGHT     : <DEBUG> BoblightServer.cpp:28:BoblightServer() | Instance created
    2020-11-03T00:05:33.090 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | LED device: enabled
    2020-11-03T00:05:33.092 hyperiond SETTINGSMGR  : <DEBUG> SettingsManager.cpp:107:SettingsManager() | Settings database initialized
    2020-11-03T00:05:33.092 hyperiond BLACKBORDER  : <DEBUG> BlackBorderProcessor.cpp:64:handleSettingsUpdate() | Set mode to: default
    2020-11-03T00:05:33.092 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Blackborder detector: enabled
    2020-11-03T00:05:33.098 hyperiond DAEMON       : <INFO> set screen capture device to 'qt'
    2020-11-03T00:05:33.098 hyperiond QTGRABBER    : <DEBUG> Grabber.cpp:30:setVideoMode() | Set videomode to 0
    2020-11-03T00:05:33.098 hyperiond QTGRABBER    : <ERROR> No displays found to capture from!
    2020-11-03T00:05:33.098 hyperiond DAEMON       : <INFO> Qt grabber created
    2020-11-03T00:05:33.098 hyperiond V4L2:AUTO    : <DEBUG> Grabber.cpp:30:setVideoMode() | Set videomode to 0
    2020-11-03T00:05:33.098 hyperiond V4L2:AUTO    : <INFO> Signal threshold set to: {12, 12, 12}
    2020-11-03T00:05:33.098 hyperiond V4L2:AUTO    : <INFO> CEC detection is now disabled
    2020-11-03T00:05:33.098 hyperiond V4L2:AUTO    : <INFO> Signal detection is now disabled
    2020-11-03T00:05:33.099 hyperiond V4L2:AUTO    : <INFO> Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000
    2020-11-03T00:05:33.099 hyperiond DAEMON       : <DEBUG> hyperiond.cpp:568:handleSettingsUpdate() | V4L2 grabber created
    2020-11-03T00:05:33.099 hyperiond JSONSERVER   : <DEBUG> JsonServer.cpp:27:JsonServer() | Created instance
    2020-11-03T00:05:33.100 hyperiond JSONSERVER   : <INFO> Started on port 19444
    2020-11-03T00:05:33.100 hyperiond PROTOSERVER  : <INFO> Started on port 19445
    2020-11-03T00:05:33.101 hyperiond FLATBUFSERVE : <INFO> Started on port 19400
    2020-11-03T00:05:33.101 hyperiond HYPERION     : <INFO> Hyperion instance 'First LED Hardware instance' has been started
    2020-11-03T00:05:33.101 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:32:initServer() | Initialize Webserver
    2020-11-03T00:05:33.102 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:32:initServer() | Initialize Webserver
    2020-11-03T00:05:33.104 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Smoothing: enabled
    2020-11-03T00:05:33.104 hyperiond EFFECTENGINE : <INFO> Run effect "Rainbow swirl fast" on channel 0
    2020-11-03T00:05:33.104 hyperiond EFFECTENGINE : <DEBUG> EffectEngine.cpp:183:runEffectScript() | Start the effect: name [Rainbow swirl fast], smoothCfg [2]
    2020-11-03T00:05:33.104 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:159:registerInput() | Register new input 'System/EFFECT' with priority 0 as inactive
    2020-11-03T00:05:33.104 hyperiond HYPERION     : <INFO> Initial foreground effect 'Rainbow swirl fast' started
    2020-11-03T00:05:33.105 hyperiond EFFECTENGINE : <INFO> Run effect "Warm mood blobs" on channel 254
    2020-11-03T00:05:33.105 hyperiond EFFECTENGINE : <DEBUG> EffectEngine.cpp:183:runEffectScript() | Start the effect: name [Warm mood blobs], smoothCfg [2]
    2020-11-03T00:05:33.105 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:159:registerInput() | Register new input 'System/EFFECT' with priority 254 as inactive
    2020-11-03T00:05:33.105 hyperiond HYPERION     : <INFO> Inital background effect 'Warm mood blobs' started
    2020-11-03T00:05:33.105 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:159:registerInput() | Register new input 'System/GRABBER' with priority 250 as inactive
    2020-11-03T00:05:33.105 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Framegrabber: enabled
    2020-11-03T00:05:33.105 hyperiond Qt           : <DEBUG> GrabberWrapper.cpp:48:start() | Grabber start()
    2020-11-03T00:05:33.105 hyperiond BOBLIGHT     : <DEBUG> BoblightServer.cpp:28:BoblightServer() | Instance created
    2020-11-03T00:05:33.105 hyperiond HYPERION     : <INFO> Hyperion instance 'usbasp_test' has been started
    2020-11-03T00:05:33.106 hyperiond LEDDEVICE    : <INFO> Start LedDevice 'hyperionusbasp'.
    2020-11-03T00:05:33.106 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:147:init() | deviceConfig: [{"colorOrder":"rbg","currentLedCount":26,"hardwareLedCount":1,"latchTime":10,"ledType":"ws2812","rewriteTime":1000,"type":"hyperionusbasp"}]
    2020-11-03T00:05:33.106 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:403:setLatchTime() | LatchTime updated to 10ms
    2020-11-03T00:05:33.106 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:423:setRewriteTime() | Refresh interval = 1000ms
    2020-11-03T00:05:33.106 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:429:setRewriteTime() | RewriteTime updated to 1000ms
    2020-11-03T00:05:33.110 hyperiond LEDDEVICE    : <DEBUG> LedDeviceHyperionUsbasp.cpp:65:init() | USB context initialized
    2020-11-03T00:05:33.110 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:90:handleSettingsUpdate() | Apply Webserver settings
    2020-11-03T00:05:33.111 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:108:handleSettingsUpdate() | Set document root to: :/webconfig
    terminate called after throwing an instance of 'int'
    2020-11-03T00:05:33.111 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:90:handleSettingsUpdate() | Apply Webserver settings
    
    Hyperion caught signal :SIGABRT
    2020-11-03T00:05:33.111 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:108:handleSettingsUpdate() | Set document root to: :/webconfig
    2020-11-03T00:05:33.111 hyperiond WEBSERVER    : <INFO> Started on port 8090 name 'Hyperion Webserver'
    2020-11-03T00:05:33.112 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libpthread.so.0(+0x153c0) [0x7f9d20dec3c0]
    2020-11-03T00:05:33.112 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb) [0x7f9d1f44018b]
    2020-11-03T00:05:33.112 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libc.so.6(abort+0x12b) [0x7f9d1f41f859]
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libstdc++.so.6(+0x9e951) [0x7f9d1f7f4951]
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libstdc++.so.6(+0xaa47c) [0x7f9d1f80047c]
    2020-11-03T00:05:33.113 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:174:handleSettingsUpdate() | Setup SSL certificate
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libstdc++.so.6(+0xaa4e7) [0x7f9d1f8004e7]
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libstdc++.so.6(+0xaa799) [0x7f9d1f800799]
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        hyperiond(+0x28b15c) [0x559a6514e15c]
    2020-11-03T00:05:33.113 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:190:handleSettingsUpdate() | Setup private SSL key
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        hyperiond(LedDeviceHyperionUsbasp::testAndOpen(libusb_device*)+0x6f) [0x559a6514e1cf]
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        hyperiond(LedDeviceHyperionUsbasp::init(QJsonObject const&)+0x366) [0x559a6514e806]
    2020-11-03T00:05:33.113 hyperiond WEBSERVER    : <INFO> Started on port 8092 name 'Hyperion Webserver'
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        hyperiond(LedDevice::start()+0xb1) [0x559a65157e11]
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        /usr/share/hyperion/bin/../lib/libQt5Core.so.5(QMetaObject::activate(QObject*, int, int, void**)+0x9ae) [0x7f9d1fe86b1e]
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        /usr/share/hyperion/bin/../lib/libQt5Core.so.5(+0xaed2f) [0x7f9d1fc8bd2f]
    2020-11-03T00:05:33.113 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libpthread.so.0(+0x9609) [0x7f9d20de0609]
    2020-11-03T00:05:33.114 hyperiond CORE         : <ERROR>        /lib/x86_64-linux-gnu/libc.so.6(clone+0x43) [0x7f9d1f51c293]
    Abgebrochen (Speicherabzug geschrieben)
     
  18. Lord-Grey

    Lord-Grey Moderator Staff Member Developer

    Messages:
    264
    Hardware:
    RPi3, 32/64bit
  19. ModuloFS

    ModuloFS New Member

    Messages:
    5
    Hardware:
    32/64bit, +Arduino, +nodeMCU/ESP8266
    Yes of course! I am happy to help with the project!
     
  20. Lord-Grey

    Lord-Grey Moderator Staff Member Developer

    Messages:
    264
    Hardware:
    RPi3, 32/64bit
    @ModuloFS I reworked the code and hopefully got it fixed.

    What would be the best way to get it tested?
    Do you compile hyperion yourself, then I will share the updated code files with you.
    Or do you need a pre-build package (for what platform - Ubuntu)?
     
    Last edited: 10 November 2020