Cannot connect to Rodeostat with web app software

  • I have the Rodeostat connected to the USB on surface Pro3 running on windows 10. Ther serialport bridge software is running and connected to localhost.
    The webpage is opened with Firefox. After connected to the serial port, the option COM3 (only one) is selected, and the toggled to open the serial port.

    However, the firmware version and hardware variant does not appear and the message

    Message from serialport bridge reads:
    { "open": { "msg": { "port": "COM3", "options": { "baudrate": 115200, "timeout": 10 } }, "rsp": { "success": false, "serialPortInfo": { "portName": "COM3", "baudRate": 115200 }, "ports": [ { "device": "COM3", "name": "COM3", "vid": "16C0", "pid": "0483", "manufacturer": "Microsoft", "serialNumber": "2741590", "product": "" } ] } } }

    Then I tried to run the tests, but nothing shows up on the screen. Also tried with Microsoft Edge browser but the same message appear. What is the issue with the connection?

  • @James

    It looks like the device is correct - i.e, the vendor and product IDs for teensy are right (vid=16C0 and pid=0483) However, for some reason it looks like the software is unable to open USB/serial connection to the teensy. The "success": false part of the message is saying that the software is unable to open the device. I'm not sure why this is. Is it possible that some other software already has a connection open to the devices e.g. the Arduino IDE or a program using the Rodeostat's python library?

  • Hi Will

    Its me again from SUTD. I tried the same software and settings on the Acer laptop. This time, the Rodeostat is able to connect to the webpage, it stated sucess:true. However, I am not sure why my surface pro3 is unable to open the port.

  • @James

    That is good to know. I'm not sure what is happening, but maybe there is some compatibility issue with the surface pro3? At the moment I don't have access to a surface pro3 which I can use for testing, however I will try to locate one.

    Are all the ports on the surface pro USB 3 or are some USB 2? The Rodeostat/teensy 3.2 is USB 2, but should work fine on in USB 3 ports as they should be backwards compatible ... but you never know.

    Another thing you could try is maybe putting a USB hub (maybe even a powered hub) between the surface pro and the Rodeostat.


  • Hi Will,

    I am having a similar issue as James did previously, but connecting with another computer did not fix the issue. When I connect to and open the serial port via the web app, the firmware version and hardware variant does not appear and my message in the serialport bridge is very similar to James's. Nothing is showing up when I run the tests. When I try to use the python programs, it seems I am able to connect to the teensy but I get the error "No JSON object could be decoded." I had the same issue when I tried to connect it using a desktop. Interestingly, the Rodeostat was working three weeks ago without issue -- do you have any suggestions on how to fix this problem? Thank you for your help!

  • @ishk47

    Hi James,

    It looks like your Rodeostat is connecting, but then the software is not receiving the expected json responses back from teensy. This is usually the case when something is wrong with the firmware - e.g. it has been overwritten (teensy reprogrammed), or corrupted, etc. I would try reprogramming the firmware on the teensy,

    Instructions for re-programming the Rodeo firmware on the teensy 3.2

    1.) You will need the Arduino IDE with Teensyduino addon

    2.) Download the latest version of the iorodeo potentiostat repository The firmware - which you will use to re-program the teensy 3.2 - is located in the "firmware" sub-directory.

    3.) Open the Arduino IDE and go to "File -> Preferences" and set the "sketchbook" location to the "firmware" sub-directory mentioned in step 2. Then restart the Arduino IDE - this step is important. You are doing this so that the IDE can find the "firmware/libraries/potentiostat" library which is the library used by the Rodeostat. The restart in necessary as otherwise the IDE won't find the library.

    4.) Re-open the Arduino IDE. Go to the "Tools" menu and set the following:

    • Board = "Teensy 3.2/3.1"
    • USB Type = "Serial"
    • CPU Speed = "72MHz"
    • Port = the USB/Serial port associated with the Teensy 3.2.
    • Optimize = "FAST"
      Note, the "FASTER" setting won't work due an issue with the (older version) ArduinoJson library used by the firmware. This is fixed in the next version of the firmware.

    Note, on linux the port might be something like /dev/ttyACM0 or /dev/ttyACM1, etc. On Windows it might be COM1, COM2, etc. If the "Port" entry in the menu is disabled then it is possible that the teensy 3.2 has been programmed with a USB Type of something other than "Serial". In this case you shouldn't need to set the port.

    5.) In the Arduino IDE open the Rodeostat firmware "potentiostat.ino" file. This file can found in the "firmware/potentiostat" sub-directory of the potentiostat repository.

    6.) In the Arduino IDE build the firmware by pressing the "Verify" button in the toolbar at the top of the IDE. The "Verify" button is the one with the checkmark. If all goes well there should be no errors.

    7.) In the Arduino IDE upload the firmware to the teensy 3.2 by pressing the "Upload" button in the toolbar at the top of the IDE. The "Upload" button is the one with the right arrow. If all goes well there should be no errors.

  • @Will-Dickson

    Thank you so much! We tried rebooting it before with the potentiostat.ino file; however, we had set CPU speed to 96 MHz and Optimize to "FASTER". It is now working with the settings you specified. Thank you again.

Log in to reply