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 · no ETAs at the moment
uberushaximus has quit [Ping timeout: 272 seconds]
uberushaximus has joined #glasgow
_whitelogger has joined #glasgow
<d1b2> <Attie> current I2S status - the first few hundred samples are good, but then it goes wonky...
jobby has joined #glasgow
tomtastic_ has quit [Ping timeout: 240 seconds]
tomtastic has joined #glasgow
electronic_eel has quit [Ping timeout: 256 seconds]
electronic_eel has joined #glasgow
jobby has quit [Quit: Lost terminal]
PyroPeter_ has joined #glasgow
PyroPeter has quit [Ping timeout: 240 seconds]
PyroPeter_ is now known as PyroPeter
Getorix has quit [Ping timeout: 240 seconds]
Getorix has joined #glasgow
_whitelogger has joined #glasgow
_whitelogger has joined #glasgow
Getorix has quit [Ping timeout: 258 seconds]
Getorix has joined #glasgow
Getorix has quit [Ping timeout: 260 seconds]
Getorix has joined #glasgow
_whitelogger has joined #glasgow
FFY00 has quit [Ping timeout: 240 seconds]
FFY00 has joined #glasgow
_whitelogger has joined #glasgow
Getorix has quit [Ping timeout: 260 seconds]
Getorix has joined #glasgow
Stormwind_mobile has quit [Remote host closed the connection]
FFY00 has quit [Ping timeout: 240 seconds]
FFY00 has joined #glasgow
Stormwind_mobile has joined #glasgow
FFY00 has quit [Read error: Connection reset by peer]
Stormwind_mobile has quit [Ping timeout: 272 seconds]
<whitequark> attie: there is no way to reset the whole FPGA; there isn't a reset line
<whitequark> electronic_eel is correct that resetting individual applets is the way to go, and you can already do that
<whitequark> (every applet gets a reset register)
<whitequark> however, each time you run an applet, it already gets reset first
_whitelogger has joined #glasgow
nicoo has quit [Remote host closed the connection]
nicoo has joined #glasgow
FFY00 has joined #glasgow
d_olex_ has joined #glasgow
d_olex has quit [Ping timeout: 258 seconds]
<d1b2> <Attie> @whitequark interesting, thanks... in this situation the applet doesn't appear to get reset - e.g: each time i run glasgow run audio-i2s-capture, the first states of the FSM appear to be "already done"
<d1b2> <Attie> (I was toying with autodetect for sample size and rate, but have put that to one side for now)
<d1b2> <Attie> my current issue seems to be keeping up with the FIFO, and not loosing data (see above)
<d1b2> <Attie> even in a very tight white True: await iface.read() loop, there are a couple of hiccups, where in_fifo.w_rdy isn't set for a period
<d1b2> <Attie> even in a very tight white True: await iface.read() loop, there are a couple of hiccups, where in_fifo.w_rdy isn't set for a period
<d1b2> <Attie> it's only 44.1kHz, 16-bit, stereo at the moment (~172.3 kiB/s)
Stormwind_mobile has joined #glasgow
<_whitenotifier-f> [glasgow] brainstorm commented on issue #151: False positive results in selftest - https://git.io/JU5xM
bvernoux has joined #glasgow
mwk has quit [Ping timeout: 240 seconds]
mwk has joined #glasgow
Chips4Makers has quit [Ping timeout: 240 seconds]
Chips4Makers has joined #glasgow
Stormwind_mobile has quit [Ping timeout: 272 seconds]
Stormwind_mobile has joined #glasgow
d_olex_ has quit [Ping timeout: 246 seconds]
d_olex has joined #glasgow
<_whitenotifier-f> [glasgow] whitequark commented on issue #151: False positive results in selftest - https://git.io/JUdaA
<whitequark> attie: it is unlikely that the applet doesn't get reset, it is more likely that there is a coding error in your implementation
d_olex_ has joined #glasgow
d_olex has quit [Ping timeout: 260 seconds]
<d1b2> <Attie> @whitequark hm, okay... FSM should be reset too? I'll do some more poking at it to see if I can get a feel for what's going on
<d1b2> <Attie> but from what I've seen so far, when it builds and loads the bitstream, i see the initial states used
<d1b2> <Attie> but then subsequently (when the bitstream doesn't need to be rebuilt), those states are "missed" - my hypothesis being that there wasn't a reset occuring
<whitequark> yes FSMs should be reset
<d1b2> <Attie> ok, thanks
Foxyloxy has quit [Quit: Leaving]
bvernoux has quit [Quit: Leaving]
<whitequark> if they weren't, nearly every applet in the tree today would be broken
<whitequark> this was actually something I had to fix early on, it wasn't trivial, and it's absolutely foundational to the whole applet system
Foxyloxy has joined #glasgow
<d1b2> <Attie> yeah - i had expected it to be taken care of for exactly this sort of reason
<whitequark> can you show your code? i have a few minutes i can use to look at it
<d1b2> <Attie> oh that would be kind, thanks
<d1b2> <Attie> it's a bit grubby, because I'm figuring a lot out
<d1b2> <Attie> actually... that's without the extra / init states i was having problems with above, but the style stands
<whitequark> lemme see
<whitequark> ah
<whitequark> yeah, i see the problem immediately
<d1b2> <Attie> i suspected you might
<whitequark> you need to do `iface.add_subtarget(BlahSubtarget(...))`, since that is the function that actually adds the reset logic
<d1b2> <Attie> ahh, okay
<d1b2> <Attie> like this?
<d1b2> <Attie> it builds and seems to do stuff, so that's a good start 🙂
<whitequark> yeah
<d1b2> <Attie> great, thanks
<d1b2> <Attie> now I need to figure out the FIFO side of things...
<d1b2> <Attie> I can't quite figure out if the system will bring as much data into the host as possible (assuming i'm a friendly asyncio worker and yield occasionally), or if i should be looking to do that in the I2S applet
<d1b2> <Attie> i also feel like I want a non-blocking in_fifo.read(), but I'm happy to be steered otherwise
<d1b2> <Attie> but it uses lots of internals, and feels very wrong
<d1b2> <Attie> (overheads in the memory copy being a small part)
<d1b2> <Attie> ... thinking about it, a separate asyncio task would make a lot more sense
uberushaximus has quit [Ping timeout: 260 seconds]
uberushaximus has joined #glasgow
uberushaximus has quit [Remote host closed the connection]
uberusha1 has joined #glasgow
uberusha1 has quit [Ping timeout: 240 seconds]
uberusha1 has joined #glasgow
<d1b2> <Attie> I2S audio captured with glasgow... when it misses samples, it misses a chunk (89Hz and 137Hz)
<ebb> Second trace looks like BPSK :P
<d1b2> <Attie> that's a stereo capture, so the traces are related in time - primes frequencies to help identify the missing timespan