ableton / push2-display-with-juce Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
First of all, really cool project, congrats!
One thing about the permissions on Linux. The documentation says:
Note that by default on Linux, the USB port can only be used by root. Unless you change the device's permissions, you will need to sudo to execute the binary.
While sudo
might be ok
for a quick hack, the best way is to install some udev
rules to give permissions to use the Push2 from any user (or some specific user if prefered). The easiest way to do this is to add a a file /etc/udev/rules.d/50-push2.rules
with the following contents:
SUBSYSTEM=="usb", ATTR{idVendor}=="2982", ATTR{idProduct}=="1967", GROUP="plugdev"
This will make sure that Push is writable by any user that is in the plugdev
group (normal users are usually there). To make the rule effective one can simply reboot or otherwise:
sudo udevadm control --reload-rules
sudo udevadm trigger
Maybe there could be a make install
provided that does something like this or otherwise a pointer in the README so users do this themselves.
Cheers!
On macOS Big Sur the program throws an exception at juce_mac_SystemStats.mm#L117. Is it possible to update the build/dependency to run on macOS 11+ as well?
Please update the build files to the latest version of Microsoft Visual Studio 2019
On Ubuntu 20.04 i did:
sudo apt install git build-essential pkg-config g++ libfreetype6-dev libx11-dev libxinerama-dev libxrandr-dev libxcursor-dev mesa-common-dev libasound2-dev freeglut3-dev libxcomposite-dev libcurl4-gnutls-dev libusb-1.0-0-dev
mkdir src
cd src
git clone --recurse-submodules https://github.com/Ableton/push2-display-with-juce.git
cd ~/src/push2-display-with-juce/Builds/LinuxMakefile
make
and got the error:
from ../../Source/push2/JuceToPush2DisplayBridge.cpp:21:
../../modules/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h: In member function ‘juce::uint8& juce::PixelARGB::getAlpha()’:
../../modules/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h:113:77: error: cannot bind packed field ‘((juce::PixelARGB*)this)->juce::PixelARGB::<anonymous>.juce::PixelARGB::<unnamed union>::comps[3]’ to ‘juce::uint8&’ {aka ‘unsigned char&’}
113 | forcedinline uint8& getAlpha() noexcept { return comps [indexA]; }
| ~~~~~~~~~~~~~^
../../modules/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h: In member function ‘juce::uint8& juce::PixelARGB::getRed()’:
../../modules/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h:114:77: error: cannot bind packed field ‘((juce::PixelARGB*)this)->juce::PixelARGB::<anonymous>.juce::PixelARGB::<unnamed union>::comps[2]’ to ‘juce::uint8&’ {aka ‘unsigned char&’}
114 | forcedinline uint8& getRed() noexcept { return comps [indexR]; }
| ~~~~~~~~~~~~~^
../../modules/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h: In member function ‘juce::uint8& juce::PixelARGB::getGreen()’:
../../modules/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h:115:77: error: cannot bind packed field ‘((juce::PixelARGB*)this)->juce::PixelARGB::<anonymous>.juce::PixelARGB::<unnamed union>::comps[1]’ to ‘juce::uint8&’ {aka ‘unsigned char&’}
115 | forcedinline uint8& getGreen() noexcept { return comps [indexG]; }
| ~~~~~~~~~~~~~^
../../modules/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h: In member function ‘juce::uint8& juce::PixelARGB::getBlue()’:
../../modules/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h:116:77: error: cannot bind packed field ‘((juce::PixelARGB*)this)->juce::PixelARGB::<anonymous>.juce::PixelARGB::<unnamed union>::comps[0]’ to ‘juce::uint8&’ {aka ‘unsigned char&’}
116 | forcedinline uint8& getBlue() noexcept { return comps [indexB]; }
| ~~~~~~~~~~~~~^
Hi,
I was trying to compile and run the push2 display example on OSX 10.13.6, but I'm getting this error when the application is trying to claim the interface: Could not claim device with interface 0, error -99
.
Stepping through the code in the Xcode debugger, it fails in darwin_usb.c:1327
/* Do the actual claim */
kresult = (*plugInInterface)->QueryInterface(plugInInterface,
CFUUIDGetUUIDBytes(kIOUSBInterfaceInterfaceID),
(LPVOID)&cInterface->interface);
kresult is -2147483644. In Apples developer forums I found:
IOCFPlugInInterface's QueryInterface returns an error, HRESULT = -2147483644.
...
That error translates to 0x80000004, which is defined in <CoreFoundation/CFPlugInCOM.h> as E_NOINTERFACE
https://forums.developer.apple.com/thread/110920)
Any idea what could be causing this?
Thanks
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.