My new board has working USB, Ethernet, power, and audio! I did a board revision previously which I did not log, where I made two silly mistakes which prevented that version from working. Here is the largely working board:
I say "largely working" because there is an issue with one USB port, but this isn't due to the PCB design, it is due to my assembling an SMD board by hand XD
So, I can now connect whatever devices I need/want to my Teensy very easily for building another Arduino Desktop. One USB port is just not enough. Now the last thing I'll need is a video card of some kind, either my #uPD7220 Retro Graphics Card (and VGA hack) project or the #RA8875 VGA card will do.
The only thing I really want to improve at this point is the audio circuit - specifically how it pulls power from the main 5v rail, because it causes some noise (although it does sound pretty cool...). Here is the audio circuit on this board:
This circuit is basically just a DAC and an op-amp, with some power circuitry, which is *designed* to clean the noise from the signal. For the most part, it does do that, but if VDC is 5v or lower then it fails miserably, and the user can hear the noise. This power circuit basically switches between an LDO and the main 5v rail for providing the 5va rail to the amplifier. If there is no power available other than USB or a low VIN voltage, then it switches to the main 5v line, which introduces a lot of noise from the rest of the system, and typically also from the device at the other end of the USB cable too. I also suspect that there is something else at play making this worse, perhaps the LDO being backfed or some instability in the 5VA line when coming through the LM66100. Likely noise is also coming through the two resistor dividers before the amp, since it is connected to the 5VA line directly.
The only other thing, is that this circuit is VERY loud. The design, is that the volume can be controlled digitally by scaling the PCM data going to the DAC. Well, perhaps controlling volume a different way could improve sound quality, both because it could reduce noise, and because it would avoid compromising the PCM data precision.
In the next board revision, which I'm not rushing towards as this works well enough, I plan to add more filtering to the system 5v line before feeding into the audio circuit, and to consider adding some feature for analog control of the volume of the audio circuit. Everything else is working great though!
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.