This is part one of the installation tutorial on getting Goldsprints FX installed and running on your OS of choice.
First we need to get Serproxy running. Serproxy is a Serial to Socket Server and is required to get GFX up and running. There are a few serial to proxy servers out there but Serproxy is the one I recommend. Serproxy sits on the other side of the USB port and gives us a way to communicate with the OpenSprints hardware. In the case of GFX we are giving Flash a way to get and send data to the OpenSprints hardware.
There is no installation process for Serproxy, simply download the Serproxy archive, and then unpack it somewhere readily accessible on your computer. The location doesn’t matter as long as you remember where it is. You’ll find an executable as well as a configuration file called “serproxy.cfg”.
Open the “serproxy.cfg” file using a text editor. Take a look at the different parameters. This is what my cfg file looks like on my OS X machine.

Start editing the file to match my settings you see in the screen shot above. Everything should be the same except maybe the “serial_device1” at the bottom. Serproxy needs to know where to find your USB port on the machine that is connected to the OpenSprints hardware.

To find what USB port you have the OpenSprints hardware connected to make sure your OpenSprints hardware is connection to your computer. Then depending on what OS you are running do one of the following:
OS X: Open Terminal and enter “ls /dev/cu.usb*”. You’ll probably only find one entry listed, and this is the label that your machine gives the USB port to which the OpenSprints hardware is connected.
Windows: [coming soon] – I don’t have a Windows machine so I am not sure how to get the label. Look for an update soon.
Ubuntu: You might have to do this as root. Open Terminal and enter “ls /dev/ttyUSB*”. You’ll probably only find one entry listed, and this is the label that your machine gives the USB port to which the OpenSprints hardware is connected. Most likely it will be ‘/dev/ttyUSB0′.
Enter the lable into the “serial_device1” line in your cfg filie. That should do it. Save and close the cfg file. Now launch the serproxy executable. You should see something like this. Again, this is on OS X and about the same as Ubuntu.
Anytime you run GFX you need to have Serproxy running. Otherwise GFX cannot communicate with the OpenSprints hardware.
Check out the second part of this tutorial to get GFX installed.

