neophob / PixelController

(LED) Matrix Control Software, supports various Hardware, Keywords: LED Matrix, OSC, Realtime, VJ, Arduino, Teensy, RPI
www.pixelinvaders.ch
GNU General Public License v3.0
286 stars 103 forks source link

PixelController.Command Hangs when running #27

Closed JCRoach closed 11 years ago

JCRoach commented 11 years ago

I've been trying to get this running for a few days now and can't figure out why. Com port is setup as /dev/tty.usbserial-A100N00B as that is the port for my rainbowduino. I run the API and it freezes. If I change back to the null output it starts up fine. Any help would be greatly appreciated. Here is the Log file. Nov 14, 2012 2:16:39 PM com.neophob.PixelController setup INFO:

PixelController v1.3-SNAPSHOT - http://www.pixelinvaders.ch

Nov 14, 2012 2:16:39 PM com.neophob.PixelController setup INFO: Nov 14, 2012 2:16:39 PM com.neophob.PixelController setup INFO: ----------------------------------- Nov 14, 2012 2:16:39 PM com.neophob.PixelController setup INFO: --- PixelController Setup START --- Nov 14, 2012 2:16:39 PM com.neophob.PixelController getApplicationConfiguration INFO: Config loaded, 20 entries Nov 14, 2012 2:16:39 PM com.neophob.sematrix.properties.ApplicationConfigurationHelper INFO: found RainbowduinoV3 device: 1 Nov 14, 2012 2:16:39 PM com.neophob.PixelController getColorPalettes INFO: ColorSets loaded, 26 entries Nov 14, 2012 2:16:39 PM com.neophob.sematrix.input.SoundMinim run INFO: Sound thread started... Nov 14, 2012 2:16:39 PM com.neophob.sematrix.glue.MatrixData INFO: screenSize: 64 (8 * 8), Nov 14, 2012 2:16:39 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: BLINKENLIGHTS Nov 14, 2012 2:16:39 PM processing.lib.blinken.BlinkenLibrary INFO: blinkenlights v0.63 Nov 14, 2012 2:16:40 PM processing.lib.blinken.BlinkenLibrary loadFile INFO: Loaded file blinken/torus.bml, contains 250 frames Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: IMAGE Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Image loadFile INFO: resize to img logo.gif 64, 64 Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: PLASMA Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: PLASMA_ADVANCED Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: FIRE Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: PASSTHRU Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: METABALLS Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: PIXELIMAGE Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: TEXTWRITER Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Textwriter INFO: Loaded font 04B_03__.TTF, size: 82 Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: CELL Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: FFT Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: DROPS Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: COLOR_SCROLL Nov 14, 2012 2:16:40 PM com.neophob.sematrix.generator.Generator INFO: Generator: internalBufferSize: 4,096 name: COLOR_FADE Nov 14, 2012 2:16:40 PM com.neophob.sematrix.properties.ApplicationConfigurationHelper loadPresents INFO: Loaded 30 presents from file data/presents.led Nov 14, 2012 2:16:40 PM com.neophob.sematrix.listener.TcpServer INFO: Server started at port 3,448 Nov 14, 2012 2:16:40 PM com.neophob.sematrix.listener.TcpServer run INFO: Ready receiving messages... Nov 14, 2012 2:16:40 PM com.neophob.sematrix.listener.TcpServer connectToClient INFO: Pure Data Client not found at 127.0.0.1:3449 Nov 14, 2012 2:16:40 PM com.neophob.sematrix.listener.TcpServer INFO: Pure Data Client not available yet! Nov 14, 2012 2:16:40 PM com.neophob.sematrix.listener.OscServer INFO: Start OSC Server at port 9,876 Nov 14, 2012 2:16:41 PM com.neophob.sematrix.jmx.PixelControllerStatus INFO: Initialize the PixelControllerStatus JMX Bean Nov 14, 2012 2:16:41 PM com.neophob.sematrix.layout.Layout INFO: Layout created: HORIZONTAL, size row 1: 1, row 2: 0 Nov 14, 2012 2:16:41 PM com.neophob.sematrix.output.Output INFO: Output created: RAINBOWDUINO_V3, Layout: HORIZONTAL, BPP: 8

neophob commented 11 years ago

INFO: Output created: RAINBOWDUINO_V3, Layout: HORIZONTAL, BPP: 8

