Jump to content
Brian Enos's Forums... Maku mozo!

Doug G

Members
  • Posts

    11
  • Joined

  • Last visited

Profile Information

  • Real Name
    Doug G

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Doug G's Achievements

Looks for Range

Looks for Range (1/11)

  1. I remember reading somewhere on here that the RX line (line containing data coming from the ProChrono) should be tied to ground with a 10K resistor. I've encountered that myself when trying to read data from the ProChrono with an Arduino. I was getting no incoming data even though I could send commands out until I put the resistor in, then it all worked. Perhaps something to try if all else is failing. Might also try 1200 baud, as that's the native ProChrono serial speed acording to the published specs.
  2. Since this thread is talking about wired remotes for the ProChrono, I just wanted to mention another thread I started with instructions for building a stand-alone wired ProChrono remote. Mine is based on the Arduino platform, so no laptop is necessary for remote controlling the chronograph. My remote uses the same cable as the laptop interface does though, just to keep things simple. I posted a short YouTube video of my remote in action. Of course it's just a prototype/proof of concept right now, so it's ugly but it works.
  3. I've seen a few other threads on here about remotely controlling a ProChrono Digital chronograph. We have a wireless remote option as well as a do-it-yourself wired version that uses a laptop computer. As a personal learning challenge, I decided to try making a wired remote based on the Arduino platform using info I gleaned from the other threads. The remote I designed is quite basic but provides the same 5 button functionality found on the front of the ProChrono Digital. It doesn't require a laptop or a smartphone for use; it runs off a 9v battery and connects to the ProChrono with a long 3.5mm "male to male" cable, the same one used to connect the chronograph to a laptop. Depending on where you buy the parts the cost for this remote should be somewhere between $35 and $45. While this seems a bit high, consider that the "official" remote control from Competition Electronics retails at $90-$120. Of course, theirs comes with a warranty and a printing feature that my home grown design doesn't include. The attached PDF and Arduino sketch should provide enough info info for most do-it-yourselfers to build the remote. While I'm happy to answer questions, I'm no expert. In fact, this was my first shot at an Arduino project. I realize this isn't an electronics forum, so I'm not going to post a bunch of tech specs and such now. I think I've included everything in the attachments, but I'll update them as necessary. If anyone finds any problems or can make any improvements to this project, by all means please make them known. I'm hoping that by sharing this info others might find ways to improve upon what I've done. Thanks to M852, BenOz, w0fms, and the many others on here for their work and shared contributions to the ProChrono Remote projects. -Doug Edit: I uploaded a YouTube video of the prototype remote in action: http://youtu.be/_YYv5aHdFIU Arduino Based Wired Remote Control for ProChrono.pdf sketch_ProChrono_Serial_v0.10.txt
  4. Anyone got any feedback? Good? Bad? etc I hope to test this before too long -- just ordered the rest of the stuff I need to build my BlueTooth interface for the ProChrono. I haven't been to the range since you posted the app, and I've been working on a wired Arduino remote controller for the ProChrono in my spare time. It'll be a while until I get everything I need built to use the app, but I'll give you some feedback once I do. Right now I'm fighting with getting the ProChrono to talk to my Arduino... I can send commands just fine, but am not able to get any valid response back. I think I need a 10K resistor on the RX line, at least I believe I read that somewhere on here. Gotta do a little more research... EDIT: Yes, the 10k resistor between the ProChrono transmit (Arduino RX) and ground solved my problem. Yay!
  5. I'm working on the Arduino side. So far I've converted the checksum code to "Arduino" C and have the Arduino talking to the proChrono through a serial cable (which I just got working this AM before my wife put me to work on the "Honeydo" list). My eventual goal is to have a remote control that duplicates the ProChrono LCD screen readout and provides basic functionality like Change String, Delete Shot, etc. When I get a basic sketch working reliably for the remote control I'll post it to a new thread (don't want to hijack this one). I have no plans to duplicate the ProChrono remotes printer interface as I don't have a need for that, but I would like to remotely control the proChrono without having to drag my laptop to the range. I'm happy to share whatever code I have with all interested parties; the more we work together the faster things get done.
  6. The phone idea is a good one, don't get me wrong. In fact, I'd prefer it for exactly the reason you mentioned. However, no one has posted a phone app yet (that I'm aware of) although I have seen some pictures on here. But there are folks without smart phones, so a stand-alone remote might be useful to some. It's something I'll work on as time allows, but it'll be slow going for me. If someone would put the phone app out there I think many folks would find it useful. Heck, it's something I'd happily pay for if it worked reliably with the bluetooth adapter that's been posted in this thread. The CED wired remote is $90 without a remote display but I think an Arduino version could be made for under $30 -- WITH a remote display.
  7. OK, so here's a question... We've got bluetooth working on the Prochrono, I've seen pictures of a smartphone app on here that will work with the bluetooth (and I'd love to get my hands on a copy to play with!!) But would it be worth the time/effort to build a wired or wireless remote for the ProChrono that doesn't rely on a phone or a laptop? I think it would be relatively easy to use an Arduino with either a wire or Bluetooth to communicate with the ProChrono and act as a remote display and control. Being relatively new to the whole Arduino platform I'm familiar enough to be dangerous with it but not knowledgeable enough to come up with something on my own. Anyone want to work on this idea? I'm going to try to mess around a bit on my own but I'm not real fluent in C so the going is slow. I think using the Arduino platform would allow a number of people who wanted a cheap remote to make one without getting too deep into bits and bytes, soldering and circuits. Anyway, it's something that I'm going to play with as time allows, but there's a lot more expertise on this board than I have, so what takes me weeks might take one of you a couple days or even hours. Or maybe someone's already done it but just not posted? Just throwing it out there...
  8. Believe me, I pounded my head against the wall trying to figure the checksum out as well, thinking the same way you did. I did what was written (or so I thought) but it didn't work... so I just kept plugging away until I came up with the answer. It took a while, but was a major win when the numbers finally worked out. Glad to see it wasn't just me!
  9. As I'm not an electrical engineer I don't have a lot to add to this thread except "Awesome job guys!" but I do a little coding on the side and have dabbed with serial communication and the Prochrono. I haven't written anything except a "test" program to get and extract data so far, as well as issue a few commands. The project took a back seat to some of my other hobbies lately. Anyway, the following code is what I use to verify the checksum of data received from the ProChrono. It's pascal/Delphi code and isn't written in the most compact or efficient manner, but it's easy to read and makes sense. For those of you who understand bit manipulation you can do it quicker and with less code, for me this was the easiest way. For those writing apps to deal with the ProChrono data, it might help explain how the checksum is calculated. { To calculate checksum, add up the ascii codes of all the individual characters in the string EXCEPT for the : and the last 2 characters in the string (the checksum) Convert the decimal total of the ascii values into a hex string. (ie 1566 would become $61E) Take just the last 2 digits of that hex number as a one byte hex value and sutract it from $100 (ie $100-$1E) The result (in hex) should match the last two characters in the string. There's a lot of converting from string to numeric and back going on in this function. Here's a real world example. The string we received from the ProChrono is :1403030A7F30002E002D0000002F3F First we add up the ascii value of '1' (which is 49) plus the ascii value of '4' (which is 52) etc. We do this for all characters EXCEPT the colon at the beginning and the last 2 checksum characters in the string ('3F'). The total of all the ascii values is 1473, which equals $5C1. Take the least 2 significant digits of the HEX number, which is $C1. Subtract that from $100 to get $3F. The '3F' matches the last two characters in the string we received from the ProChrono, so the string is valid. } // Note -- this function will ignore a colon but will include ALL bytes in the checksum calc so the 2 checksum bytes should be removed first! // function CalcChecksum(sdata:string):string; var x,asciitotal,hexvalue:integer; hexstring:string; begin asciitotal := 0; for x := 1 to length(sdata) do // for every ascii character in the string... begin if sdata[x] <> ':' then // except the colon asciitotal := asciitotal + ord(sdata[x]); end; // showmessage(inttostr(asciitotal)); hexstring:= IntToHex(asciitotal,1); // convert the ascii value total to a hexidecimal string // get the 2 least significant hex digits of the hex string // ($50D becomes $0D, $2EC becomes $EC, etc) hexstring := rightstr(hexstring,2); // convert the hex digits to a numeric hex value so we can subtract it from $100 hexvalue := StrToInt('$' + hexstring); // subtract from $100 and convert the result to a hex string value once again. result :=IntToHex($100-hexvalue,1); end;
  10. I've decided to play with my Chronograph and computer and am in the process of writing an experimental remote control program for it using Delphi XE2. It's working on a very basic level, in that I can transmit and receive data from the unit. Basic remote control functionality is working, similar to the software provided by Competition Electronics. I asked for and have received a copy of the communication protocol used by the unit, including the definitions of the data packets. This was sent to me by their tech support folks, I just used the form on their page to send an email request for the protocol info. If anyone is still working on a bluetooth/smartphone interface then I'd highly recommend you ask for the protocol sheet. I'm not sure what the legalities are about posting it on a forum, so I'd rather you obtain it from them instead of me, but wanted to let everyone know that it's available to us upon request.
  11. Have you installed the driver for the cable you're using? Not sure whether the driver for the ProChrono product is the same as for the Digikey cable, but that could be an issue. Also, you need to make sure you've got the correct com port selected. The ProChrono software might not automatically choose the correct one. Just a guess... I have the proChrono cable, not the Digikey one.
×
×
  • Create New...