ChanServ changed the topic of #glasgow to: glasgow interface explorer · code https://github.com/GlasgowEmbedded/glasgow · logs https://freenode.irclog.whitequark.org/glasgow · discord https://1bitsquared.com/pages/chat · production https://www.crowdsupply.com/1bitsquared/glasgow · CrowdSupply campaign is LIVE!
Yatekii has quit [Remote host closed the connection]
Yatekii has joined #glasgow
_whitelogger has joined #glasgow
<d1b2> <rwhitby> @electronic_eel: thinking of this form factor
<ebb> Trilby hat
<d1b2> <konsgn[no-Mic]> I don't think you should have vbus connect the 2 ports if you have pd negotiation happening. potentially bad things could happen if you ask for 20v while the other device is unaware of the situation. Also, what about trying to tap into the lvds if you are trying to tap onto the dP/dM lines?
<d1b2> <konsgn[no-Mic]> Might want a second fusb302 facing in the other direction? or at least a back-to-back pmosfet power cutoff
<d1b2> <konsgn[no-Mic]> Safety would still be 3rd as software could always accidentally connect a 20v line to an unsuspecting device, but at least you can disable the power connection.
jstein has quit [Quit: quit]
lukego_ has joined #glasgow
<d1b2> <konsgn[no-Mic]> sidenote: why not use bi-directional translators? If you don't need to switch input/output at blazing speeds, you can get away from using a dedicated dir pin for each signal.
MadHacke1 has joined #glasgow
slurdge1 has joined #glasgow
alanvgreen_ has joined #glasgow
feldim2425_ has joined #glasgow
lukego has quit [Ping timeout: 240 seconds]
MadHacker has quit [Ping timeout: 240 seconds]
slurdge has quit [Quit: Ping timeout (120 seconds)]
feldim2425 has quit [Ping timeout: 240 seconds]
alanvgreen has quit [Ping timeout: 240 seconds]
slurdge1 is now known as slurdge
alanvgreen_ is now known as alanvgreen
feldim2425_ is now known as feldim2425
lukego_ is now known as lukego
Spida has quit [Ping timeout: 244 seconds]
levi has quit [Ping timeout: 240 seconds]
levi has joined #glasgow
Foxyloxy_ has quit [Ping timeout: 264 seconds]
samlittlewood_ has joined #glasgow
Foxyloxy__ has joined #glasgow
samlittlewood has quit [Ping timeout: 240 seconds]
samlittlewood_ is now known as samlittlewood
Spida has joined #glasgow
<d1b2> <rwhitby> @konsgn[no-Mic] note that in general, only one port will be used. the two port case is only if you are sniffing, in which case the FUSB302 would play no part in the contract negotiation, and the VBUS switch on this board would be permanently off.
<d1b2> <rwhitby> we're not doing a dual-port device, just a single port which has two parallel plugs to make sniffing easier (the second port may well be depopulated in the normal case)
<d1b2> <rwhitby> regarding the level translators, I was very strongly advised by the glasgow designers that bidirectional translators are the spawn of the devil.
<d1b2> <rwhitby> I will defer to their explanations of why. I did not ask for details, due to the strength of their advice 🙂
<d1b2> <rwhitby> (note that I've done two-port PD devices before, with dual PHYs, and mirroring connections and contract negotiations from one side to the other, including demonstrating such in a TBT3 environment at CES 2020)
<d1b2> <rwhitby> tapping into the LVDS is out of scope, especially because it is not guaranteed to exist in future glasgow generations
<d1b2> <rwhitby> (and the glasgow maintainer has stated that they will not support adding other frameworks like Luna onto glasgow to do a USB stack on glasgow)
<d1b2> <rwhitby> So any USB stack data path stuff will be done on a separate Luna board, and that can use the second connector to do so.
Foxyloxy__ has quit [Read error: Connection reset by peer]
Foxyloxy__ has joined #glasgow
<d1b2> <Attie> re level shifters... auto-dir shifters specifically are worth avoiding... if you have control of the direction, you should be fine
<modwizcode> auto dir shifters sound insane
<modwizcode> how could that ever work...
electronic_eel has quit [Ping timeout: 240 seconds]
electronic_eel has joined #glasgow
PyroPeter_ has joined #glasgow
PyroPeter has quit [Ping timeout: 272 seconds]
PyroPeter_ is now known as PyroPeter
<jpa-> generally they work ok for I2C.. but not much else
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
<electronic_eel> > our design assumption for the level shifter LDO safety when all jumpers are removed is that a 10K R1 and an infinite (open) R2 would result in a 0.8V (Vref) output.
<electronic_eel> rwhitby: I think you are mistaken
<electronic_eel> the adj input of the LDO goes to the error comparator
<electronic_eel> so the voltage of the adj pin is compared to the internal 0.8V reference
<electronic_eel> when the adj pin is open, you compare floating to 0.8V
<electronic_eel> this could result in comparing 0V to 0.8V. then the LDO will increase the output voltage to near the input rail, as high as it will go
<rwhitby> But adj pin is not open, it is pulled up to VOUT
<rwhitby> as vout rises, adj pin rises, and stops the rise at 0.8V no?
<rwhitby> vout = vref (1 + R1/R2)
<rwhitby> R2 -> infinite, vout = vref.
<electronic_eel> ah, ok, if it is not floating, but vout, then the voltage will go down. then you are safe
<rwhitby> yeah, I agree with your analysis if R1 wasn't there.
<rwhitby> but that's why we chose R2 to be the variable resistor, and R1 fixed.
<rwhitby> thanks for double checking :-)
<rwhitby> My plan now is to run CC1/CC2/SBU1/SBU2/D+/D-/VBUS straight up the middle of the board to the second connector, pushing the FUSB302 over to the right hand side.
<rwhitby> I haven't yet worked out how I'm going to do the bypass of the fixed 1.2V level shifters for when you want to use glasgow's level shifters directly.
<rwhitby> (i.e. where to put the 4 jumpers and how to cause that to turn off or disconnect the 1.2V level shifters)
<electronic_eel> that is the tricky part of that design
<rwhitby> perhaps the 1.2V level shifters stay powered, and I just have 3-way jumpers with input on the middle pin so you can either connect to 3.3V directly or connect to level shifter.
<rwhitby> but 4 x 3-way jumpers is a lot of space
<rwhitby> I guess I have space up the top alonside the USB-C connector. Makes for long traces, but none of these signals are high speed.
mndza has joined #glasgow
<electronic_eel> why not always use the shifters on the addon and make the ldo variable with a i2c dac?
<electronic_eel> changes the whole jumper array for requiring a short i2c init sequence
<rwhitby> but how to get 3.3V from an LDO with 3.3V as it's input?
<electronic_eel> and if you use the 5v from the other port?
<rwhitby> Hmm.
<rwhitby> Let me see if there is a JLCPCB part to do that ...
<electronic_eel> JLCPCB will soon allow you to provide custom ics, also they change the parts they stock a lot. so i wouldn't base my design too much on this
<electronic_eel> if you are really keen to do it, you could output a pdm or pwm waveform from glasgow and filter it with a small opamp
<rwhitby> ah, no. :-)
<rwhitby> I guess it's SOT-23, so easy to solder.
<electronic_eel> this is spi and not i2c, but should be able to do the job
<electronic_eel> spi means extra pins and also that you need a different applet in glasgow
<rwhitby> I'll just use the same part as glasgow. That will simplify the coding.
<electronic_eel> currently it is not easy to have multiple applets in glasgow run at once. so using i2c and spi at once would require to write a combined gateware for both
<electronic_eel> or maybe some workaround i don't quite see yet
<electronic_eel> but still some effort, so using a i2c will simplify your work a lot on that front
<rwhitby> it's pin compatible with the glasgow part
<electronic_eel> yeah, that should do it
<rwhitby> Yeah, I'm still not decided on DAC approach vs jumpers approach.
<electronic_eel> don't forget to wire the enable signals of the ldos to glasgow: otherwise the output voltage might be too high when the dac is not initialized yet
<electronic_eel> i think the software controllable voltage is a plus, as you can automatically control it and change it fast. attie wrote that voltage level changes could be part of what the M1 uses (just repeating attie here, i haven't looked at the M1)
<rwhitby> I think for M1 you'll set the board up for a certain debug interface (and most people will never use the I2C interfaces, only the 1.2V UART).
<d1b2> <rwhitby> Jumper version would look like this
<rwhitby> This will also match the scheme that @marcan is using for his board.
<rwhitby> The jumpers also serve as test points for those 4 signals too.
nicoo has quit [Remote host closed the connection]
<d1b2> <rwhitby> and with jumpers I can remove one of the LDOs and just have a single 1.2V LDO instead of two.
nicoo has joined #glasgow
<electronic_eel> downside of the jumpers is that the gateware to access it will be different between >=1.5V and 1.2v. because you need the extra dir lines for the additional 1.2v shifters
<electronic_eel> but if you prefer going the jumper route i don't see a real issue with it
<electronic_eel> advandtage of the jumper solution is that you can completely pull the jumper. that means no cmos input connected to d+-. this will improve signal integrity if you want to run usb hs over the other usb connector
<d1b2> <rwhitby> I can get the jumpers pretty close too.
<d1b2> <rwhitby> Hmm, I need to work out the right schematic to disconnect the input too.
<electronic_eel> with "input" you mean the side of the shifter that goes to glasgow?
<d1b2> <rwhitby> Not sure how to do it with just a single 3-way jumper. In this scheme (USBN shown) the D- is still connected to the level shifter input.
<d1b2> <rwhitby> (I move the glasgow input between shifter and direct)
<electronic_eel> when you want to use glasgow directly, you can switch the 1.2v shifter in A->B direction
<electronic_eel> A on the Glasgow side, B goes to the jumper and is open there
<d1b2> <rwhitby> not sure I follow. what's connected to each of the 3-way jumper pins?
<d1b2> <rwhitby> (using the signal names from diagram above)
<d1b2> <rwhitby> oh, I get you now
_whitelogger has joined #glasgow
thasti has quit [Quit: leaving]
thasti has joined #glasgow
egg|anbo|egg_ has joined #glasgow
egg|anbo|egg_ has quit [Remote host closed the connection]
egg|anbo|egg_ has joined #glasgow
egg|anbo|egg has quit [Ping timeout: 264 seconds]
ali-as has joined #glasgow
ali-as has quit [Remote host closed the connection]
ali_as has joined #glasgow
ali_as has quit [Remote host closed the connection]
mndza has quit [Read error: Connection reset by peer]
mndza has joined #glasgow
futarisIRCcloud has joined #glasgow
bvernoux has joined #glasgow
infinigon has quit [Ping timeout: 256 seconds]
mndza has quit [Ping timeout: 260 seconds]
sorear has quit [Remote host closed the connection]
_florent_ has quit [Remote host closed the connection]
infinigon has joined #glasgow
_florent_ has joined #glasgow
ali_as has joined #glasgow
sorear has joined #glasgow
FFY00 has quit [Read error: Connection reset by peer]
FFY00 has joined #glasgow
sorear has quit [Remote host closed the connection]
_florent_ has quit [Remote host closed the connection]
_florent_ has joined #glasgow
sorear has joined #glasgow
bvernoux has quit [Quit: Leaving]
smkz has quit [Quit: reboot@]
smkz has joined #glasgow
Eli2 has joined #glasgow