Closed jeffensen closed 1 month ago
Hi jeffensen,
A built package is available for download here https://github.com/tarsjoris/x-air/packages/1892157
Thank you!
Now I ran into a new issue. When I start the built proxy tool package (step 5), I always get the following error (see below). I have a wifi router which runs DHCP and gives static IPs to the XR18 (192.168.0.100) and to my PC and to the X-Touch. The error appears no matter if the XAir Edit App is already connected to the XR18 or not. I also checked: no other service is using the IP address and port of the XR18.
EDIT: it does not seem to be related to the IP address. If I change the IP address of the XR18 in xtouch.properties to some arbitrary address not used in the network, I still get exactly the same error.
java -jar proxy-3.1-20230701.154203-2-jar-with-dependencies.jar
Use XAiR XR18 device at 192.168.0.100
Exception in thread "main" java.net.BindException: Address already in use: bind
at java.base/sun.nio.ch.Net.bind0(Native Method)
at java.base/sun.nio.ch.Net.bind(Net.java:565)
at java.base/sun.nio.ch.DatagramChannelImpl.bindInternal(DatagramChannelImpl.java:1347)
at java.base/sun.nio.ch.DatagramChannelImpl.bind(DatagramChannelImpl.java:1317)
at java.base/sun.nio.ch.DatagramSocketAdaptor.bind(DatagramSocketAdaptor.java:108)
at java.base/java.net.DatagramSocket.createDelegate(DatagramSocket.java:1433)
at java.base/java.net.DatagramSocket.<init>(DatagramSocket.java:328)
at java.base/java.net.DatagramSocket.<init>(DatagramSocket.java:387)
at java.base/java.net.DatagramSocket.<init>(DatagramSocket.java:353)
at be.t_ars.xtouch.xctl.ConnectionWithXTouchImpl.<init>(ConnectionWithXTouchImpl.kt:18)
at be.t_ars.xtouch.xctl.XctlConnectionStub.<init>(XctlConnectionStub.kt:11)
at be.t_ars.xtouch.xctl.XctlConnectionProxy.<init>(XctlConnectionProxy.kt:6)
at be.t_ars.xtouch.XAirEditProxyConnection.<init>(XAirEditProxyConnection.kt:21)
at be.t_ars.xtouch.XAirEditProxyKt.main(XAirEditProxy.kt:95)
at be.t_ars.xtouch.XAirEditProxyKt.main(XAirEditProxy.kt)
Hi jeffensen, This means that port 10111 is already in use. The XTouch always connects to port 10111, so this is what the proxy has to listen on. Is there another program that is using the port already?
Hi tarsjoris, thanks. according to TCPView, the port is not in use. However, I now get a different error message and cannot really say what was causing it as I did not really change anything. The IPs provided by the DHCP are still 192.168.0.100 (XR18 mixer), 192.168.0.101 (pc) and 192.168.0.102 (xtouch):
java -jar proxy-3.1-20230701.154203-2-jar-with-dependencies.jar
Use XAiR XR18 device at 192.168.0.100
2024-09-23 11:37:47.427 [main] INFO ktor.application - Autoreload is disabled because the development mode is off.
Starting ktor netty
2024-09-23 11:37:47.552 [main] INFO ktor.application - Responding at http://192.168.0.4:8080
Exception in thread "main" java.net.BindException: Cannot assign requested address: bind
at java.base/sun.nio.ch.Net.bind0(Native Method)
at java.base/sun.nio.ch.Net.bind(Net.java:565)
at java.base/sun.nio.ch.ServerSocketChannelImpl.netBind(ServerSocketChannelImpl.java:344)
at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:301)
at io.netty.channel.socket.nio.NioServerSocketChannel.doBind(NioServerSocketChannel.java:134)
at io.netty.channel.AbstractChannel$AbstractUnsafe.bind(AbstractChannel.java:550)
at io.netty.channel.DefaultChannelPipeline$HeadContext.bind(DefaultChannelPipeline.java:1334)
at io.netty.channel.AbstractChannelHandlerContext.invokeBind(AbstractChannelHandlerContext.java:506)
at io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:491)
at io.netty.channel.DefaultChannelPipeline.bind(DefaultChannelPipeline.java:973)
at io.netty.channel.AbstractChannel.bind(AbstractChannel.java:248)
at io.netty.bootstrap.AbstractBootstrap$2.run(AbstractBootstrap.java:356)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.ktor.server.netty.EventLoopGroupProxy$Companion$create$factory$1$1.run(NettyApplicationEngine.kt:241)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:1575)
Hi jeffensen,
That probably means that port 8080 is in use, which is used to allow controlling a monitor-mix via a webpage. You probably won't use this initially, so you can disable it in ~/xtouch/xtouch.properties. If you add the following line, it will no longer start a webserver on port 8080. webrelay.enabled=false
Hi jeffensen,
That probably means that port 8080 is in use, which is used to allow controlling a monitor-mix via a webpage. You probably won't use this initially, so you can disable it in ~/xtouch/xtouch.properties. If you add the following line, it will no longer start a webserver on port 8080. webrelay.enabled=false
Thanks, that solved the issue!
When I try to build the tool on Windows, I get errors. Could you maybe release an executable .jar file?
I have a Windows 10 (10.0.19045) machine with following versions: JDK v23 Maven v3.9.9 also tried with v4beta npm v10.2.8 node v20.17.0