The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
I've asked about this before but now I have a better idea of what I need, so maybe I can ask a better question and get better answers.
I have had no luck getting SPI reads to work on an ESP32 line (basically the MISO line is useless to me)
I need a logic probe that will help me monitor SPI traffic on 3 or 4 lines up to 10MHz total bus speed (that means 3 or 4 million frames per second total of logging or buffer)
The problem I've had with my current probe is there's just not enough buffer and it doesn't do real time logging to the PC (i don't know that any of them can though) - everything goes by too fast so by the time i hit record it's too late, or it's way too early.
What I'd like is a probe that can capture 2-4 million frames, and preferably one that can be programmed to start capturing when one of the lines goes high or low. The last bit is critical because of my current problem.
I know a lot of them including my current one have an API and i can write software to start logging on high or low but I don't want to have to write code.
So any you hardware hackers, do you do this kind of thing? Do you understand the above? And is there a tool that will work this magic?
For SPI debugging the OP may be better off with a scope with the ability to decode SPI and other serial formats.
The reason being that bugs with SPI, I2C, RS232 etc are often to do with bad signals which a logic analyser will not show.
The Picoscope range includes multi channel scopes, some with built in logic analysers and some with very large sample buffers at prices from about £150 to £10k.
I have a range of scopes available but the Pico is my first choice device for this sort of work.
Another vote for the Salae. I use one for hardware and interrupt timing debug. Absolutely essential. I recently 'race tuned' (well, raceish) an ESP32 to PI SPI interface and literally could not have done that without the device. The pro version also has an analog mode, which, while not perfect, is good enough to deduce some quite subtle hardware/software interactions. I found running the device on a separate PC from my debug system was essential in that instance. It is expensive but has survived much abuse. Divide the cost by the hours I've saved has avoided me working for sub-Maccas hourly rates on a couple of projects.
The cost is insignificant compared to the cost of a couple hundred engineering hours to develop your own program to do these kind of things. Where I work we have no problem spending a few hundred bucks on a third-party hardware or software that could take 100, 200, 500 hours to do in-house. If you figure 100 bucks an hour personnel cost, spending 100 hours on something costs 10,000 dollars. Purchasing frees us up to do things that we need to do. Anyway, engineering hours for a project are budgeted separately from purchases. The shell game.
You say you are having trouble reading the data from SPI. DO you have a basic understanding of SPI?
To shorten the process in case the answer is no, I am going to take a wild guess that you may not be aware that in order to read 16 bits of data, you first have to clear your input buffer (may or may not be necessary), write 16 bits of either good data or just 16 bits of zeros. That write of 16 bits will force your device to spit out 16 bits of data onto MISO. Only *then* you can read the 16 bits of real data from your device. Same applies whether you are reading 16 bits of data, or 8 bits, or 24 bits, etc.
There is another issue with SPI. It comes in 4 flavors. It depends on the device you are trying to read/write. I once had an issue where the HW engineer didn't realize he had put a type 1 and a type 3 device on the same SPI bus. It has to do with when the data is valid and the edge of the clock where the data is valid. You can't put a type one and a type 3 on the same bus unless you change the mode at the Master for *every* transaction
Just trying to preemptively point you at possible problems based on not enough information in your post. Hope this helps. Feel free to IM me. I am one of those weird HW guys who also is a heavy duty embedded SW guy.
You could build your own logic analyser given enough time using a TI MSP432E launchpad or a Tiva 1294 Launchpad. Then you could transfer the data to a PC logger that would gather the data and store it. A lot of work but it would let you control what gets stored. A real logic analyser is a better bet though in terms of the time spent.
Yeah I know that much about SPI. I'm doing a dummy read, and it isn't helping. Worse, I found my results are inconsistent, after awhile I start getting 0xFFFF back instead of 0x0000 and when I plot this stuff it looks like a zebra pattern so it has something to do with the bus/timing/dummy bits, or something else. I need my good logic analyzer to arrive. I'm not looking to build one. I have a junky one right now, but I want the saleae before i much about too much.
Owen has mentioned another of my HW/SW axioms. If you have done all of the things in SW that seem reasonable without seeing any real progress on SW, blame the hardware and go find out why the HW isn't working. I have been bitten way too many times chasing issues with HW bring up or just new SW on a previously working platform. After one day of chasing your tail with SW inexplicably not working, it is a reasonable thing to check the HW to make darn sure it didn't fail while you were doing your SW stuff.
I'm trying to link my Amazon and Rockstar games accounts and it's proving a lot harder than it should be.
Not because of the linking process - it's that Amazon want me to log in to do it. Let's ignore that I'm already logged in on this computer: they want to send me a OTP on my phone. Fine - it comes in.
I enter it, and ... they want to send a second OTP to my email address, but ... that seems to take several hours and the authorization session only lasts the default 20 minutes.
They've got an authorization app on my phone, they've sent an OTP to my phone, and they still want an OTP via email that they can't get out in anything like a timely manner. When I tried this yesterday, I was told the OTP email was sent at around 8PM and it arrived at 03:00. Pathetic.
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
I feel your pain.
Back at beginning of year (during holidays) my wife wanted to try a special holiday channel on Amazon TV device. We tried it out and it was ok so we subscribed but at the cheap rate for non-HD video). We watched about 10 minutes of it and thought better of it and decided to upgraded to the HD version of the app. This is all handled by Amazon (which was a bear to get signed into as you described).
Anyways, we upgraded to HD version of that channel on the same device we subscribed and only later found out that Amazon charged us for an entirely new account (remember though it was all signed in to the same Amazon account) for that app.
Also consider that this is on the Amazon TV hardware device that Amazon owns.
I called Amazon and explained and they said, "Well, we'll refund your money this time, but don't do it again!"
I was like, "Well, I didn't do it the first time. Your h/w did it with your amazon account. And it didn't explain that it was going to do anything, it simply just charged me.
So, I'll forgive you this time. But don't ever do it again!"