Forums › BB Series Discussions › Linux drivers missing bbSetTgReference
- This topic has 6 replies, 2 voices, and was last updated 8 years, 3 months ago by
Robert Bowmaker.
- AuthorPosts
Robert BowmakerParticipantHi,
I understand that Linux drivers are provided with no guarantees, but I’d like to request if you could please add bbSetTgReference to the Linux drivers? I think it’s the one missing little piece in my system (I need the TG to output its reference.)
Thank you so much for providing Linux drivers by the way, it’s enabling a whole unanticipated usecase!
Robert BowmakerParticipantI’m also having no luck calling bbAttachTg; it returns -14 [bbDeviceConnectionErr] whether the TG is plugged in or not. For reference, lsusb has this listed for the TG:
Bus 003 Device 036: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
Any suggestions would be greatly appreciated.
I’d love to help out in any way possible, having written both USB firmware and software in the past — although of course I’m slightly limited in my ability to debug binary libraries! I’ve attached the dmesg output while the TG is plugged in, in case it helps.
Attachments:
You must be logged in to view attached files.
Justin CrooksModeratorIt sounds like the code for the TG is not working in Linux. I doubt the TG was tested in our Linux release, and there is probably some debugging that needs to be done. I will let the programmers know. The TG’s USB interface is FTDI 0403:6001.
Do you mostly need scalar sweeps, or CW signals, from the TG?
Justin CrooksModerator- This reply was modified 8 years, 3 months ago by
Justin Crooks.
I don’t know how long it will take us to get to TG-linux compatibility, but if one were to snoop the USB bus, one would see setting internal reference out sends: ‘R’, 0x02, 0xC0. One might recognize 0xC0 as serial line internet protocol from way back.
Then one might set amplitude to maximum and observe ‘A’, 0x00, 0xC0.
One might finish by snooping to see that outputting 10 Hz sends ‘F’, 0x01, 0x00, 0x00, 0x00, 0xC0. One might then try 2560 Hz and see ‘F’, 0x00, 0x01, 0x00, 0x00, 0xC0.
One could then decide whether to wait for Signal Hound to implement Linux TG compatibility, or to forge on ahead.
Justin CrooksModeratorIf it were a TG124, one might further observe above 4 GHz, ‘M’, 0x02, 0xC0, and then dropping below 4 GHz, M, 0x01, 0xC0.
Robert BowmakerParticipantJustin,
One might have been doing a bit of snooping last night after sending your message, and figured out a couple of those details! I very much appreciate the hints, that completes the picture nicely.
To answer your question, my particular use case requires CW (so one might say I have everything I need), but of course it would be wonderful if scalar sweeps worked as well.
Thank you so much!
Robert BowmakerParticipant- This reply was modified 8 years, 3 months ago by
Robert Bowmaker.
Just wanted to make a note that I’ve got this working, very rough code is available here:
https://github.com/Hueburtsonly/doppler
On my computer, I had absolutely no luck with libftd2xx, which is the official FTDI library, the one included with the Signal Hound drivers (it simply couldn’t find the virtual COM port, even though lsusb was listing it). However libftdi, the alternate version of the same library, worked flawlessly straight away. So for Linux I’d recommend libftdi to other customers, as well as the dev staff at Signal Hound.
- This reply was modified 8 years, 3 months ago by
- AuthorPosts
You must be logged in to reply to this topic.