#370447 - 29/01/2018 00:19
Re: BlueGigaEmpeg
[Re: caseyse]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Awesome! Thank you! So here's what I've got so far: - JBjorgen wants one where I send him the assembled BlueGigaEmpeg PCB, and he sources the other parts (BetzTechnik board, Arduino board, Enclosure). - Jarob10 wants at least one fully assembled module. Perhaps two; will get final count once stuff is ready to ship. - Daria wants one fully assemble module. - CaseySE wants three fully assembled modules. Currently that's a total of six, perhaps seven, and the majority of folks are wanting them fully assembled. I will try to process them in the order requested in this thread. When I'm ready to ship something I'll contact each of you to find out how you want them shipped, figure out the shipping, and then send you paypal details with the final price that includes shipping. I think I will be ordering all of the Betz boards that he has on order, just to guarantee that I've got a small amount of overstock in case other folks chime in to want more than what's already been posted in this thread. Current status: - I should have my final PCBs in the mail by approx February 2 and can assemble them almost immediately. I have enough Digikey parts on hand to assemble most of them and will order the remainder to come in pretty quickly. - My first 3D printed enclosure box is in the mailbox at home waiting for me, and I'll try it out tomorrow when I get home. I'll make final tweaks based on that, and order the rest of the enclosures to arrive ASAP. - Peter Betz has his order of 10 WT32i boards in process with his Chinese supplier, who likely won't be able to complete his order until after Chinese New Year, which is mid-February. I might be able to get one more in from Peter before that: He had a couple defunct units on his bench that he was able to resurrect with jumper wires because I'd discovered the source of the problem (it was the Via problem mentioned earlier in this thread). John Bjorgen, would you prefer to source the Betz board directly from Peter Betz, so I should leave one with him instead of cleaning out his stock, or, would you rather that I just buy all the ones that he has, and then ship you a fully-assembled unit anyway? Not sure which is easier for shipping to Mexico. As before, reminder to everyone that you need to have the skill level to disassemble your Empeg safely without damaging it, and do the I2S modification. I've been keeping the README.txt file updated, which has much more detail about the work needed to implement this. Feel free to look through that ahead of time: That's your instruction sheet now! Final note: I'm certain that the thing I send you will encounter bugs in the bluetooth software in the future. I intend to keep the software maintained, and I might need to work with you on bug repros if any of you encounter problems. Have a look through the current issues that I'm debugging to get an idea of the level of stability of the code. I use the thing every day now, and I'm at the point where if I encounter any issue, it's rare, and is solved simply by rebooting the bluetooth module. The reboot is super easy: You merely longpress on the top button on the empeg's front panel to put it to sleep, then wake it up again. Sleeping the empeg and waking it up again bounces the power on the tuner connector that powers the bluetooth module.
|
Top
|
|
|
|
#370449 - 29/01/2018 23:40
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 24/01/2002
Posts: 3937
Loc: Providence, RI
|
When do you need/want money?
|
Top
|
|
|
|
#370450 - 30/01/2018 03:03
Re: BlueGigaEmpeg
[Re: Daria]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Only when I've got something completed and ready to ship. I don't have a solid ETA yet but I think we're getting close, my hope is that I'll fulfill orders in late February, though that's just a guess right now.
The only real holdup now is those Betz boards from China. After this first group is done, if anyone wants any more, I'll rethink the design so that I handle the FTDI chip and the WT32i chip myself and cut out the middleman there. I'm just trying to save myself the hassle of SMT soldering all those tiny pads on the WT32i chip.
|
Top
|
|
|
|
#370451 - 31/01/2018 05:18
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 19/01/2002
Posts: 3584
Loc: Columbus, OH
|
Go ahead and acquire the Betz board. It's cheaper to ship just one package.
_________________________
~ John
|
Top
|
|
|
|
#370455 - 31/01/2018 21:38
Re: BlueGigaEmpeg
[Re: JBjorgen]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Cool.
Then in that case it looks like everyone wants fully assembled units so far.
Also, I'm finding that there is some complexity in the assembly and programming of these units that I don't want to wish upon anyone. For the sake of simplifying the instructions, packaging, shipping, etc., I think I'll just offer the "#3" fully assembled version then from here on out.
|
Top
|
|
|
|
#370458 - 05/02/2018 00:35
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Status so far: - Still waiting on a shipment of more Betz boards from China so that I can fulfill all current requests. Sometime in the next few weeks I expect. - I have my first prototype of the 3D printed enclosure, and it works OK but needs some minor tweaks. I'm in-process on the second prototype and I expect that will be the final enclosure design. - I have a set of Rev6 versions of my PCB for the BlueGigaEmpeg interface, one of which I've soldered up and I'm using successfully for the most part. - I got two more Betz boards in the mail from Peter which were "recovered" units, ones that had been sitting on his bench unable to power up due to the Via problem discussed earlier. He was able to jumper them to get them working again. The next set from China (mentioned above) are going to be on a supposedly higher-quality assembly line which will hopefully solve the Via problem. - I'm now running into this pretty serious new bug which I am working very hard to solve before I even consider shipping anything to anyone. This is the main focus of my energy right now. I might have to do a whole new Rev7 PCB to fix this problem.
|
Top
|
|
|
|
#370462 - 06/02/2018 00:40
Re: BlueGigaEmpeg
[Re: mlord]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
I just need to say this: Tony, you are doing a totally awesome and awe-inspiring job on this thing. I dunno who else will want it, but it looks like you are having a lot of fun with it and perhaps learning more than a few things too!
Way well done, Dude!
I didn't get to my empeg implementation over the holidays, and something rather more life important has come up in the interim which could distract me from it for some time yet. So for now, the Arduino way is the only way.
Cheers! Mark, I was going back over the thread searching for some past information, and I stumbled across this post which I must have missed when you posted it a month ago. I think it ended up on the tail of a page before the thread switched over to another page, and that's why I missed it. Just wanted to say thank you so much, I couldn't have done this without you. I hope that the important stuff that's got your attention resolves itself in a positive way. Thank you!!
|
Top
|
|
|
|
#370464 - 06/02/2018 07:11
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Current status: The I2S crackling bug is, I think, caused by RF interference being emitted by the Arduino chip and picked up by the I2S audio data traces on the circuit board. It's going to require a redesign of the PCB to rearrange and reroute stuff. Rev 7 here we come. I think this is going to push the timeline to more like March I'm afraid. But trust me, you're glad I'm working out these kinks now instead of shipping you something that makes crackling noises.
|
Top
|
|
|
|
#370468 - 06/02/2018 22:45
Re: BlueGigaEmpeg
[Re: tfabris]
|
pooh-bah
Registered: 12/01/2002
Posts: 2009
Loc: Brisbane, Australia
|
I'd be quite surprised if RF interference could affect the I2S lines directly. They are relatively low clock rates and even then should have fairly strong drivers.
Do you have access to a scope?
Edited by Shonky (06/02/2018 22:45)
_________________________
Christian #40104192 120Gb (no longer in my E36 M3, won't fit the E46 M3)
|
Top
|
|
|
|
#370469 - 06/02/2018 22:48
Re: BlueGigaEmpeg
[Re: tfabris]
|
pooh-bah
Registered: 12/01/2002
Posts: 2009
Loc: Brisbane, Australia
|
I haven't really followed too much lately but can you start module with your code and then just hold the Arduino in reset or something or put it to sleep? The BT module should continue to play independently shouldn't it?
_________________________
Christian #40104192 120Gb (no longer in my E36 M3, won't fit the E46 M3)
|
Top
|
|
|
|
#370470 - 07/02/2018 00:06
Re: BlueGigaEmpeg
[Re: Shonky]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
I haven't really followed too much lately but can you start module with your code and then just hold the Arduino in reset or something or put it to sleep? The BT module should continue to play independently shouldn't it? I don't have access to a scope but that idea sounds interesting. I'll see what I can do in that regard. (Update: It appears as though all I have to do is ground the RESET pin for as long as I want, so that is a great test, thanks for the suggestion!) I've also been reading some things on the interwebs about how unused input/output pins on an integrated circuit can act as little noise antennas, and the Arduino Mega has a f*ckton of those. I might be able to solve the problem just by pulling them all low (i.e., a code fix instead of a physical redesign). I'm going to try that tonight. More info in the bug thread if you want to join in there.
|
Top
|
|
|
|
#370472 - 07/02/2018 18:32
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Tried a bunch of stuff with the Arduino, including Shonky's suggestion, but got no improvement. I tried putting the Arduino actually to "sleep" with its own sleep commands and got no improvement. Which surprised me. I would have thought that if I could make the noise go away and come back by moving the wires farther and closer to the Arduino, that it had to be the Arduino. But now I'm wondering if the interference is coming from some other part of the Arduino's board. Such as its power supply or its clock crystal or something like that. Shonky, if I had a 'scope, what would I check? Maybe I'll invest in one of those iphone 'scope attachment doohickeys.
|
Top
|
|
|
|
#370473 - 07/02/2018 18:46
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14496
Loc: Canada
|
A real scope will show you the exact voltages of the I2S pulses (bits), the frequency at which they are changing, the shape of the resulting "square wave" digital signals (hint: never really a true "square" wave), as well as the same characteristics of any noise that might be mixed in with the signal.
Figuring out the frequency of the noise would give a decent clue as to its source.
|
Top
|
|
|
|
#370474 - 07/02/2018 18:48
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14496
Loc: Canada
|
Oh, and in case you haven't yet tried it: using smaller value resistor pairs for the I2S voltage dividers will strengthen the signals, giving more headroom for noise tolerance.
Eg. switching from 10K/10K to 5K/5K, or even 2K/2K. At the slight expense of more current draw.
|
Top
|
|
|
|
#370475 - 07/02/2018 20:34
Re: BlueGigaEmpeg
[Re: mlord]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Oh, and in case you haven't yet tried it: using smaller value resistor pairs for the I2S voltage dividers will strengthen the signals, giving more headroom for noise tolerance.
Eg. switching from 10K/10K to 5K/5K, or even 2K/2K. At the slight expense of more current draw. Oh, wow, that is such a good suggestion! I am super excited to try that! I have a pile of 4.7k resistors that I can use for this experiment. By "strengthen the signal", you don't mean a difference in voltage I assume, the voltage will still be 2.5 volts from a 5v source, correct? The additional current draw will be from the Empeg's side of things since it's supplying the power for the signals, correct? This won't risk me frying the Bluetooth chip again, will it? I'm expecting not, since you are already well aware of the issues surrounding that and wouldn't have suggested it otherwise. Wow, I can't wait to get home and try this. Thank you so much. I'm so glad for your assistance through all of this. If this fixes it, I will do a literal happy dance.
|
Top
|
|
|
|
#370476 - 07/02/2018 20:54
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
I'd also like your opinion on power supply stuff. I've tried the power supply four different ways: 5v: - 5v Pololu power supply. - Arduino VIN gets 5v power from Pololu. - Betz board gets 3.3v from Arduino's vreg. - MAX232 gets 5v directly from Pololu, because Arduino's 5v vreg output rail can't supply enough voltage for the MAX232 in that case. - Heat emitted by Arduino vreg: none. 6v: - 6v Pololu power supply. - Arduino VIN gets 6v power from Pololu. - Betz board gets 3.3v from Arduino's vreg. - MAX232 gets about 4.8v from Arduino's vreg, but still seems to work just fine. - Heat emitted by Arduino vreg: hardly detectable. 7.5v: - 7.5v Pololu power supply. - Arduino VIN gets 7.5v power from Pololu. - Betz board gets 3.3v from Arduino's vreg. - MAX232 gets 5v from Arduino's vreg. - Heat emitted by Arduino vreg: noticeably warm. 12v: - No Pololu - Arduino VIN gets 12v power from Empeg tuner connector directly. - Betz board gets 3.3v from Arduino's vreg. - MAX232 gets 5v from Arduino's vreg. - Heat emitted by Arduino vreg: dangerously hot. I really like the idea of using a 5v or 6v Pololu for it, since the heat is the least amount. These are for in-car operation and I'd like to think that I'm running all the circuits as cold as I can run them, so that when cars bake in the summer sun there isn't a problem. Right now I'm running mine with the 6v Pololu and it's been working great (not counting the I2S noise issue, which seems unaffected by any power supply changes when I tried that). The only issue is that the 6v is a hair under the 7.5v that is the expected minimum for these Arduino boards that I'm using. The only drawback appears to be a slightly lower voltage going to the MAX232 chip from the Arduino 5v rail, but that doesn't seem to be a problem for the RS232 communications, it's working fine for me so far. I'm getting about 4.8 volts out of the Arduino voltage regulator in that case, and the specs for the MAX232 chip that I'm using say it can operate at 4.5v. Any additional opinions on that? How dangerous do you think would it be for me to run 6v for this?
|
Top
|
|
|
|
#370477 - 07/02/2018 21:04
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14496
Loc: Canada
|
I would use the 7.5V input, or a 6.5V input if I could source one. The variable buck converters (about $1/each, eBay) would solve this problem nicely and very cheaply.
The problem with the Arduino is that 16Mhz CPU operation requires 5V input for reliable operation. Lower voltages are okay but only with lower CPU clocks, and the board you are using is hardwired for 16Mhz.
Cheers -ml
|
Top
|
|
|
|
#370478 - 07/02/2018 21:11
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14496
Loc: Canada
|
Eg. switching from 10K/10K to 5K/5K, or even 2K/2K. At the slight expense of more current draw. Oh, wow, that is such a good suggestion! I am super excited to try that! I have a pile of 4.7k resistors that I can use for this experiment. By "strengthen the signal", you don't mean a difference in voltage I assume Sort of. The base voltage in the absence of any interference will be exactly half of the input voltage for any reasonable resistance value there. "Interference" adds and subtracts small amounts of current, resulting in higher or lower voltages on the I2S lines (or possibly the other way around, but with the same end effects). If the normal current flow from the two resistors is significantly higher than the "interference" current flow, then the interference won't have much effect on the results. Making the resistors smaller in value increases the current flowing through them (thus more heat), making the signal stronger relative to the "interference" sources. Or at least that's how I see it. EDIT: But if you go too small on the resistors, too much current may flow, which could damage the empeg which is supplying that current. 2K/2K puts 4K-ohms between the (5V) input and GND. So.. Ohm's Law says 5V/4000ohms = 1.25milliamps, which is safe enough. 1K/1K would draw double that amount, which is then beginning to approach the high current side of things. Cheers -ml
Edited by mlord (07/02/2018 21:31)
|
Top
|
|
|
|
#370479 - 08/02/2018 02:16
Re: BlueGigaEmpeg
[Re: mlord]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Verdict:
4.7k / 4.7k voltage dividers: Moderate reduction in pops.
Double the 4.7k's up in parallel to get: 2.33k / 2.33k voltage dividers: Significant reduction in pops but not completely gone.
I am hoping that going to straight 2k resistors, with a slight board redesign so that the I2S trace runs are shorter, will fix it for good.
What components should I be checking inside the empeg to see if they are getting too hot with the new changes and the increase in I2S current?
Thank you so much!
|
Top
|
|
|
|
#370480 - 08/02/2018 12:28
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14496
Loc: Canada
|
It is not a question of measuring temperature, but rather adhering strictly to the datasheet limitations of the SAA7705H DSP chip in the empeg.
The datasheet I have (from 1999, newer ones are google'able) says this:
IO(sink/source) DC output sink or source current: output type 4mA (BD4CR, BT4CR and B4CR); -0.5 < VO < VDD + 0.5V: (MAX)±20 mA
So.. I get two possible interpretations: (1) no single output pin should have to supply more than 4mA, or (2) each digital output pin has an absolute limit of 20mA.
Let's assume the worst case: no more than 4mA current draw.
In the player I have open here, the scope shows about 6V output on the I2S pins. So (Ohms Law again) 6V / 4mA = 1500ohms minimum between the output and ground.
If all we were connecting to it was the two resistors, that would mean that the lowest value that could be used would be 750+750ohms.
But the middle of the voltage divider is being connected to the WT32i, which itself has a ("internal") resistance. Dunno what that is, but it does draw a small amount of current. The datasheet for it probably says "how much" it draws, but I don't have that within reach where I am, so let's conservatively guess at 1mA draw.
So subtracting that 1mA from the absolute limit of 4mA means the resistor divider thingie can safely pull up to perhaps 3mA from the DSP without frying the output pin. Now feed that into Mr.Ohm and we get 6V/3mA = 2000ohms.
This suggests that 1K/1K is the absolute limit for the two voltage divider resistors. In practice, I would stay above that absolute limit, to allow a bit of margin to not fry anything. So.. perhaps anything larger than 1300ohms might be fine.
Only one formula required for all of this: Ohm's Law: Volts = (Amps * Ohms)
Cheers
Edited by mlord (08/02/2018 12:36)
|
Top
|
|
|
|
#370481 - 08/02/2018 13:03
Re: BlueGigaEmpeg
[Re: tfabris]
|
pooh-bah
Registered: 12/01/2002
Posts: 2009
Loc: Brisbane, Australia
|
Going back to the oscilloscope, like Mark says I'd be looking at the signals going into the BT module and making sure the minimum highs and maximum lows are good, looking for noise, glitches, overshoots etc. Bit hard to say until you see it as you don't really know what the problem is yet. But certainly would give some kind of indication of which side of the dividers are having problems. Depending on that you may consider proper buffers. Even some minor filtering *might* be enough for those sorts of issues. The BT module inputs should be pretty high impedance but that might be where the dividers are coming unstuck using fairly high resistance levels. I2S is a higher frequency than I was thinking. Of the order of 10MHz+. That might also be a bit of an issue with the dividers and the capacitance in the resistors. Proper level shifters would fix that. Put it on a 'scope with a >20MHz bandwith (preferably more in case the clock frequency is higher than 10MHz)
_________________________
Christian #40104192 120Gb (no longer in my E36 M3, won't fit the E46 M3)
|
Top
|
|
|
|
#370482 - 08/02/2018 13:09
Re: BlueGigaEmpeg
[Re: tfabris]
|
pooh-bah
Registered: 12/01/2002
Posts: 2009
Loc: Brisbane, Australia
|
Here's a good article with some very relevant examples http://codeandlife.com/2012/04/06/level-shifting-101/At 1MHz it's starting to becoming an issue so 10MHz will definitely be an issue. And yes the lower value resistors help but won't really fix it at high speeds. Some cheap logic will.
_________________________
Christian #40104192 120Gb (no longer in my E36 M3, won't fit the E46 M3)
|
Top
|
|
|
|
#370483 - 08/02/2018 17:15
Re: BlueGigaEmpeg
[Re: Shonky]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Wow that article about level shifting is exactly what we're talking about here. And the details about how/why the voltage dividers mess up and round off the square wave is really interesting.
I'm going to look into trying a level shifter chip instead of the voltage dividers. And seeing about investing in or borrowing a scope.
|
Top
|
|
|
|
#370484 - 08/02/2018 18:07
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Tried: - Going down to about 1.55k ohms on the voltage dividers by tripling up the 4.7k resistors (my PCB is a work of art, I tell ya). Result: - Pops are almost completely gone. Down to about one pop per song. - I'm not noticing any unusual heat from the SA7705H or the WT32i. To do: - Order a passel of 1.5k resistors. - Run it this way for a week or so to see if the empeg fries. - Decide if that's enough, or if I still need a board redesign, too. Keeping in mind that the pops are not noticeable when the music is loud, they are only noticeable in the quiet passages and only if the headunit stereo volume is turned up to a decent amount.
|
Top
|
|
|
|
#370486 - 08/02/2018 18:27
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
If this works, and if it doesn't look too scary bad on the scope, I might be sticking with "no board redesign" because the number of pops is really down super low. Lower than I initially estimated. It's more like one pop every five songs.
|
Top
|
|
|
|
#370487 - 08/02/2018 19:53
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
Actually I've been running the thing for hours and heard only a single pop so far at the very beginning and none since. Crossing my fingers that this doesn't damage the empeg or the WT32i.
|
Top
|
|
|
|
#370489 - 08/02/2018 20:57
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14496
Loc: Canada
|
You can go even lower with the resistors. I looked at the datasheet for the WT32i, but didn't really find any good info about current draw. Other than that everything there is in micro-amps. So it probably draws a LOT less than 1mA.
So you could safely go down to 1.2K (1200 ohms) per resistor, and most likely even 1K:1K without harming anything -- remember the datasheet numbers for the empeg DSP suggest 750:750 ohms as the absolute limit, so there is some headroom there.
Edited by mlord (08/02/2018 20:59)
|
Top
|
|
|
|
#370490 - 08/02/2018 22:43
Re: BlueGigaEmpeg
[Re: mlord]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
|
That's awesome information, thanks so much, Mark! The 1.55k value has been working well for me so far, and I'll get some true 1.5k resistors in shortly to try that. I've literally heard only a single pop all day since switching to 1.55k so I think that's going to be enough, and I don't need to go lower than that. The balance between "no noise" and "no risk of chip damage" seems to be good there. My roommate's scope is only a 10 megahertz scope so I don't think it's going to be useful for looking at the signal, but if the 1.5k resistors work long-term then I won't need to.
|
Top
|
|
|
|
#370491 - 08/02/2018 23:48
Re: BlueGigaEmpeg
[Re: tfabris]
|
carpal tunnel
Registered: 08/07/1999
Posts: 5549
Loc: Ajijic, Mexico
|
I don't understand why you are having so much trouble with this project. It seems simple enough to me... tanstaafl.
Attachments
_________________________
"There Ain't No Such Thing As A Free Lunch"
|
Top
|
|
|
|
|
|