WouterJD / FortiusANT

FortiusANT enables a pre-smart Tacx trainer (usb- or ANT-connected) to communicate with TrainerRoad, Rouvy or Zwift through ANT or Bluetooth LE.
GNU General Public License v3.0
146 stars 78 forks source link

CYPLUS ANT+ Dongle - "Device does not work correctly" error #65

Closed ElDonad closed 4 years ago

ElDonad commented 4 years ago

Hello ! I have in mind since a few days to connect my old i-magic trainer to Zwyft, and I have bought two ant+ dongle (from Amazon, labelled CYCPLUS, id 0fcf:1008, Dynastream Innovation Inc.) and tried to run FortiusANT as well as antifier both on my linux and windows machine.

So far I haven't been able to run it successfully as I encountered several problems. Maybe would you have a clue about what it is ?

So, on linux the ANT didn't allow connection (errno 16: Busy) and I managed to overcome that by disabling the kernel drivers on code (basically copy-paste of https://stackoverflow.com/a/36505328). Now the ANT device is recognized as well as the trainer, but as soon as I click "Start" the console get flooded with read/write error (errno 30), happening directly after the dongle reset, from what I have been able to debug.

On windows the situation is the same, the ANT device is recognized as well as the trainer, but on clicking start I get this :

19:03:21,672: ------------------
19:03:21,672: Version info for the components
19:03:21,673:         FortiusAnt = 2020-04-07
19:03:21,673:          antDongle = 2020-03-31
19:03:21,674:             antHRM = 2020-02-18
19:03:21,675:              antFE = 2020-02-18
19:03:21,675:              debug = 2020-03-04
19:03:21,676:  FortiusAntCommand = 2020-03-25
19:03:21,676:      FortiusAntGui = 2020-04-07
19:03:21,677:            logfile = 2020-03-24
19:03:21,677:    structConstants = 2020-01-25
19:03:21,677:         usbTrainer = 2020-03-29
19:03:21,678:           argparse = 1.1
19:03:21,678:              numpy = 1.17.4
19:03:21,679:             pickle = 4.0
19:03:21,684:           platform = 1.0.8
19:03:21,685:       sys (python) = 3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:21:23) [MSC v.1916 32 bit (Intel)]
19:03:21,685:                usb = 1.0.2
19:03:21,686:                 wx = 4.0.7.post2
19:03:22,210: Dongle    receive: synch=0xa4, len= 1, id=0x6f Start up             , check=0xea, info="20"
19:03:22,233: Dongle    timeout
19:03:22,234: Dongle - Using CYCPLUS dongle
19:03:22,234: Tacx   - Simulated Trainer
19:03:22,235: ResetDongle()
19:03:22,236: Dongle    send   : synch=0xa4, len= 1, id=0x4a Reset System         , check=0xef, info="00"
19:03:22,737: Calibrate()
19:03:22,737: ResetDongle()
19:03:22,738: Dongle    send   : synch=0xa4, len= 1, id=0x4a Reset System         , check=0xef, info="00"
19:03:23,239: Dongle    send   : synch=0xa4, len= 2, id=0x4d Request Message      , check=0xbf, info="00 54" msg=0x54
19:03:23,239: Dongle    drop   : synch=0xa4, len= 1, id=0x6f Start up             , check=0xea, info="20"
19:03:23,263: Dongle    timeout

