error connecting to Cyton Board [resolved, old firmware]
Hi! I recently tried to connect a Cyton board (the same as the attached image) but I got an error when I try to connect it to the GUI. I'm using GUI v.5.0.3 and the board is Cyton V3-32. The dongle is recognized but the trouble appears when trying to connect to the board. I've tried different usb ports for the dongle but no success. This board was kindly donated by Taran from Linus Media, and we are trying to set it running for our projects. Please any help would be appreciated.
This is the Log I get.
Console Log Started at Local Time: 2021-03-23_15-05-33
Screen Resolution: 1366 X 768
Operating System: Windows
Welcome to the Processing-based OpenBCI GUI!
For more information, please visit: https://openbci.github.io/Documentation/docs/06Software/01-OpenBCISoftware/GUIDocs
OpenBCI_GUI::Setup: GUI v5 Sample Data exists in Documents folder.
ControlP5 2.3.1 infos, comments, questions at http://www.sojamo.de/libraries/controlP5
TopNav: Internet Connection Successful
Local Version: v5.0.3, Latest Version: v5.0.3
GUI is up to date!
CP: Playback History Size = 2
OpenBCI_GUI::Setup: Setup is complete!
sourceList: click!
Channel count set to 8
ControlPanel: Found Cyton Dongle on COM port: COM9
-------------------------------------------------
ControlPanel: Attempting to Auto-Connect to Cyton
-------------------------------------------------
ControlPanel: Found Cyton Dongle on COM port: COM9
CytonAutoConnect: Error reading from Serial/COM port
[WARN]: Found a Cyton dongle, but could not connect to the board. Auto-Scanning now...
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
CytonAutoConnect: Error reading from Serial/COM port
[ERROR]: Unable to connect to Cyton. Please check hardware and power source.
ConsoleLog: Copying console log to clipboard!
Comments
@wjcroft Does this need a firmware update?
Richard and Rmib, hi.
Yes, I believe Taran purchased this multiple years ago, and the firmware likely needs updating both the two RFduinos (dongle and mainboard), and the main cpu, PIC32 / chipKIT.
https://github.com/OpenBCI/OpenBCI_Cyton_Library/blob/master/UPGRADE_GUIDE.md
https://docs.openbci.com/docs/02Cyton/CytonRadios
https://docs.openbci.com/docs/02Cyton/CytonProgram
William
Just to verify the boards work, could he first try a very old GUI version? Which one?
I think it would be easier to use the Cyton SDK and Arduino Serial monitor to check board version. Another way is to run GUI v4.2.0 and it might print the Cyton firmware version to the console log.
Richard, thanks. Other programs which are known to work with the original Cyton serial port protocol are BrainBay and OpenViBE.
This is the Log that I get when using GUI v.4.2.0.
I guess the Cyton firmware is v1.0.0
@wjcroft @rmib200 My Cyton with latest firmware shows v3.1.2 using GUI v4.2.0.
Btw, I tried with an older version of the GUI v3.4.0 and also no luck
Upgrade instructions are thorough and straightforward,
https://github.com/OpenBCI/OpenBCI_Cyton_Library/blob/master/UPGRADE_GUIDE.md
https://docs.openbci.com/docs/02Cyton/CytonRadios
https://docs.openbci.com/docs/02Cyton/CytonProgram
@wjcroft Do I need to upgrade to v. 2. 0 first and then upgrade to v 3.0? or can it be upgraded directly to v.3?
Follow the steps at "Upgrading to 2.0.0" in,
https://github.com/OpenBCI/OpenBCI_Cyton_Library/blob/master/UPGRADE_GUIDE.md
Going from 2 to 3 is just a new PIC32 mainboard firmware. You need to upgrade the RFduino radios first in the "Upgrading to 2.0.0" steps, since you have firmware 1.
@wjcroft Hey there! I've been trying to follow the guide but I'm stuck in one step.
---In the Arduino IDE 1.5.8 go File-->Examples-->OpenBCI_Radios-->RadioDevice32bit which will launch the Device firmware.
I unzipped the folder with the OpenBCI_Radios and from the Arduino Examples list I cannot find the "RadioDevice32bit" option. I looked many times but I don't find an exact (or similar) option. Could I have done something wrong? Or maybe the option that I'm looking for is under a different name ?
Hi!! I managed to get this far. I followed the tutorial for the usb dongle and now I'm trying to update the board. With Arduio 1.8.15. But I get this error.
The board still is not recognized by the GUI. It seems that the problem arises when the code is being uploaded to the Cyton board.
I'm using ChipKIT core 2.0.6.
What can be done to solve this issue??
Did you complete all these steps in the order required? Which steps were successful, and which are not? To be upgraded are the two RFduinos (mainboard and dongle), and the PIC32.
https://github.com/OpenBCI/OpenBCI_Cyton_Library/blob/master/UPGRADE_GUIDE.md
https://docs.openbci.com/docs/02Cyton/CytonRadios
https://docs.openbci.com/docs/02Cyton/CytonProgram
I would say that all the steps where succesful until this last one. Is there a way to make sure that the Pass Thru Radio Firmware was correctly uploaded to the Cyton Board?
Can you answer my question? Which chips have been successfully reprogrammed?
Your photo seems to imply that you are at the VERY FIRST step in the three chip reprogramming. This first step reprograms the mainboard RFduino (called the 'device'), using the dongle RFduino ('host') as a passthrough.
https://github.com/OpenBCI/OpenBCI_Cyton_Library/blob/master/UPGRADE_GUIDE.md
https://docs.openbci.com/docs/02Cyton/CytonRadios#uploading-device-firmware-to-cyton-board
Are you certain about this statement? Your photo seems to show NOT the last step, but the first. (Programming setup for flashing the mainboard RFduino.) The pass thru program is loaded onto the dongle, so that it can then be used to reprogram the mainboard RFduino, via the link below. This uses hand held contacts to the underside of the board.
https://docs.openbci.com/docs/02Cyton/CytonRadios#uploading-device-firmware-to-cyton-board
I'm not on the first step. I've completed the steps on the Cyton Radios. Just sending the pic to confirm that. I'm trying to upload the Cyton Firmware. Is there a way to check if the previous steps where done correctly? I don't know anything about hardware so I'm pretty much working blind here. A little help wouldn't be bad.
OK, your photo confused me, it looked like you were setting up the passthrough. Did you get all the correct messages from the Arduino IDE app, as you completed the firmware uploads to the mainboard ('device') RFduino, and dongle RFduino ('host') ?
If your RFduinos are healthy, you should be able to use the features in the OpenBCI_GUI that change or adjust the radio channels.
https://docs.openbci.com/GettingStarted/Boards/CytonGS/#5-optional-settings
Expand section 5 by clicking the arrow. Try the commands: Get Channel, Change Channel, Autoscan.
I tried re-doing all the steps in the tutorials and I got an Error during the Cyton Board Programming. I've put the board on Bootloader mode, try to upload the code of the DefaultBoard script and got an error that says "No target found." At the moment I tried with Chipkit v 1.3.1 and the 2.1 (newest). Both return the same error.
From the OpenBCI_GUI I've tried to check the status and got this message:
"Error reading from serialport. Try a different port?"
I've tried changing the port and using a different computer but the error stills the same.
So far, the only script that is giving me trouble is the Cyton Programming "DefaultBoard" in the arduino 1.8 , in all of the others scripts from Radio Programming I got a message that said "Succesful!".
Also, I have a couple of questions of the procedure where a clarification may be useful. Should the Cyton be turned on or off during the procedure where the jumpers needs to be touching the right position? Should the pins be touching the Cyton board for the Cyton Programming part? Is there a way to connect the Cyton board directly to the PC?
Please help, I don't know what else to do.
Did you see my previous comment, about verifying that the RFduino's (dongle and mainboard) are correctly 'talking' to each other??
Fixed "Optional Settings" link above.
Yep, I also post the error I got when I verify the RFduino on the GUI on my last post.
Did you try the AUTOSCAN button?
yes
I'm not sure that I am communicating my intention with you correctly. The purpose of verifying that the two RFduino's are communicating with each other, is that this communications channel is how the mainboard PIC32 is re-flashed. If the RFduino's are not able to change channels or AUTOSCAN, it means that the RFduino firmware reflash was not successful. Thus you need to repair the broken RFduino's first, before you can flash the PIC32.
https://github.com/OpenBCI/OpenBCI_Cyton_Library/blob/master/UPGRADE_GUIDE.md
https://docs.openbci.com/docs/02Cyton/CytonRadios#uploading-device-firmware-to-cyton-board
This is my procedure in order: (During the Cyton radios programming tutorial)
Then I did the Cyton Programming tutorial (This is my procedure in order):
Select DefaultBoard.ino from Examples ->File-->Examples-->OpenBCI_32bit_Library-->DefaultBoard-> Dongle switch is set to GPIO6 -> Put Cyton on Bootloaded Mode -> Board it is blinking -> Upload the Firmware -> Result "No target found." Error.
Then I've tried with the latest chipkit core but still got the same result. "No target found."
At this point I once again go back to the OpenBCI GUI and pressed CYTON -> Serial (from Dongle) ->AUTO-CONNECT-> "Dongle is connected but couldn't connect to the board." -> Manual settings (My GUI doesn't have a button that says OPTIONAL SETTINGS) -> AUTOSCAN -> "Dongle is connected but couldn't connect to the board." -> SYSTEM STATUS -> "Error reading from serialport. Try a different port?"
I've tried with two different PCs. What am I doing wrong?
The pass through program must be put on the dongle, BEFORE flashing the mainboard RFduino ('device').