this is the last line you see in the log file and then it freeze`?

JCRoach commented 11 years ago

That is the last line in the log file but there is more in the terminal window.

Exception in thread "Animation Thread" java.lang.UnsupportedClassVersionError: de/programmerspain/rv3sf/api/RainbowduinoV3 : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) at java.lang.ClassLoader.defineClass(ClassLoader.java:615) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) at java.net.URLClassLoader.access$000(URLClassLoader.java:58) at java.net.URLClassLoader$1.run(URLClassLoader.java:197) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) at com.neophob.sematrix.output.RainbowduinoV3Device.(RainbowduinoV3Device.java:44) at com.neophob.PixelController.getOutputDevice(PixelController.java:138) at com.neophob.PixelController.setup(PixelController.java:197) at processing.core.PApplet.handleDraw(PApplet.java:1866) at processing.core.PApplet.run(PApplet.java:1788) at java.lang.Thread.run(Thread.java:680)

neophob commented 11 years ago

I guess you're still using Java 1.5 (JRE 1.5.xx) - update your JRE to v1.6 or 1.7 and it will work!

cheers

JCRoach commented 11 years ago

Jesses-MacBook-Pro:applications cav2295$ java -version java version "1.6.0_37" Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909) Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)

Downloaded latest build and still hangs

neophob commented 11 years ago

-> java -version java version "1.6.0_37" Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909) Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)

strange, looks like we use the same java version on osx. when you say hangs, you mean the same output as above:

Exception in thread "Animation Thread" java.lang.UnsupportedClassVersionError: de/programmerspain/rv3sf/api/RainbowduinoV3 : Unsupported major.minor version 51.0

?

JCRoach commented 11 years ago

Yeah, maybe its something in my config.properties file. PixelController will run with the null output selected but, when I try to change to the rainbowduinoV3 it gives me that exception. Here is my config.

=========================

default values for generators

=========================

initial.image.simple=logo.gif initial.blinken=torus.bml initial.text=PIXELINVADERS

font.filename=04B_03__.TTF font.size=82

x/y offset for screen capturing generator

if you define screen.capture.window.size.x as 0, the screen capture generator will be disabled

screen.capture.offset=100 screen.capture.window.size.x=0

screen.capture.window.size.x=500

screen.capture.window.size.y=300

=========================

network port config

=========================

fudi protocol config, used to communicate with pure data sketch

net.listening.port=3448 net.listening.addr=127.0.0.1 net.send.port=3449

osc protocol config

osc.listening.port=9876

=========================

frames per second

=========================

fps=20

=========================

debug output (internal buffer)

=========================

show.debug.window=true maximal.debug.window.xsize=800

=========================

per default you get # of output windows + 1 visuals

maybe you need more, so add them here if you want...

=========================

additional.visual.screens=0

=========================

the size of the software output matrix

=========================

led.pixel.size=30

=========================

start in random mode?

=========================

startup.in.randommode=false

=========================

load a preset if PixelController starts?

Warning, this will overwrite your settings configured above (initial generator values)!

=========================

startup.load.preset.nr=81

=========================

use audio as input setting (true)

or just regular fps (false)

=========================

update.generators.by.sound=true

OUTPUT SETTINGS

enable only ONE output device (PixelInvaders, RainbowduinoV2, RainbowduinoV3, Art-Net, TPM2, UDP, Adafruit or Minidmx)

=========================

optional, defines the color order of the output device

this option is used for ALL output devices, if you have multiple panels you must define

multiple entries, for example if you have 3 panels you need to define "BRG,BRG,BRG"

#

if this setting is commented out, RGB color order is assumed for all panels

=========================

panel.color.order=RGB

=========================

settings for PixelInvaders Panel, valid options:

=========================

NO_ROTATE,

ROTATE_90,

ROTATE_90_FLIPPEDY,

ROTATE_180,

ROTATE_180_FLIPPEDY,

ROTATE_270,

=========================

pixelinvaders.layout.row1=NO_ROTATE,NO_ROTATE

pixelinvaders.layout.row2=NO_ROTATE,NO_ROTATE

do not try this device for autodetection

pixelinvaders.blacklist.devices=/dev/ttyUSB000

if you have multiple pixelinvaders panels wired up special, you can define this here.

if you don't define this setting, the "default wiring" is expected

example (the number define the wiring direction):

+---+---+---+

| 0 | 3 | 4 |

+---+---+---+

| 1 | 2 | 5 |

+---+---+---+

HINT: the first panel is 0!

pixelinvaders.panel.order=0,3,4,1,2,5

=========================

settings for null output

=========================

nulloutput.devices.row1=2

nulloutput.devices.row2=2

=========================

settings for rainbowduinoV2

=========================

i2c destination address + layout definition

layout.row1.i2c.addr=5,6

layout.row2.i2c.addr=8,9

=========================

settings for rainbowduinoV3

=========================

serial device names + layout definition

layout.row1.serial.devices=/dev/tty.usbserial-A100N00B layout.row2.serial.devices=/dev/tty.usbserial-A100N00B

=========================

settings for stealth panel

=========================

stealth.layout.row1=NO_ROTATE

=========================

settings for Art-Net, Minidmx, UDP and Adavision

=========================

output.resolution.x=16

output.resolution.y=8

flip each second scanline

output.snake.cabling=true

OR use manual image mapping, instead of the snake cabling setting.

the output mapping table should contain output.resolution.x * output.resolution.y entries

REMEMBER: the first outputs starts at 0 NOT 1!

output.mapping=0,1,4,5,2,3...

rotate image, valid options:

NO_ROTATE,

ROTATE_90,

ROTATE_90_FLIPPEDY,

ROTATE_180,

ROTATE_180_FLIPPEDY,

ROTATE_270

output.layout=NO_ROTATE

=========================

settings for Art-Net

Info: PixelController supports more than 1 universe

=========================

artnet.ip=192.168.1.2

define how many rgb pixels are used on a universe, maximal 170 (=510 Channels)

artnet.pixels.per.universe=170

define the first universe id

artnet.first.universe.id=1

=========================

settings for udp "device"

=========================

send to this address

udp.ip=192.168.111.25

udp.port=6803

=========================

settings for tpm2 device

=========================

tpm2.device=/whatever/youwant

tpm2.baudrate=115200

=========================

settings for miniDmx (like the SEDU board)

=========================

minidmx.baudrate=115200

=========================

settings for adavision

do NOT FORGET to define the output resolution above!

=========================

adavision.device.enabled=true

optional: define serial port

adavision.serial.port=/dev/tty.Whatever

optional: define serial speed TODO

adavision.baudrate=115200

EOF

JCRoach commented 11 years ago

Got It!!! Changed to the netbeans sdk of java and everything runs. Thanks

neophob commented 11 years ago

Hey JCRoach

I updated the rainbowduino library which was compiled with jdk v1.7. this issue should be fixed with the latest beta release you can get here: https://github.com/downloads/neophob/PixelController/PixelController-1.3-beta11.zip

hope that helps!

cheers michu