and then `SendToDongle write error, reaping request failed, win error : a device attached to the system is not functionning, and multiple ReadFromDongle read error.

So the problem seems to come from the dongle, however running antifier from linux, which from what I understand uses instead the serial interface of the dongle, I was able to connect from Zwyft to antifier (even if the head unit wasn't supported).

So here I am. I don't know what I could try next or event where the problem come from. Has someone any clue ? Thanks a lot in advance...

aegisdesign commented 4 years ago

Excuse me joining in here. I've just received a couple of these CYCPLUS dongles, ordered about 10 days ago so predating this thread unfortunately. I'm getting similar issues on my Mac.

If there's code to test on a Mac I can do that.

mattipee commented 4 years ago

Hi, welcome.

There's a one line change you might make for a quick test, please.

If you're happy to go in and edit a little code, in the file pythoncode/antDongle.py, find the function:

def ResetDongle(devAntDongle):
  if debug.on(debug.Data1): logfile.Write ("ResetDongle()")
  messages=[
    msg4A_ResetSystem(),
  ]
  rtn = SendToDongle(messages, devAntDongle, '', False)
  time.sleep(0.500)                           # After Reset, 500ms before next action
  return rtn

and please insert one line "return []" to make it read:

def ResetDongle(devAntDongle):
  return []
  if debug.on(debug.Data1): logfile.Write ("ResetDongle()")
  messages=[
    msg4A_ResetSystem(),
  ]
  rtn = SendToDongle(messages, devAntDongle, '', False)
  time.sleep(0.500)                           # After Reset, 500ms before next action
  return rtn

I don't know if you're familiar with Python, but the indentation of lines matters - please make sure for the new line you add that the indentation matches the next line - I think that file has two spaces, rather than a TAB or anything like that.

aegisdesign commented 4 years ago

@mattipee Adding the return [] to avoid the reset has got it working but it still drops out after some random time.

With a bit of testing this morning I'm wondering if it's related to where it is plugged in. If I plug it in to the Macbook Air directly I was getting 3-4 minutes before an errno: none then errno: 19 (disconnected?)

If I plugged it in to a USB extension cable or hub it worked for about 30 minutes till I quit.

If I plugged it in and used Zwift with FortiusAny.py simulating a trainer it randomly quit after anything from a few seconds to 3-4 minutes but never got the 30 minutes I had without Zwift. It's quick to restart and get going again. The dongle that Zwift is using seems to be stable.

I have logs if those help.

ElDonad commented 4 years ago

Yep, we get too these random crashes. Not sure what they are related to, but they happen eventually. I'm currently trying to reconnect the device on the fly whenever they keep happening (but yesterday was celebration day, I did nothing 😋 ). I will post here when I get reliable results !

mattipee commented 4 years ago

@TrevorHunter See https://github.com/WouterJD/FortiusANT/issues/65#issuecomment-622601518

If you're running the python scripts, then you could try the one line change. If you're running the Windows .exe then you won't be able to. Hope we can get you running very soon! :)

mattipee commented 4 years ago

@ElDonad I'm hoping to get some debugging to see what the comms patterns look like at the point of the random drops.

@aegisdesign Interesting that you seem to be seeing variable stability depending on what app/mode you use. Don't know what to make of that yet.

I think on-the-fly restart is a reasonable way to do it. I had been toying with wrapping Tacx2Dongle() on my cycplus branch. Running without GUI, you might as well just run the app in a while loop. But let's have a look at the code and see at what point it makes best sense to catch-and-reconnect.

I think, even if it's a bit hacky to workaround the dongle being odd, we can still get something workable for us, even if there's a second or two of downtime every now and again.

ElDonad commented 4 years ago

For now, I try to capture the usb error during the main loop, wait a small amount of time, then find again the dongle and reinitiate the main loop. Not too difficult to setup, but I won't be able to test it until tomorrow.

I have currently some issues with git, as soon as I have them fixed I will publish my changes to my fork ^^ (still a beginner with this tool...)

EDIT : I just noticed the version 2.6 was just out, and I don't want to break anything by badly merging something. So I will redo the error handling code from scratch with the new version I guess ^^

WouterJD commented 4 years ago

Excuse me joining in here. I've just received a couple of these CYCPLUS dongles, ordered about 10 days ago so predating this thread unfortunately. I'm getting similar issues on my Mac.

If there's code to test on a Mac I can do that.

Hi Shaun, welcome on board! How are you and what Tacx are you using? If you like, sign the #14 page. And YES testing is always welcome. We are trying to get this dongle supported, but it seems a touch job...

ElDonad commented 4 years ago

Alright ! I might finally have a fix ! Would anyone be interested in testing it ? You may run it with -d 127 and try to see if you see any usb error in the console, followed by a message stating if the automatic reconnection has succeeded or not. Thanks all of you ! (here is the fork : https://github.com/ElDonad/FortiusANT)

TrevorHunter commented 4 years ago

Thanks, I can give it a try. I am completely new to Python, can you advise what command line to use? I've installed Python 3.6 and the libraries listed under therequirements file. Got the gui the launch with python FortiusAnt.py -g.... sorry for stupid question, happy to help test if I can?

ElDonad commented 4 years ago

Okay, no problem. Under ./pythoncode, you should run python FortiusAnt.py -d 127 -a. This will launch FortiusAnt in command line mode, with full debug information, and auto start.

WouterJD commented 4 years ago

Or python FortiusAnt.py -d 127 -a -gto have the GUI as well

JordiCostaLo commented 4 years ago

Hello!! If i can help you in windows. Tell me how. thank you

aegisdesign commented 4 years ago

I'm testing it in simulation running Zwift also.

python FortiusAnt.py -s -d 127 -a

The fix solves some of the issue but not all. From the logs it's now reconnecting on error 19 or 32 but occasionally on reconnect it's not finding any free dongles.

14:05:20,018: Target=0.8%(221W) Speed=34.3kmh hr=136 Current=223W Cad= 98 r=   0  15
14:05:21,926: devAntDongle.write exception: [Errno 32] Pipe error
14:05:21,930: Dongle deconnexion caught. Trying to reconnect...
14:05:23,430: GetDongle - Try dongle: manufacturer=CYCPLUS, product= ANT USBStick2, vendor= 0xfcf, product=0x1008(4104)
14:05:23,458: GetDongle - Try dongle: manufacturer=CYCPLUS, product= ANT USBStick2, vendor= 0xfcf, product=0x1008(4104)
14:05:23,501: Dongle - No (free) ANT-dongle found
14:05:23,506: Tacx   - Simulated Trainer
14:05:23,507: AntHRM - Heartrate expected from Tacx Trainer
14:05:23,508: Dongle unreachable. Exiting.
14:05:23,509: devAntDongle.write exception: 'bool' object has no attribute 'write'
Traceback (most recent call last):
  File "FortiusAnt.py", line 520, in <module>
    Console.Autostart()
  File "FortiusAnt.py", line 161, in Autostart
    Tacx2Dongle(self)
  File "FortiusAnt.py", line 110, in Tacx2Dongle
    rtn = FortiusAntBody.Tacx2Dongle(self)
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/FortiusAntBody.py", line 1198, in Tacx2Dongle
    ant.ResetDongle(devAntDongle)
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/antDongle.py", line 394, in ResetDongle
    rtn = SendToDongle(messages, devAntDongle, '', False)
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/antDongle.py", line 571, in SendToDongle
    raise e
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/antDongle.py", line 567, in SendToDongle
    devAntDongle.write(0x01,message)    # input:   endpoint address, buffer, timeout

and I also had this error

14:03:13,529: Target=0.6%(227W) Speed=35.4kmh hr=137 Current=228W Cad=101 r=   0  15
14:03:15,205: devAntDongle.write exception: [Errno 32] Pipe error
14:03:15,212: Dongle deconnexion caught. Trying to reconnect...
14:03:16,577: GetDongle - Try dongle: manufacturer=CYCPLUS, product= ANT USBStick2, vendor= 0xfcf, product=0x1008(4104)
14:03:17,114: Dongle - Using CYCPLUS dongle
14:03:17,114: Tacx   - Simulated Trainer
14:03:17,115: AntHRM - Heartrate expected from Tacx Trainer
14:03:17,116: Dongle successfully reconnected. Continuing.
14:03:18,629: devAntDongle.write exception: [Errno 32] Pipe error
Traceback (most recent call last):
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/FortiusAntBody.py", line 846, in Tacx2Dongle
    data = ant.SendToDongle(messages, devAntDongle, '', True, False)
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/antDongle.py", line 571, in SendToDongle
    raise e
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/antDongle.py", line 567, in SendToDongle
    devAntDongle.write(0x01,message)    # input:   endpoint address, buffer, timeout
  File "/Users/shaun/.pyenv/versions/3.7.3/lib/python3.7/site-packages/usb/core.py", line 948, in write
    self.__get_timeout(timeout)
  File "/Users/shaun/.pyenv/versions/3.7.3/lib/python3.7/site-packages/usb/backend/libusb1.py", line 824, in bulk_write
    timeout)
  File "/Users/shaun/.pyenv/versions/3.7.3/lib/python3.7/site-packages/usb/backend/libusb1.py", line 920, in __write
    _check(retval)
  File "/Users/shaun/.pyenv/versions/3.7.3/lib/python3.7/site-packages/usb/backend/libusb1.py", line 595, in _check
    raise USBError(_strerror(ret), ret, _libusb_errno[ret])
usb.core.USBError: [Errno 32] Pipe error

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "FortiusAnt.py", line 520, in <module>
    Console.Autostart()
  File "FortiusAnt.py", line 161, in Autostart
    Tacx2Dongle(self)
  File "FortiusAnt.py", line 110, in Tacx2Dongle
    rtn = FortiusAntBody.Tacx2Dongle(self)
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/FortiusAntBody.py", line 1188, in Tacx2Dongle
    InitializeDongle(self)
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/FortiusAntBody.py", line 453, in InitializeDongle
    ant.Calibrate(devAntDongle)               # calibrate ANT+ dongle
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/antDongle.py", line 255, in Calibrate
    SendToDongle(messages,devAntDongle)
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/antDongle.py", line 571, in SendToDongle
    raise e
  File "/Users/shaun/Downloads/FortiusANT-master/pythoncode/antDongle.py", line 567, in SendToDongle
    devAntDongle.write(0x01,message)    # input:   endpoint address, buffer, timeout
  File "/Users/shaun/.pyenv/versions/3.7.3/lib/python3.7/site-packages/usb/core.py", line 948, in write
    self.__get_timeout(timeout)
  File "/Users/shaun/.pyenv/versions/3.7.3/lib/python3.7/site-packages/usb/backend/libusb1.py", line 824, in bulk_write
    timeout)
  File "/Users/shaun/.pyenv/versions/3.7.3/lib/python3.7/site-packages/usb/backend/libusb1.py", line 920, in __write
    _check(retval)
  File "/Users/shaun/.pyenv/versions/3.7.3/lib/python3.7/site-packages/usb/backend/libusb1.py", line 595, in _check
    raise USBError(_strerror(ret), ret, _libusb_errno[ret])
usb.core.USBError: [Errno 32] Pipe error

Maybe it's reconnecting too quickly?

mattipee commented 4 years ago

@aegisdesign @ElDonad I did have a sleep for 1 second in my retry-code, precisely because it would look and not find.

ElDonad commented 4 years ago

Yep, I did it too, and it worked fine for me, but maybe even this isn't enough... Maybe I should try to reconnect multiple times to the device before crashing. That certainly would help.

TrevorHunter commented 4 years ago

Not sure if these logs help from commands 'python FortiusAnt.py -d 127 -a' & 'python FortiusAnt.py -d -a -g'

Getting 'Exception: is_kernel_driver_active'

FortiusANT.2020-05-03 14-51-23.log FortiusANT.2020-05-03 14-50-53.log

ElDonad commented 4 years ago

Weird, I added these functions to detach the serial driver on linux, which conflicted with FortiusANT, but since you are on windows, these functions probably aren't available...

As a temporary fix, you can delete lines 485 to 489 in pythoncode/antDongle.py . I will try to make a fix os-detection based, or maybe should I get rid of it ?

mattipee commented 4 years ago

@ElDonad On Linux, the alternative was to remove .ko files from the modules directory, is that right? I know there are udev rules for allowing permissions for user to access the device (vs requiring root), I wonder if there's a similar soft configuration for preventing the serial module from taking the ANT+ device. It might be simpler to avoid OS-based code if there's simple config in the OS - ie it's less code to write, less to maintain. Just thinking out loud.

I should get a chance to test later.

ElDonad commented 4 years ago

No idea, @mattipee ^^ I use linux very rarely, I had to write udev rules to execute the program without root, but I didn't knew there was drivers files I could remove. Good to know, I will take a look at that, but I would preferably not touch system level files on linux, since I barely know half of what I'm doing... I do understand however that os dependant code could cause issues. Maybe turn it into a command line argument, or something ?

TrevorHunter commented 4 years ago

I've now registered with zwift 7 day trial and trying out, first attempt 15 mins without issue. second attempt failed as soon as zwift event started, third attempt failed about 1 minute in.... Please find attached logfile for final run if that helps at all? Cheers Trev... FortiusANT.2020-05-03 17-44-48.log

ElDonad commented 4 years ago

Okay, I see the problem. Have you ever seen in the console messages like "Successfully reconnected" ? It seems like windows doesn't set errnos of the UsbErrors...

I wanted to be subtle and selective, seems like I will just catch all usb errors, then ^^ Thanks windows... Give me a few moments, I get back here when I'm done, shouldn't take tool long.

Done ! Hopefully windows will not give us more surprises !

WouterJD commented 4 years ago

Succes guys with the hard work you are doing together. Please bear in mind that you are solving a buggy device, for which most likely no neat solution is available!

WouterJD commented 4 years ago

I have created a branch to submit code for the work on this issue: https://github.com/WouterJD/FortiusANT/tree/%2365-CYPLUS-ANT%2B-Dongle-support

Elie; perhaps it's an idea you submit your code here using a Pull Request?

aegisdesign commented 4 years ago

Succes guys with the hard work you are doing together. Please bear in mind that you are solving a buggy device, for which most likely no neat solution is available!

I think this is the problem here. Yesterday I also had the dongle that was receiving data into Zwift disconnect and not reconnect so I would guess even if we work around the buggy CYCPLUS dongle in FortiusANT, it'll be an issue elsewhere. I've requested a refund on the two CYCPLUS dongles I have and I'll try a different brand. This may be tricky as there's dozens of these cheap dongles with different branding but identical physical appearance and even images on ecommerce sites but with different logos printed/shopped on them.

mattipee commented 4 years ago

@aegisdesign Thanks for your contributions. Less than perfect dongles, agreed. ANSELF are the go-to. Good luck.

martingeraghty commented 4 years ago

Thanks to everyone for all their hard work on this, you've all inspired me away from my Django development and into some electrical engineering (which is a bit beyond me just now). I'm going to have a look at using Bluetooth as an interface to try to get away from the ant dongles. Note that mine say ANSELF on them but CYCPLUS once connected...

WouterJD commented 4 years ago

Going to bluetooth would imply building bluetooth into FortiusANT or other bridge. Bying working dongles may be a shorter path.

aegisdesign commented 4 years ago

Note that mine say ANSELF on them but CYCPLUS once connected...

Hmm. I can see lots of buy->test->return->refund coming up. I was about to pull the trigger on buying the ANSELF dongles on Amazon.

@WouterJD I'm not sure finding working dongles would be a shorter path!

ElDonad commented 4 years ago

I will do the PR on the branch you mentionned. For the kernel driver detachement on linux, I can try to put it as a separate cl argument, or just remove it if nobody is intrested. You tell me.

Yes, this device seems a perfect exemple of crappy engineering, but as I'm not disposed to buy an ant dongle three times the price of a bluetooth dongle, they will have to do it ^^

@WouterJD thanks to you and your work ! It's already incredible that we are able to use our old trainers with the most recent technologies ! (a little bit disappointed though, I would have assumed that Swift would support steering wheel movements... 😢 )

TrevorHunter commented 4 years ago

Yes a huge thank you to you all for your amazing work. I'd almost given up on using my old trainer, especially as my model only had a 32bit driver from Tacx. I've ordered some new dongles anyway, but they will likely not arrive for a couple of weeks, but will send back the Cycplus ones for a refund (but have up to May 31st to do so), so happy to test any code changes before that time if I can help in anyway?

ElDonad commented 4 years ago

Well, the code we have for the moment "just works", that's all it is required from it honestly ^^ We could dive deeper in the log files to see what exactly is causing the device to reset, but since it is probably an awkward combinaison of poorly implemented software and crappy hardware, I won't bother studying that, for my own sanity !

I would however be pleased if you could try to do an extended run with the existing codebase, to see if the reconnection is reliable enough...

mattipee commented 4 years ago

As optimistic as I was, I had a bad evening with CYCPLUS tonight.

Personally, one for a rainy day. :/

WouterJD commented 4 years ago

I will do the PR on the branch you mentionned. For the kernel driver detachement on linux, I can try to put it as a separate cl argument, or just remove it if nobody is intrested. You tell me.

Yes, this device seems a perfect exemple of crappy engineering, but as I'm not disposed to buy an ant dongle three times the price of a bluetooth dongle, they will have to do it ^^

@WouterJD thanks to you and your work ! It's already incredible that we are able to use our old trainers with the most recent technologies ! (a little bit disappointed though, I would have assumed that Swift would support steering wheel movements... 😢 )

Elie, I understand that FortiusANT works for you right now. Could you please share the code with me (share a link to the working version) I will then integrate in the FortiusANT code base.

"Zwift would support steering wheel movements" --> The Fortius steering wheel cannot be communicated to Zwift, because the ANT FE-C interface does not provide messaging for it. BUT: if you use Zwift Companion and attach it to your steering-wheel, the companion will transmit the movements to Zwift. Please try and let me know.

WouterJD commented 4 years ago

I have created a branch to submit code for the work on this issue: https://github.com/WouterJD/FortiusANT/tree/***-CYPLUS-ANT****-Dongle-support [removed]

Elie; perhaps it's an idea you submit your code here using a Pull Request?

Please retry the PR, I've been experimenting a bit in github and may have lost your input. https://github.com/WouterJD/FortiusANT/tree/65-CYPLUS

WouterJD commented 4 years ago

@ElDonad Thanks for your investigations!

WouterJD commented 4 years ago

@ElDonad @mattipee @TrevorHunter @aegisdesign @martingeraghty @aegisdesign @iainhay

Based upon the investigations done by Elie and Matthew, combined with the invaluable lessons I learned from Matthew last night, error-recovery is implemeted for unwilling dongles.

At first, CYCPLUS dongles don't like the ResetDongle() command, other than at session-startup. So it is disabled.

Secondly, the dongle goes "offline" and must be reconnected. This is what FortiusANT now does: after an error, the dongle is found again and all channels are paired again. So it required some work. In my situation (I have no CYCPLUS dongle) I can remove the dongle while running and pluggin in (even another one) and FortiusANT and ExplorANT continue to run.

So my request to you is to test this from the https://github.com/WouterJD/FortiusANT/tree/65-CYPLUS branch.

If results are positive, I will promote to the master.

--- Target*** variables now survive restart. So please retry

ElDonad commented 4 years ago

Yep, that helped greatly ! By the way, completly unrelated, but Zwift seems to expect imperial miles from the dongle instead of kilometers... Don't know if it is a known issue, but the workaround shoudln't be too hard to develop ^^

Anyway, my dongle's stability is still bad, but I will try with another, more modern pc to see if it changes anything (maybe on windows too, who knows ?). Anyway, thanks a lot for taking the time to support such a crappy piece of hardware when we could just buy a working setup instead ! 😄

ElDonad commented 4 years ago

Oh, and I just read your post about the working version, so sorry, here it is : https://github.com/ElDonad/FortiusANT

Now that I managed to convert it to V2.6, I should be able to PR.

EDIT : come on, did I really PR to the wrong branch ? Shame on me, I change that immediately.

ElDonad commented 4 years ago

BUT: if you use Zwift Companion and attach it to your steering-wheel, the companion will transmit the movements to Zwift. Please try and let me know.

Yes, I saw something like that, interesting workaround ! I might give it a try as well. Thanks for the info !

WouterJD commented 4 years ago

By the way, completly unrelated, but Zwift seems to expect imperial miles from the dongle instead of kilometers... Don't know if it is a known issue, but the workaround shoudln't be too hard to develop ^^

If that actually is the case, please raise a separate issue. I would be curious how this is covered by the ANT+ specs.

TrevorHunter commented 4 years ago

Not sure if this helps, lots of disconnection/connections, however had successful ride on zwift for 31 mins... By the way, I've also bought 2x Suunto dongles which work perfectly, so will be sending back the Cycplus ones, however can hang onto them for another week if helps any debugging?

FortiusANT.2020-05-12 18-31-28.log

WouterJD commented 4 years ago

@TrevorHunter thanks for the logfile. It shows that the CYCPLUS dongle disconnects multiple times per minute and that FortiusANT successfully recovers from the disconnect. It's the best we can achieve I think. Thanks for sharing the experience.

65 can therefore be marked as solved in release 3.0

WouterJD commented 3 years ago

see also https://github.com/WouterJD/FortiusANT/issues/115#issuecomment-710493386

smiley1962 commented 3 years ago

Wouter,

Wel opgelet maar niet goed genoeg blijkbaar, heb 2 van de cyplus dongles binnen gekregen, maar ze geven inderdaad een foutmelding error 110 en error 32. Ik heb niet goed begrepen of je de code hebt kunnen aanpassen of dat ik ze beter kan vervangen.

WouterJD commented 3 years ago

dit komt niet bekend voor; vervangen lijkt me... Dikke pech