Monday, 27 April 2009

4.17 At Last; and a few other code changes

For quite some time, I've been worried about having to have an accurate timer on the repeater to pace the packets out to the Node Adapter. Whilst I was able to work a system where I had reasonably accurate pacing, it still was subject to glitches as the OS went off to do something else.

So, I've been playing with getting the Node Adapter to pace the packets - i.e just throw the frames at the board over the USB and let the return code tell you when the buffer is full.

Now, this is all fine, and is the same as Mark McGregor (KB8KHM) has been doing with his software for Windows - what was really bugging me was that I just couldn't get this to work at all for Linux.

But, I've tracked down the problem.

The 3.xx code was written for USB low-speed - I could get this to pace correctly, but I wanted to use the 4.xx code (due to many, many bug fixes, especially on RF receive). The 4.code just didn't want to play ball.

Until Satoshi released a low-speed version of 4.17 - plugged it in, fired up the code, and - VOILA ! Perfect audio....

So, it looks like there is an issue with the pacing on the USB 1.1 Full-Speed mode, or on libusb 0.1....

This is Very Good News, and allows me to move forward with other developments such as the G2 integration testing.

0 comments:

Post a Comment