Some news. PCB's are all assembled and the FPGA is programmable. I also got the Microblaze running and the LED is blinking.
Problem now is how to initialize the VDMA which is programmed completly by Vaagn. Any help would be great :-)
A simple "Hello World" on the LCD would be great in a first step.
Finally some good news. Got some really nice help from Carlos to get the VDMA initialized and getting some data out of it.
- RAM test was successfull
- VDMA is running
- LCD driver needed some fixes but is working fine now and the lcd is showing some stuff from the RAM
I‘ll continue and keep you up to date if there is anything new. But I can now continue.
Think you for your effort.
Hopefully it's worth the effort. Sensor voltages are all working fine.
A little warning if you ever try to build this camera. Don't use the verilog files as they are in github and connect the camera. The constraints file (defining the in-/outputs) doesn't match the current status of the circuit diagram.
So this will lead to a short circuit because there are some spare pins of the FPGA used which are connected to GND by the sensor.
I will connect the camera soon. Hopefully it works without sending a special command at the beginning which I don't know yet.
Moreover the activity LED circuit on the P-board is bad designed. Once the LED is turned on one resistor shortens the 3,3V supply and this resistor is overloaded. One solution would be to just increase the resistors to 270R.
Sadly we don't have got the original Altium files.
Edit: Just replaced R29 and R35 to 270R and it is working fine.
Connected the camera to the board but I don't get an image. Would be too simple.
Current consumption looks good and it doesn't smell like burnt electronic.
Does anyone of you know if I need a special cmd to get pixel data from the sensor? Any idea how to get this? Maybe powering up the original board and measuring the signals without the sensor?
Hope somebody has got experience.
I just added here my progress of the actual code. Hope it helps somebody. I used Vitis 2024.1 for coding.
Hi,
Been working in the past with ISC0601 so the more encapsulated sensor and as I remember it needed a logic slope on one of the pins to send out a frame.
You would find this info on this forum.
I bet VGC implemented such signal into FPGA this way determining desired frame rate.
Most if not all FPAs need a shot trigger, they won't just free run. This is how they get windowing down to increase frame rate to work better.
One of the pins does need to be toggled to make it sample a frame
Camera is outputting data on data even line. Measured with my oscilloscope. So I get something. I have to figure out what's wrong now.
Thanks for your answers. My sensor is continously running at 60Hz and the HDL requests a new frame via cmd line. So that is working pretty well.
I also receive SOF (Start Of Frame) and EOL (End Of Line) signals from HDL design. I created some ILA's to analyze everything. Also the raw axi stream is working.
But I still have to fix some errors. So no image to show until now. Until now I'm really happy about my progress so far.
Attached are some oscilloscope pictures of the working sensor and the data_even line. Note that ground isn't perfect.
Found some failures in the HDL design. Raw image stream is now working and shown on the LCD.
Now I have to check the NUC and histogram equalization.
I think there's more missing in this image than just post-processing. Perhaps some binary mix is involved, like wrong bit or byte order or other 14-bit-stream conversion errors.
And what are those geometrical spots / overlays on the image ? Try using some more contrasted object like a cup of hot tea or something.
Yes of course. It's the 14bit pixel data streamed through the LUT (look up table/heatmap) which only expects 8-bit per pixel. But the stream is written to RAM and read from RAM. So that is already all working.
Those geometrical spots are OSD (Blue cube, green line, blue circle) data which are shown as overlay. Just some playing with the graphics library.
You can create a patronite account for help you with your work