The other day I was at a garage sale and picked up an old, dead TI-83 plus Graphing Calculator from 1999 for a buck. It just needed some batteries and some TLC, and now it's in working condition. I want to play around with it a little more, and put on applications that will be useful for me. Rather than spending the $20 on the cable, I figured I would learn a little, and turn it into an Arduino Project. Because the only I/O on the hardware is a 2.5mm headphone jack, somehow I had convinced myself that this would be fairly easy and it only took a little while for me to realize I had no idea what I was doing. I am not very experienced with Arduino, but I can program with Processing and I know the basics of using an Arduino. I took an old cell phone headset with a 2.5mm jack, cut it up after making sure it fit the calculator and put the two leads leading from the calculator into the Arduino (Uno) Analog ports 0 and 1 (Should I be using digital??). I then went to the computer to program the Arduino and that's when I realized I had no idea what I was doing. The original plan was to simply relay information in from the Analog ports the calculator was connected to to the serial port on the computer and the reverse through the Arduino to the calculator. It didn't take long for me to realize I had no idea how to do that.

I read this:,19413.0.html and discovered I was in over my head. Despite this, I want to continue with the project. I understood most of what was discussed on the above page, but I don't know how to apply it to my situation. That user was attempting to make the calculator interact with Arduino, but I want it to simply be relayed through the Arduino to the computer. I know a little about the protocols the calculator uses, but not enough to allow me to completely understand the program that I probably will have to create. After a useless post on the Processing Forums, and another unanswered post on the Arduino forums I am still in the dark. I can program an interface in Processing for transferring files if necessary, but I would love the simplicity of it just being able to work with the standard TI Connect software. I am determined to learn from this experience and will only give in and purchase the necessary cable if nothing at all can be done for my situation. All help is be appreciated.

Doctor Bacon, Phd
Welcome, Doctor Bacon! I will take a look at your post in the Introduce Yourself thread, but for now, I recommend you first pore over the code that I wrote for sending and receiving streams of bytes to and from the calculator, here:

Secondly, it sounds like you want to create a clone of the SilverLink cable that TI-Connect will talk to; is that accurate? Let's talk more about what exactly you want to make.
I read the stuff that was on that page, but I don't really know how to apply it to my situation, I am still new to TI graphing calculators. I think that what you said is accurate, I want to basically clone the graph link cable. All I really want to do is be able to put applications on the calculator. It would be preferable to use the TI Connect software, but if I need to program my own interface I can. The first step, at the moment, is making the calculator communicate with the Arduino so that that information can be sent through the computer's serial connection to whatever file transfer interface I end up using.
In other words, I pretty much need exactly what you said.

~Doctor Bacon, Phd
In order to clone the USB SilverLink, you'd have to do an unreasonable amount of work, I think. You'd have to figure out what the device identifier as, what descriptors it exposes, what commands it accepts, etc. An "easier" choice might be to reverse-engineer the BlackLink, as that is a serial-to-TI protocol adapter and would be (relatively) easy to emulate with an Arduino once you reverse-engineered it. My routines that I linked to let the Arduino send and receive streams of bytes in TI's link protocol, so you need to receive incoming serial data and figure out what TI-Connect is instructing the BlackLink to do, and also figure out how to send packets back over serial when the calculator sends them.
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum