Open mikaelhaji opened 6 months ago
Figured it out! Seems we just had a finicky j-link base. We have a flashing green light after pressing down on the cable and also got these popped up in the PuTTY terminal:
This seemed to have popped up as the PuTTY was open when deploying the build. Following this, any command like "ping" or a random character just returned "unknown command" which I'm guessing is not a horrible sign that there is at least some type of communication - not sure if i should expect something else.
Update: Seems this is the expected output at this stage.
Was able to find the onda executable and run:
ustx-onda <json file> <COM port number>
C:\Users\mikae\USTX\opw_ustx\application\ustx-onda\msvc\x64\Debug>ustx-onda.exe C:\Users\mikae\Downloads\fus.json 8
Sending Hex file, estimated time: 0 seconds
__________________________________________________
##################################################
Download Successful
Focus Delay: 21.2us
Set Focus: 4
Invalid Focus, max focus: 2
Set Focus: 2
Focus now at 10.0mm, 10.0mm
Delay: 11.8us
Set Focus: 1
Focus now at -10.0mm, 10.0mm
Delay: 11.8us
Set Focus: 2
Hi Mikael,
I was setting up the USTX v1 to help guide you with the bring up and yes that looks like the correct output for the test JSON. Adding a trigger signal to the trigger BNC connection and a inhibit signal to the inhibit BNC will trigger the profile to run and generate the waveforms out on the transducer connector. The trigger signal will start the profile and the inhibit just enables or disables the trigger.
Hi George! Thank you so much for your message. We are now attempting to read the signal being emitted through the board using an Oscilloscope and are running into some issues on that end (was going to make a new issue as I realized this one might have been getting too long haha).
Here are some pictures demonstrating our current setup right now:
We basically deployed the json file that was on the read me to the board and was hoping to then pick up on a signal from the Oscilloscope.
Currently, we are feeding a 500khz square wave to the trigger and then the command we are running is the following:
C:\Users\mikae\USTX\opw_ustx\application\ustx-onda\msvc\x64\Debug>ustx-onda.exe C:\Users\mikae\Downloads\fus.json 8
My current topics of confusion include (which might be causing the lack of ability to validate it through the scope):
Set Focus: 2
Focus now at 10.0mm, 10.0mm
The board has been flashing green but just a few mins ago also introduced a red light (which from my understanding is a very bad sign for temp. regulation for the board). I pressed the reset button and the board shut off (including the green light that was initially flashing).
What is the purpose of the wavelet generator being plugged into the trigger port? Is it acting as a clock signal?
And then of course, the main question is why nothing is readable from the scope.
Really appreciate your help in advance!!
Hi Mikael,
So the inhibit signal just enable or disables the trigger so you will need to provide a logic high to the inhibit to allow the trigger to work.
On the embedded firmware the pin PC11 could be configured as GPIO output and set to high so that the trigger is always active. There is a requirement for active cooling, I have only ran this board with +12V and -12V as my high voltage and the TX7332 chips would heat-up but not go into thermal shutdown. In our lab using +/- 100V as the high voltage levels to drive a transducer, the board will go into thermal shutdown if no cooling is provided for the TX7332 chips.
For the input, the example JSON will setup the waveform for one cycle at 5MHz repeated 5 times at 1ms PRF, since it is 1KHz burst PRF the trigger should probably be slower like in the Hertz like 10Hz trigger with a 10ms pulse width. Setting the focus just will change the focus point of the sound.
Hi George,
Thank you for your response!
re 1. I am providing the board the 12V signal as stated and it almost immediately goes into thermal shutdown (red light immediately turns on) after downloading the json onto the board. Any thoughts on how I can provide the active cooling you stated to avoid this from happening? Is it worrisome that the board is shutting down at such a low voltage?
re 2. Regarding the inhibit signal, would I be able to just feed a active high signal into the board through my generator? ie. a DC offset waveform with a xV input into the port?
Update:
When downloading the json file, to the board, it immediately became red again and stalled at:
`C:\Users\mikae\USTX\opw_ustx\application\ustx-onda\msvc\x64\Debug>ustx-onda.exe C:\Users\mikae\Downloads\fus.json 8
Sending Hex file, estimated time: 0 seconds
__________________________________________________
##################################################
Download Successful`
Following this, I clicked the reset button and then pressed hard on my j-link (very confusing as to why this would get the job done) and that allowed for the green light to begin flashing again. This also brought the rest of the command line in:
Focus Delay: 21.2us
Set Focus:
Still unfortunately, nothing is read through the scope. Thanks for all your help once again!
Hi Mikael,
Sorry for the late response, finally got back to this and figured I would just create a software trigger so that I didn't have to make a spot for the signal generator on my desk. I have a branch with a 50Hz trigger that can be used for a quick test. I have let it run for about an hour without any issues (no overheating and no heatsinks on my TX chips operating at +/-12v for the high voltage supply). https://github.com/OpenwaterHealth/opw_ustx/tree/internal_SW_trigger_50Hz
you should see a burst every 20ms.
Here is a picture of my setup. the pulse is always on but a command can be added to turn it on and off or configure different frequencies.
I also added some carriage returns to the printfs so that it is a bit easier to read
Hi George,
This is amazing and very much appreciated! Very excited to test this out. Quick question - I realize that my VDD+/VDD- wiring might be messed up 🤦♂️. Currently, I have been hooking up VDD+ to the red nozzle of my PSU and then the VDD- to the black nozzle of my PSU (refer to image below). - ultimately just setting one channel to +12V
Am I correct to assume that the reason why a 2 channel PSU is recc. is because one channel should have 12V and the other -12V and then the middle two are ground that would be connected to the black nozzles respectively.
Also, for the great implementation you have provided :) - would I just run everything as usual without the use of the inhibit port and the trigger port to make use of this software trigger?
Thank you so much for all your help!
You will need to connect +12 and -12 rails for the system to work. Off of a 2 channel power supply if you set both channels to 12v and connect them in series you can run the center tap to ground and the use the positive terminal for +12v and the negative terminal for -12v. Like the image below
Hi George,
I have gone ahead and attempted to load in your branch with the software trigger, along with the changes in powering the board with the +/-12V using both channels of my PSU. Unfortunately, I am still unable to pick up on any burst on my oscilloscope. Am I supposed to assign these waves to the pinout through the executable + json file or is it simply supposed to start emitting after building the STM firmware?
Here are some pictures of my setup:
Am I supposed to do anything in Visual Studio to get this working - given the exe is already there?
Really appreciate all your help with this!
Hi Mikael,
Try these steps:
Hi George,
Apologies for the back and forth. I went ahead and flashed the internal trigger branch once again on my board. I then attempted to test the trigger signal at the test point using my Oscilloscope. Unfortunately, nothing was read through this.
https://github.com/OpenwaterHealth/opw_ustx/assets/68840767/66735393-905b-449b-a745-6eaca7ad87b7
I decided to continue with the rest of the steps to get a full picture. Immediately when running this command:
ustx-onda.exe test.json 8
We got this output:
Sending Hex file, estimated time: 0 seconds
__________________________________________________
##################################################
Download Successful
and the board went into thermal shutdown:
I then had to press the reset button, press hard on my j-link and somehow the board began flashing green again - the console then also continued with this:
Focus Delay: 21.2us
Set Focus:
Throughout this entire duration, the scope picked up on nothing.
Would love your thoughts on why this is the case. This was the norm for two different boards so I don't think it is a problem with the actual pcbs.
That is odd, I am using the same repo and the machine that I am running on hasn't ever ran this USTXv1 device, I had to set the board up and build everything from the repo to get it up and running. I have let it run and don't see the board go into thermal shutdown at all. I know it needed active cooling when we ran +/- 100V as the high voltage supply.
Without the trigger pulse this will not output anything, so that does need to be present. If everything checks out, the next thing would be to determine why the trigger pulse is not making it through.
Hi George,
In the process of checking for the voltage, one of the TX7332 chips "bursted"/burnt out and began emitting smoke. You can somewhat see the remnants of this event in the picture below:
I am extremely confused as to why/how this occurred and am interested to hear your thoughts. We inputted +/-12V as recc. and also had a USB C and barrel jack plugged in.
Before this occurred, I validated that there was a square pulse type wave that was coming out of U18 and R29. R2 was less easier to validate but it seemed there was just an offset of sorts, assuming it was measured correctly.
Description: I am having trouble verifying the functionality of the firmware on my USTX board using Putty. I have successfully programmed the firmware using the .elf file that loaded in the Binaries directory and the SEGGER J-Link debugger. However, I am unsure how to proceed with testing the firmware (either with or without Putty).
The README file mentions that a green indicator light should start flashing after successful programming, but in my case, the green light was flashing before programming and stopped after the debugging session.
Before the Debugging Session: Video
I have opened Putty and tried to establish a serial connection using the COM ports listed in device manager (not even sure if its being picked up through the COM Port), but I am not seeing any output or expected behavior.
Here is the session console log:
I would appreciate any guidance or suggestions on how to troubleshoot this issue and successfully test the firmware. Let me know if you need any additional information!
Edit: A detailed video on the issue we are dealing with and the strange activity observed. Previously, when adding in the USB C cable, the green light would blink. Was not reproducible in the video. Thanks!