Contributing
Add a freight tracking camera
Help track freight trains near you with a camera and a small computer. Active camera contributors receive free TrainsFYI Pro, applied automatically to their connected account.
Our recommended setup is a Wyze Cam v3 watching the railway and a Raspberry Pi 5 running RailWatch, our camera software. The camera sends video to the Pi over your home network; RailWatch detects trains and uploads their clips to trains.fyi.
Supplies list
- Wyze Cam v3, with its USB power cable, power adapter and a suitable mount. Buy a Wyze Cam v3. Availability varies; check stock before ordering.
- Raspberry Pi 5 with 4 GB of RAM as a starting point. Buy a Raspberry Pi 5 through the official page's reseller selector. Performance depends on the camera and detector.
- Power and cooling for the Pi: a 27 W USB-C power supply, plus a Pi 5 case with a fan or an Active Cooler. The camera and Pi each need power.
- A microSD card of at least 64 GB and a card reader to install the Pi's operating system. An SSD is preferable for continuous recording.
- Reliable home internet and 2.4 GHz Wi-Fi for the camera. An Ethernet cable is useful for connecting the Pi to your router.
- A phone for the Wyze app, a computer to prepare the Pi, and a free trains.fyi account. You do not need to buy Pro.
Already have equipment? A USB webcam or another IP camera with a local RTSP stream can also work with RailWatch on Linux. A camera that only streams through its manufacturer's app will not work.
1. Choose the camera's position
Choose a fixed, clear view of the railway from property where you have permission to install the camera. Keep people, neighbouring homes and private areas out of view as much as possible. Never enter railway property to install or adjust equipment.
Test the view before permanently mounting the camera. Keep the Pi somewhere dry with ventilation and reliable power.
2. Set up the Wyze camera
- Power the camera and add it in the Wyze app using the Wyze Cam v3 setup guide.
- Connect it to your home's 2.4 GHz Wi-Fi.
- Update the Wyze app and install the camera's latest firmware using Wyze's firmware update instructions.
- Check that the live view shows the railway clearly.
Wyze added RTSP to the Cam v3's regular firmware in its February 2026 update; the feature requires Wyze app 3.9 or newer. Start with the latest regular firmware rather than installing an old separate RTSP build.
3. Enable the camera's RTSP stream
RTSP lets RailWatch receive video directly from the camera on your home network.
- In the Wyze app, open your camera, then Settings → Advanced Settings → RTSP.
- Choose Set Up and create an RTSP username and password. Save these for RailWatch; they are separate from your Wyze account login.
- Follow the app's prompts to finish enabling the stream, keeping Secure RTSP (RTSPS) enabled where supported. Allow a few minutes for first-time setup.
- Save the stream address shown by the app.
See the “Set up RTSP by APP” and “Using Your RTSP Stream” sections of Wyze's RTSP instructions. That page also contains older beta download instructions; use the regular firmware update in step 2 above.
Keep the camera and Pi on the same trusted network. Standard RTSP is unencrypted and should stay on that private network. Do not forward camera or RailWatch ports on your router. Keep the stream address and credentials private.
Ready for the next step: the Wyze live view works and you have the local stream address and RTSP login saved.
4. Prepare the Raspberry Pi
- Download Raspberry Pi Imager on your computer.
- Insert the microSD card. In Imager, choose your Pi, Raspberry Pi OS Lite (64-bit) and the correct card. Writing the operating system erases that card.
- In the customisation options, set the hostname to railwatcher, create a username and password, and configure Wi-Fi if you are not using Ethernet. Enable SSH if you will set up the Pi remotely.
- Write the card, safely eject it, and insert it into the Pi.
- Connect Ethernet if using it, then power on the Pi and allow it to boot.
For illustrated instructions, follow Raspberry Pi's getting-started guide.
Open a terminal on your computer and connect using the username you created:
ssh YOUR_USERNAME@railwatcher.local
Replace YOUR_USERNAME with your own username. If the hostname does not work, find the Pi's local IP address in your router and use that instead. You can also use a keyboard and monitor connected to the Pi.
5. Install RailWatch
Run these commands on the Pi, in your SSH session or its terminal:
sudo apt-get update
sudo apt-get install -y git
git clone https://github.com/TrainsFYI/railwatch.git
cd railwatch
sudo bash scripts/install.sh
The RailWatch installation guide has the current installer instructions and other Linux installation options.
When installation finishes, open the dashboard address printed by the installer from a device on the same network. With the hostname above, this is usually http://railwatcher.local:8787. If needed, use the Pi's local IP address followed by :8787.
Ready for the next step: the RailWatch dashboard opens in your browser.
6. Connect the camera and turn on detection
- Follow RailWatch's setup wizard and select Network stream. In RTSP stream URL, enter the address from step 3 with your RTSP login included, as shown below.
- Check the live preview. Do this before adjusting detection settings.
- Put the camera pin at its actual position on the map and set the direction the lens faces.
- Draw the detection area around the railway, excluding roads, moving trees and other distractions where possible.
- In Settings, download the offered train detector if none is installed. Wait for the model to become available and check that detection is watching.
RailWatch accepts RTSP and RTSPS addresses. Its stream field includes the login in the URL rather than asking for it separately. For example:
rtsps://YOUR_USERNAME:YOUR_PASSWORD@CAMERA_IP:322/stream0/
Replace the placeholders with your RTSP login and the camera's local IP, keeping the protocol, port and path shown by Wyze. For standard RTSP, Wyze typically shows port 554. URL-encode special characters in the username or password when including them in the address.
A working preview alone does not mean detection is running. Keep the camera fixed after setup. Night vision helps visibility, but darkness, rain and poor light can still affect detection.
Ready for the next step: you can see the railway in the preview, the detector model is available and detection is watching.
7. Link your trains.fyi account
- In RailWatch setup or Settings, choose Connect to TrainsFYI.
- Open the approval link or scan the QR code and sign in to trains.fyi. To enter a code manually, use Authorize a camera.
- Check the camera name and location, then approve your own camera.
- Leave RailWatch running while it connects. If the code expires, start a new connection from RailWatch.
- Open Your cameras and check that your camera appears with a recent connection time.
We review the railway position and detection quality for each new camera before using its observations on the public network. Freight/passenger recognition is still being validated for new views, so automatic classification may not be available at your location yet. Moving the camera requires another review.
8. Check your first train
When a train passes, open Detections in RailWatch. A confirmed passage should record and upload automatically. Then open your camera on Your cameras and check for its event. Upload acceptance and analysis are separate steps, so processing can take a little time.
Leave the camera and Pi powered on to keep contributing. Camera observations help estimate freight train positions; they are not GPS tracking. An uploaded video does not guarantee a moving marker on the public map.
Your free Pro benefit
Once your approved camera is actively contributing verified train passages, Pro is applied automatically. No payment card or redemption code is needed. Use the same trains.fyi account on the website and in the apps.
See your contributor status on Your cameras and your access on Your account. If needed, choose Refresh subscription status on the account page. Contributor access renews as you keep contributing and can expire if contributions stop.
If you already have a paid subscription, this benefit does not cancel it or change its billing. Manage that subscription with the provider you purchased through.
If something is not working
- No RTSP option in Wyze: update both the app and camera firmware, then check Wyze's instructions linked above. Confirm you have a Cam v3; other Wyze models can have different support.
- No live preview in RailWatch: check the camera's power, local stream address, RTSP credentials and that both devices are on the same network. Check that the stream's RTSP or RTSPS mode is supported by your RailWatch installation.
- Preview works but no trains are recorded: check that detection is enabled, the model is available and the railway is inside the detection area.
- A recording has no video: check the camera connection and free disk space.
- Uploads are waiting: keep the Pi online. RailWatch retains pending clips and retries them.
- Uploads appear but nothing is public yet: your camera or its detection results may still need review. Contact us with the camera name and what the dashboard shows.
Privacy and stopping
Uploaded source footage is private to your account and authorised reviewers. RailWatch does not record audio. Confirmed clips are uploaded for processing, and approved train observations can contribute to the public network.
Pause capture in RailWatch or revoke a device from Your cameras to stop future uploads. Revocation does not erase footage already submitted. See our privacy policy for details.
Need help? Contact us. Do not send camera passwords, pairing secrets or device credentials.
Still need help?
Send a message and Ryder will get back to you.