[GUIDE] How to Use a Raspberry Pi as a wireless USB Camera Bridge to LightBurn

We have a winner!

So, you do need to change the user to root and of course edit the path correctly

Description=VirtualHere USB Server
After=network.target

[Service]
ExecStart=/home/pi1/vhusbdarm
WorkingDirectory=/home/pi1  
Restart=always
User=root 

[Install]
WantedBy=multi-user.target

Then to start the server running type or paste

sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl enable virtualhere.service
sudo systemctl restart virtualhere.service

Then you can verify it is running by issuing this command

sudo systemctl status virtualhere.service

My results

pi1@raspberrypi:~ $ sudo systemctl status virtualhere.service
● virtualhere.service - VirtualHere USB Server
     Loaded: loaded (/etc/systemd/system/virtualhere.service; enabled; preset: >
     Active: active (running) since Wed 2025-04-23 11:51:53 CDT; 8min ago
   Main PID: 4006 (vhusbdarm)
      Tasks: 30 (limit: 1556)
        CPU: 511ms
     CGroup: /system.slice/virtualhere.service
             └─4006 /home/pi1/vhusbdarm

Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: Listening on all network interface>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: Found High speed device [32e4:8430>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: Found Low speed device [093a:2510]>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: Warning, could not open device pro>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: Found High speed device [0424:2514>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: Warning, could not open device pro>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: Found High speed device [0424:2514>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: Found Full speed device [062a:4c01>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: VirtualHere USB Server is running.>
Apr 23 11:51:53 raspberrypi vhusbdarm[4006]: 10.150.1.124 connected as connecti>
lines 1-19/19 (END)

The only thing I need to do to confirm that it all runs correctly is to reboot my laptop and power down the pi and restart everything.

Thanks much @Atlanta
It might be helpful to re-post a complete updated guide from start to finish! Great job.

EDIT
Powered down the pi and rebooted the laptop. Everything connected and is working as expected. Be warned however, it is slow to connect so have a little patience when you power everything on!

Worth Noting
When you locate your camera in the Virtualhere Client on your desktop, if you right click on it, you can choose Auto Use for the camera by default. I have also noticed an 8s delay when sending commands (frame, pause, etc.) to the laser from Lightburn.

1 Like

Hi Brian! I’m really glad to hear you finally got it working – it’s been a pleasure helping you through this process. We’ve both learned along the way! :grinning_face_with_smiling_eyes:

About that 8-second delay you’re seeing when sending commands like frame or pause – that does seem a bit too long. Normally, you might expect a short delay when using VirtualHere over the network, but 8 seconds suggests there might be something else at play. Here are a few things worth checking:

  • Network connection – WiFi works fine but can introduce extra latency or instability depending on the wifi signal strength. Ethernet is usually much more reliable for VirtualHere, where possible.
  • System load on the Pi – The Raspberry Pi 3B+ isn’t very powerful. If it’s running multiple processes or the camera is so old, bad firmware, etc. The performance could be affected. You might want to check CPU usage or temperature (as thermal throttling can slow it down).
  • Camera resolution – LightBurn might be trying to pull a high-res stream from the camera. If possible, try lowering the resolution or adjusting the camera settings inside LightBurn. (Edit > Settings > Camera)
  • USB device compatibility – Not all USB devices behave equally well over VirtualHere. If delays persist, testing with a different camera or USB port could help.
  • Your computer’s performance – A slow or overloaded PC, especially one using older HDDs instead of SSDs, can also cause noticeable delays. And sometimes it’s a combination of several of these factors.

For reference, in my setup I’m using a Raspberry Pi 3B+ and a high-resolution camera (8MP 120º) over a good WiFi network, and the latency is about 1 second – very responsive. However, the PC on my end is relatively powerful, which definitely helps.

Let me know what you find! Maybe we can dig a little deeper and figure out a way to reduce that lag. :wink:

@Atlanta Thanks for the suggestions and I will definitely dig a bit deeper tomorrow.

The router is located 80’ across the building and inside another room. I will avoid stringing cat5 at all costs (I have a very high ceiling as well).

As you are aware, I have a pi for the bridge and a pi for the camera.

The camera might be the issue. I purchased it a few months back and was using it via USB prior to this project. I will connect it directly to the laptop and see what happens with the lag. I will also ping both pi’s individually (one powered on the other off and vice versa), both powered on and note the latency.

The lag happens only when I have the camera pi powered up and connected. The laptop is 2ish years old and has an ssd.

I wonder if it is possibly because I have loaded a pi OS image that runs a full desktop on the camera pi?

I’ll let you know what I find.
Thanks again

1 Like

Strangely enough, I pinged pi and pi1 and even ran tracert from the Ruida controller to the router and found nothing significant. When I send commands to the router via Lightburn Bridge today, there is no lag. :man_shrugging: I have no explanation for the results but I’ll take it. Results are below.

EDIT
I made a mistake in my test. Turning the pi1 off and back on was not updating the camera selection in Lightburn. As soon as I update it to reflect using the camera I am able to reproduce the lag. If I deselect it, no lag!

After using this config for the past few days, I have decided to discontinue using the raspberry pi wireless camera. It somehow causes a conflict between the Lightburn bridge pi and the camera pi causing delays in control inputs from laptop to laser. The laptop is having troubles locating the bridge pi requiring rescanning each time I power up and even then sometimes it only locates the bridge pi if I power off the camera pi. Anyway, it is simply too unreliable and inconsistent for me to continue using it. I had high hopes but will resume using a USB cable for the camera.