I’ve setup Serproxy successfully on Windows XP. The cfg is identical except for the last line (as mentioned)
For windows simply use:
serial_device1=COM2
where COM2 is the com port you have configured in the windows device manager. (right click “my computer” and select Manage, then Device Manager)
The USB Serial Port device will be listed under “Ports (COM & LPT)”
By default my port was 31, but after googling Arduino and port numbers I found there is an issue with port numbers greater than 9. I simply configured the port number to use an unused port between 1 and 9 and it worked.
To change the port number:
- Double click the USB Serial Port in Device Manager
- Click on Port Settings tab
- Click Advanced and choose a port between 1 and 9 that is not being used.
Thanks for posting this Fleagun. I don’t have any Windows machines any more so this really helps the other Win users!
Let me know how things go! I would love some photos from your neck of the world of GFX in action!
I’m hvaing a problem getting my hardware to be recognized.
Below is my config file. Can someone give it a 2nd pair of eyes and see if I’ve got the config correct.
Thanks
# Config file for serproxy
# See serproxy’s README file for documentation
# Transform newlines coming from the serial port into nils
# true (e.g. if using Flash) or false
newlines_to_nils=true
# Comm ports used
comm_ports=1,2,3,4
# Default settings
comm_baud=19200
comm_databits=8
comm_stopbits=1
comm_parity=none
# Idle time out in seconds
timeout=300
# Port 1 settings (ttyS0)
net_port1=5331
# Port 2 settings (ttyS1)
net_port2=5332
# Port 3 settings (ttyS2)
net_port3=5333
# Port 4 settings (ttyS3)
net_port4=5334
# OpenSprints Hall sensors
serial_device1=COM2
I changed the port set-up on my XP machine to recognize the hardware.
change your
comm_baud=19200
to
comm_baud=115200
“”OS X: Open Terminal and enter “ls /dev/cu.usb*”. You’ll probably only find one entry listed, and this is the label that your machine gives the USB port to which the OpenSprints hardware is connected. “” semmed no fonctionne.
Is this syntaxe is available for a mac osx 10.5 ?
Thanks You
I have the same problem. Doesnt work to find which usb im using… and I keep getting
Serproxy – (C)1999 Stefano Busti, (C)2005 David A. Mellis – Waiting for clients
then when I open GFX
Failed to open comm port – connection refused
What is going on?
I don’t know if you sort this out, but you need to identify the right port in your serproxy.cfg. You are getting this message because GFX connects to the proxy but the Arduino platform (HW) doesn’t.
If you’re using Windows I can guide you through it, if you’re using Linux the site’s instructions say how to do it already. In OSX, I have no clue.
Is the “README-wiring.txt” file in the serproxy download still good? should I disregard it and only pay attention to this page? im getting confused.
Mac or Windows?
I figured it out…
arduino software for the win! Why isn’t there much mention of that on here? Makes for a much easier set up…
Im having your same problem–will look into the Arduino software but do you have any quick ideas?
I’m trying to run serproxy version 0.1.3-3 under Mac OS X 10.6.5.
I get the following error:
You need the Rosetta software to run serproxy. The Rosetta installer is in Optional Installs on your Mac OS X installation disc.
Has anyone else dealt with this problem?
Thanks
-Luke
Just found this Luke.
“serproxy. Available on the main Arduino software page, probably sourced from here. Original here is older, but the zip has a detailed readme and a more readable config file. Serproxy handles multiple serial ports, configured with a text file.
* a fast *.exe executable. Not quantified, but feels faster.
* multi-threaded and can redirect multiple com ports to multiple sockets simultaneously.
* Can close and re-open client (e.g. flash), and it still connects.
* No ‘debug’ option to view traffic?
* Mac, Win and probably (old version at least) Linux.
* Source code available.
* How to modify 0.1.3 to use com10 or above here.
* Does not work on Mac 10.6 without installing Rosetta.
Here is the link http://www.arduino.cc/playground/Interfacing/SerialNet
I have not seen this before. I don’t remember installing Rosetta every but I have had mine going on the Mac for a while. Prior to 10.6 anyway.
Also, found this…
UPDATE : Serialproxy doesn’t work anymore under Snow Leopard ( osx 10.6 ) without installing Rosetta. However you can also use Tinkerproxy2. That works in the same way as Serialproxy. Just rename your serproxy.cfg to tinkerproxy2.cfg or you can rename the program tinkerproxy2 to serproxy. tinkerproxy-2_0.zip
Link is http://www.kasperkamperman.com/blog/arduino/arduino-flash-communication/
I will try tinkerproxy this weekend and see if all works the same.
Does tinkerproxy2 work for you? I couldn’t get it working on my Mac.
When i have the serproxy.exe up and open Goldsprints it says “failed to open comm port – connection refused.”
What does that mean and how do i fix it?
Mac, windows, ubuntu? Post contents of your cfg file.
windows
# Config file for serproxy
# See serproxy’s README file for documentation
# Transform newlines coming from the serial port into nils
# true (e.g. if using Flash) or false
newlines_to_nils=true
# Comm ports used
comm_ports=1,2,3,4
# Default settings
comm_baud=19200
comm_databits=8
comm_stopbits=1
comm_parity=none
# Idle time out in seconds
timeout=300
# Port 1 settings (ttyS0)
net_port1=5331
# Port 2 settings (ttyS1)
net_port2=5332
# Port 3 settings (ttyS2)
net_port3=5333
# Port 4 settings (ttyS3)
net_port4=5334
#OpenSprints Hall sensors serial_device1=COM2
Thanks for the last comments those really helped me get Goldsprintsfx working.
Now i have a new problem, I just configured the Arduino so the sensors work and light up when swiping a magnet by it but once I click start race it goes 3, 2, 1, go but the go stayes up on the screen and dosent go away.
Windows
If anyone has any suggestions please share them! I really want to get this up and working correctly!
Thanks for the last comments those really helped me get Goldsprintsfx working.
Now i have a new problem, I just configured the Arduino so the sensors work and light up when swiping a magnet by it but once I click start race it goes 3, 2, 1, go but the go stayes up on the screen and dosent go away.
If anyone has any suggestions please share them! I really want to get this up and working correctly!
Yeap! I got the same issue last night and was wondering why. It seemed as if the the Arduino board didn’t know what to do with the signals coming from both the sensors and the laptop. So, this is what I did and it worked:
I downloaded and installed the Arduino IDE (http://arduino.cc/en/main/software). Then I downloaded the firmware from the opensprints site (http://www.opensprints.com/download/basic_msg.zip). Basically, this contains a program (basic_msg.pde is the file you are interested in) that is loaded to the Arduino board through the Arduino IDE. This code programs the board to initialize the “racing process” when the right message is inputed and to know what to do when the sensors send back messages (with the magnet).
So, open Arduino IDE, connect it to your board (tell it that it is the “arduino duemilanove” board and give it your serial port number) open and load the basic_msg.pde to the board. Here are some instructions: http://www.opensprints.com/howto_update_firmware.php. You’ll notice the sensor being stuck with only a red led on. That’s a good indication.
Now, you’re ready to turn on serproxy and then GFX. From that point on, it worked for me.
Hello fron Greece – I have exactly the same problem – 321-GO and nothing happens,
please any suggestions?