Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Sat Feb 18, 2017 4:58 pm

curiouscat wrote:Found schematic for CM and it does appear to port out the four lanes.
I think what 6by9 was saying, was that these aren't pulled out on the pi side.

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Sat Feb 18, 2017 5:15 pm

Orbital6 wrote:
curiouscat wrote:Found schematic for CM and it does appear to port out the four lanes.
I think what 6by9 was saying, was that these aren't pulled out on the pi side.
On the CM and CM3, the full four lanes are routed out to the 22 pin CAM1 connector. CAM0 only has 2 lanes on the SoC, so some of the pins on the 22 pin connector are not connected.

On any other Pi only 2 lanes of the CAM1 interface are routed to the 15 pin camera connector (or 22 pin on Pi0). There is no way to get 4 lanes of CSI interface working on these versions of the Pi.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

curiouscat
Posts: 8
Joined: Tue Nov 22, 2016 6:40 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Tue Feb 21, 2017 4:41 pm

Looking at implementing raspi_tc358743.c. Are there any any instructions/guides for implementation and usage sort of trying to cypher from from code?

Currently I'm use uv4l to output mjpeg steam embedded within javascript webpage and this does work with Chrome and Firefox (not IE) however it will freeze up or start lagging from time to time requiring a browser refresh. I suspect I need to switch to an h.264 steam to avoid freezup and lag issues?

Current command line I'm using in rc.local to launch uv4l:
/usr/bin/uv4l -nopreview --auto-video_nr --driver raspicam --encoding mjpeg --quality 90 --metering matrix --drc low --width 1280 --height 720 --framerate 1$

What would raspi_tc358743.c command sequence look like where I may want h.264?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 10:06 am

curiouscat wrote:Looking at implementing raspi_tc358743.c. Are there any any instructions/guides for implementation and usage sort of trying to cypher from from code?

Currently I'm use uv4l to output mjpeg steam embedded within javascript webpage and this does work with Chrome and Firefox (not IE) however it will freeze up or start lagging from time to time requiring a browser refresh. I suspect I need to switch to an h.264 steam to avoid freezup and lag issues?

Current command line I'm using in rc.local to launch uv4l:
/usr/bin/uv4l -nopreview --auto-video_nr --driver raspicam --encoding mjpeg --quality 90 --metering matrix --drc low --width 1280 --height 720 --framerate 1$

What would raspi_tc358743.c command sequence look like where I may want h.264?
raspi_tc358743 is a work in progress, and an interim solution at that (the rawcam component needs to be replaced by a V4L2 driver which will also use the upstream TC358743 driver).

Orbital6's fork at https://github.com/orbitinstasis/userla ... mi_in_hack has taken my work further (and I need to merge it back in), but is still at the stage of only saving an H264 elementary stream, or sending it to stdout or a network socket. It doesn't do embedding into a web stream or other fancy stuff. It's all open source code, so feel free to take it and modify it as you wish.
"raspi-tc358743 -h" gives you the help text:

Code: Select all

Available options:
  -t Defaults to 0 ms which playbacks until ctrl+c.
  -o Output filename, default is 'test_encode.h264'.
  -n No output file saved.
  -h Help
The B101/B102 boards are sold by a third party (Auvidea). There is no official support from Raspberry Pi for this board, this is all an ongoing project by volunteers (although some bits may fall under my recent change of job to working at Pi Towers).
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 3:41 pm

I decided to have a go at getting hardware with four datalanes to work with the app by enabling all lanes on the tosh (not touched tosh timing) and setting 'rx_cfg.data_lanes = 4; ' for 720p and above resolutions, though i've only tested 1080p30 so far. Below is the log output, i'm sure there's a few other bits that need to be changed as there was no change in the terminal output.

Code: Select all

pi@raspberrypi:~/userland$ ./build/bin/raspi_tc358743
Filename is test_encode.h264
Playing back indefinitely
mmal: VI_STATUS to select cfg.data_lanes: 0
mmal: rx_cfg.data_lanes = 1
mmal: Set pack to 0, unpack to 0
mmal: Enable rawcam....
mmal: Enable isp....
mmal: Enable splitter....
mmal: VI_STATUS to select cfg.data_lanes: 0
mmal: Selected Sub 720p registers
mmal: Waiting to detect signal...
mmal: no_sync read 9F
mmal: no_signal read 9F
mmal: Signal reported
mmal: First playthrough, Goto Loop
mmal: VI_STATUS to select cfg.data_lanes: 15
mmal: rx_cfg.data_lanes = 4
mmal: Set pack to 0, unpack to 0
mmal: Enable rawcam....
mmal: Enable isp....
mmal: Enable splitter....
mmal: VI_STATUS to select cfg.data_lanes: 15
mmal: Selected 720p+ registers
mmal: Waiting to detect signal...
mmal: no_sync read 9F
mmal: no_signal read 9F
mmal: Signal reported
mmal: Signal is 1920 x 1080, frm_interval 333, so 30 fps
mmal: Frame w x h is 2200 x 1125
mmal: output: buffer size is 6266880 bytes, num 3
mmal: Create connection rawcam output to isp input....
mmal: Setting isp output port format
mmal: Create connection isp output to splitter input....
mmal: Create connection splitter output to render input....
mmal: Create connection splitter output2 to encoder input....
mmal: Enable encoder....
mmal: Enable connection[0]...
mmal: buffer size is 6266880 bytes, num 3
mmal: Enable connection[1]...
mmal: buffer size is 3133440 bytes, num 1
mmal: Enable connection[2]...
mmal: buffer size is 3133440 bytes, num 1
mmal: Enable connection[3]...
mmal: buffer size is 3133440 bytes, num 1
mmal: Create pool of 8 buffers of size 65536
mmal: mmal: Buffer 0xed6b08 returned, filled 20, timestamp 0, flags 0020
mmal: Buffer 0xed6b08 returned, filled 9, timestamp 0, flags 0024
Sent buffer 0xed6b08
mmal: Sent buffer 0xed6ce0
mmal: Sent buffer 0xed6eb8
mmal: Sent buffer 0xed7090
mmal: Sent buffer 0xed7268
mmal: Sent buffer 0xed7440
mmal: Sent buffer 0xed7618
mmal: Sent buffer 0xed77f0
mmal: All done. Start streaming...
mmal: View!
mmal: Sleeping until you ctrl+c me!
^CCaught signal 2
Cleanly exiting
mmal: Stopping streaming...
mmal: Buffer 0xed6b08 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xed6ce0 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xed6eb8 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xed7090 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xed7268 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xed7440 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xed7618 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xed77f0 returned, filled 0, timestamp 0, flags 0000
Any ideas?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 3:50 pm

Orbital6 wrote:I decided to have a go at getting hardware with four datalanes to work with the app by enabling all lanes on the tosh (not touched tosh timing) and setting 'rx_cfg.data_lanes = 4; ' for 720p and above resolutions, though i've only tested 1080p30 so far. Below is the log output, i'm sure there's a few other bits that need to be changed as there was no change in the terminal output.

Any ideas?
Are you running on a Compute Module with a B102? If not then the extra 2 lanes aren't physically connected together.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 4:18 pm

6by9 wrote:
Orbital6 wrote:I decided to have a go at getting hardware with four datalanes to work with the app by enabling all lanes on the tosh (not touched tosh timing) and setting 'rx_cfg.data_lanes = 4; ' for 720p and above resolutions, though i've only tested 1080p30 so far. Below is the log output, i'm sure there's a few other bits that need to be changed as there was no change in the terminal output.

Any ideas?
Are you running on a Compute Module with a B102? If not then the extra 2 lanes aren't physically connected together.
Have various hardware setups here including the dev kit, am running on a setup with all lanes connected.

I remember before when we had this problem (where the terminal didn't do anything) it was related to the timing reg 0x6, so i might tinker with that unless you know there's some other things i should look at?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 4:30 pm

Orbital6 wrote:Have various hardware setups here including the dev kit, am running on a setup with all lanes connected.
OK, I was just checking it wasn't the obvious thing :)
Orbital6 wrote:I remember before when we had this problem (where the terminal didn't do anything) it was related to the timing reg 0x6, so i might tinker with that unless you know there's some other things i should look at?
The FIFO timing register was one thing. That key register (can't remember which it was) was controlling how full the FIFO had to get before it started reading out. Trigger too soon compared to readout rate and the FIFO underflowed. Too late with a slower readout and the FIFO overflows.

The other approach would be to feed 1080P50 on the basis that it works with 1080P25 on 2 lanes, so with double the data lanes and double the data it would follow that the same settings may well work. The EDID probably needs to be updated to accomodate it, unless you force it on your source.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 4:35 pm

That's a great point, i will try 1080p50.

FIFO Level reg was 0x0006, that's the one i thought about tinkering with (if needed) though i don't really understand exactly what the value in FIFOLevel (the register) is changing, or by how much.

For now i'll try 1080p50 and get back to you.

Cheers.

Edit: i don't recall trying 25hz, i know 24hz worked though, regardless i'll go ahead.

Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 5:14 pm

Hmm, keeping in mind the edit in my last post, i can say 1080p50 wasn't a success. I'll do some more tests at some point but if there's nothing else in the code other than what i mentioned then i'm sure it'll be the FIFO level. This is the output:

Code: Select all

pi@raspberrypi:~/userland$ ./build/bin/raspi_tc358743 -t 5000
Filename is test_encode.h264
Playing back for 5000 ms.
mmal: VI_STATUS to select cfg.data_lanes: 0
mmal: rx_cfg.data_lanes = 1
mmal: Set pack to 0, unpack to 0
mmal: Enable rawcam....
mmal: Enable isp....
mmal: Enable splitter....
mmal: VI_STATUS to select cfg.data_lanes: 0
mmal: Selected Sub 720p registers
mmal: Waiting to detect signal...
mmal: no_sync read 9F
mmal: no_signal read 9F
mmal: Signal reported
mmal: First playthrough, Goto Loop
mmal: VI_STATUS to select cfg.data_lanes: 15
mmal: rx_cfg.data_lanes = 4
mmal: Set pack to 0, unpack to 0
mmal: Enable rawcam....
mmal: Enable isp....
mmal: Enable splitter....
mmal: VI_STATUS to select cfg.data_lanes: 15
mmal: Selected 720p+ registers
mmal: Waiting to detect signal...
mmal: no_sync read 9F
mmal: no_signal read 9F
mmal: Signal reported
mmal: Signal is 1920 x 1080, frm_interval 200, so 50 fps
mmal: Frame w x h is 2640 x 1125
mmal: output: buffer size is 6266880 bytes, num 3
mmal: Create connection rawcam output to isp input....
mmal: Setting isp output port format
mmal: Create connection isp output to splitter input....
mmal: Create connection splitter output to render input....
mmal: Create connection splitter output2 to encoder input....
mmal: Enable encoder....
mmal: Enable connection[0]...
mmal: buffer size is 6266880 bytes, num 3
mmal: Enable connection[1]...
mmal: buffer size is 3133440 bytes, num 1
mmal: Enable connection[2]...
mmal: buffer size is 3133440 bytes, num 1
mmal: Enable connection[3]...
mmal: buffer size is 3133440 bytes, num 1
mmal: mmal_vc_port_enable: failed to enable port vc.ril.video_encode:in:0(I420):                                      EINVAL
mmal: mmal_port_enable: failed to enable connected port (vc.ril.video_encode:in:                                     0(I420))0xef7a60 (EINVAL)
mmal: mmal_connection_enable: output port couldn't be enabled
mmal: Create pool of 8 buffers of size 65536
mmal: Sent buffer 0xef9a58
mmal: Sent buffer 0xef9c30
mmal: Sent buffer 0xef9e08
mmal: Sent buffer 0xef9fe0
mmal: Sent buffer 0xefa1b8
mmal: Sent buffer 0xefa390
mmal: Sent buffer 0xefa568
mmal: Sent buffer 0xefa740
mmal: All done. Start streaming...
mmal: View!
mmal: Sleeping for 5000 ms
mmal: Stopping streaming...
mmal: Buffer 0xef9a58 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xef9c30 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xef9e08 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xef9fe0 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xefa1b8 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xefa390 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xefa568 returned, filled 0, timestamp 0, flags 0000
mmal: Buffer 0xefa740 returned, filled 0, timestamp 0, flags 0000

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 6:11 pm

Oh my, I'm embarrassed. Silly blunder in my EDID parsing code that you reverted.
Fixed up and I'll merge all your changes and that fix later on.
I'm also adding EDID options between 2 and 4 lanes that adds in 1080P50 and 60 to the EDID.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 10:09 pm

I've merged Orbital6's changes back into my hdmi_in_hack branch, and added an EDID that includes 1080P50 and 60.

Something a little funny is happening there as I'm not getting VIC 60-62 (720P 24, 25, and 30) showing up when I use a Pi as the HDMI source. I'll try to dissect the EDID again when I get a chance - I don't know if it is the Pi source or the EDID at fault.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 10:12 pm

6by9 wrote:I've merged Orbital6's changes back into my hdmi_in_hack branch, and added an EDID that includes 1080P50 and 60.

Something a little funny is happening there as I'm not getting VIC 60-62 (720P 24, 25, and 30) showing up when I use a Pi as the HDMI source. I'll try to dissect the EDID again when I get a chance - I don't know if it is the Pi source or the EDID at fault.
I've always had really bizarre behaviour when using a pi as source, it seems to entirely not care about HPDI / HPDO too. I'll build and check your new update on my pc and see what EDID it sees there.

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 10:38 pm

An extra commit just pushed - it helps if you send all the bytes of the EDID, and not forget to copy every 16th one.

Now I'm not missing modes, but it is complaining both checksums are incorrect and my laptop seems to be ignoring the display (it was switching to it).
I think I know what is wrong, but it's a job for tomorrow.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Feb 22, 2017 10:40 pm

6by9 wrote:An extra commit just pushed - it helps if you send all the bytes of the EDID, and not forget to copy every 16th one.

Now I'm not missing modes, but it is complaining both checksums are incorrect and my laptop seems to be ignoring the display (it was switching to it).
I think I know what is wrong, but it's a job for tomorrow.
Hah.

Let me know if you want me to test anything. Also, do tell when you figured it out.

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Thu Feb 23, 2017 11:23 am

I'm fairly happy with the branch now, although I can't test the 4 lane EDID. I'll leave that up to Orbital6.

There were a further couple of issues, and never rely on tools. The version of edid-decode in apt-get has several issues, including not displaying the last VIC configured. There's an updated version at https://github.com/rpavlik/edid-decode, but that then gets a little grumpy at my DTDs for some reason where the original didn't. I'm not going to investigate further now as it all seems to work.

If others want to fiddle with the EDID further I've added some comments to it. My reference has been https://en.wikipedia.org/wiki/Extended_ ... ation_Data rather than the specification docs.
Looking at the edid-decode source, the block I've not decoded appears to be an extended video capability data block.

If you are wanting to build that version of edid-decode, then you'll need to add

Code: Select all

#ifndef O_BINARY
  #define O_BINARY 0
#endif
after the #includes. Someone is obviously using it on another OS, as Linux doesn't support/define O_BINARY.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

schwami7488
Posts: 2
Joined: Sat Feb 25, 2017 1:04 am

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Sat Feb 25, 2017 1:12 am

Hi there,

I've been following this thread for some time as I've been playing around with the B101, and I just want to say thanks to Orbital6, 6by9, and all others that have put in so much hard work making this as usable as possible.

I don't have any background with EDID, but I read through thread discussions here. I have a quick question before trying to dive in further. I have a 1080p60 video feed that I'm trying to get into the RPi3 through the B101 module, though I understand the RPi can only take 1080p30. Is it possible to somehow get the B101 to take 1080p60 as input and output 1080p30 to be accepted by the RPi?

Thanks for any guidance!

Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Sat Feb 25, 2017 2:07 am

schwami7488 wrote:Hi there,

I've been following this thread for some time as I've been playing around with the B101, and I just want to say thanks to Orbital6, 6by9, and all others that have put in so much hard work making this as usable as possible.

I don't have any background with EDID, but I read through thread discussions here. I have a quick question before trying to dive in further. I have a 1080p60 video feed that I'm trying to get into the RPi3 through the B101 module, though I understand the RPi can only take 1080p30. Is it possible to somehow get the B101 to take 1080p60 as input and output 1080p30 to be accepted by the RPi?

Thanks for any guidance!
Hi schwami7488,

I don't think you can get the toshiba module to up or downscale your source, or change the framerate. I might be wrong, but afaik it just takes in HDMI and spits out CSI.

I've been experimenting this week on trying to get all four data lanes working which would be able to support up to 1080p50, but ran into some troubles. Regardless, even if it worked you would not be able to use four lanes on anything other than the compute modules as they're not pulled on on other pi's as mentioned in an earlier post.

The problem i had was a bit of an odd one, video was being offset massively to the left, it may be something stupid on the sink.

tiffo
Posts: 1
Joined: Wed Mar 08, 2017 7:02 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Mar 08, 2017 7:11 pm

Hi guys, I have just bought a B101 Rev3.0 from Auvidea. I am currently using a RPi3 with Jessie 4.9.13 (everything up to date). In the User Manual I read the B101 rev 3.0 must be reset through the RESET pin and that is what I am doing every time before calling rapivid.

Could you please tell me what to do in order to get the B101 up an running? Using raspivid -t 0 produces a video that after a while turns black and the RPi3 remains hung somewhere, so that I have to physically unplug the power as it does not reboot or shutdown :x

Could you advise for any repository/branch to clone? And what to build next?

Thanks

sorbonne
Posts: 49
Joined: Thu Jan 14, 2016 10:25 am

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Tue Mar 14, 2017 10:06 pm

Does anybody know what ENOSPC stands for in the following output when trying to use the B101 rev4?

Code: Select all

$ raspivid -t 0
mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
mmal: camera component couldn't be enabled
mmal: main: Failed to create camera component
mmal: Failed to run camera app. Please check for firmware updates
I am running the latest Jessie (with no changes at all). The above is the only command I tried to run. According to the B101 doc I should not do anything else with this rev.

Code: Select all

pi@raspberrypi:~ $ vcgencmd get_camera
supported=1 detected=1

User avatar
DougieLawson
Posts: 29760
Joined: Sun Jun 16, 2013 11:19 pm
Location: Basingstoke, UK
Contact: Website

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Mar 15, 2017 9:53 am

I think you get ENOSPC when you have two camera processes running. The second one can't access the camera because it's in use.
Microprocessor, Raspberry Pi & Arduino Hacker
Mainframe database troubleshooter
MQTT Evangelist
Twitter: @DougieLawson

Since 2012: 1B*5, 2B*2, B+, A+, Zero*2, 3B*3

Please post ALL technical questions on the forum. Do not send private messages.

sorbonne
Posts: 49
Joined: Thu Jan 14, 2016 10:25 am

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Mar 15, 2017 10:35 am

DougieLawson wrote:I think you get ENOSPC when you have two camera processes running. The second one can't access the camera because it's in use.
no other processes are using the camera at the same time. I read the instructions in the B101 documentation after a fresh installation of the latest Jessie on a Rpi3 and tried to ran one raspivid command.

I am getting crazy to understand why I get that ENOSPC. As far as I know, raspivid should at least work with 720p.

I tried various input sources including the HDMI-out from one Raspberry Pi.

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4442
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Mar 15, 2017 11:46 am

sorbonne wrote:
DougieLawson wrote:I think you get ENOSPC when you have two camera processes running. The second one can't access the camera because it's in use.
no other processes are using the camera at the same time. I read the instructions in the B101 documentation after a fresh installation of the latest Jessie on a Rpi3 and tried to ran one raspivid command.

I am getting crazy to understand why I get that ENOSPC. As far as I know, raspivid should at least work with 720p.

I tried various input sources including the HDMI-out from one Raspberry Pi.
As has been stated many times, using raspivid with the TC358743 is NOT a supported option in the firmware. If it breaks then I'm afraid I won't be prioritising looking for a fix. Auvidea are very naughty in offloading the software side onto someone else's unsupported code as they are.

Ongoing development by Orbital6 and myself has been merged to https://github.com/6by9/userland/tree/hdmi_in_hack. Still unofficial, but almost all in the open, and should be automatically detecting the input resolution and adopting it so no restriction on 720P. If there are issues there then I'm happy to investigate.

If you insist on using the firmware driver, then you can try enabling asserts (add "start_debug=1" to /boot/config.txt, and use "sudo vcdbg log assert" to read the most recent asserts). Alternatively you may find something with "sudo vcdbg log msg".
The other thing is that you may need to connect your source after you've started raspivid. The EDID isn't downloaded until raspivid is started which can upset some sources. I wouldn't expect it to give ENOSPC though.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

sorbonne
Posts: 49
Joined: Thu Jan 14, 2016 10:25 am

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Mar 15, 2017 1:05 pm

6by9 wrote:Ongoing development by Orbital6 and myself has been merged to https://github.com/6by9/userland/tree/hdmi_in_hack. Still unofficial, but almost all in the open, and should be automatically detecting the input resolution and adopting it so no restriction on 720P.
Many thanks for your hard work on this. Are you talking about using this in particular, right (not the version of raspivid in that branch)?

https://github.com/6by9/userland/blob/h ... tc358743.c
6by9 wrote:If you insist on using the firmware driver, then you can try enabling asserts (add "start_debug=1" to /boot/config.txt, and use "sudo vcdbg log assert" to read the most recent asserts). Alternatively you may find something with "sudo vcdbg log msg".
The other thing is that you may need to connect your source after you've started raspivid. The EDID isn't downloaded until raspivid is started which can upset some sources. I wouldn't expect it to give ENOSPC though.
Thanks, I will try the above as well. My aim for now is to (try) to push raspivid to its *actual* limits (720p would be ok) and switch to the new software if it's absolutely necessary. The thing is that I am already using raspivid everywhere in my deployments and want to postpone any software changes in the future if possible.

Orbital6
Posts: 122
Joined: Sat Aug 08, 2015 6:32 pm

Re: HDMI to CSI-2 via TC358743 on kernel 4.1

Wed Mar 15, 2017 1:16 pm

Did you ever manage to get the b101 working? If not then you may have a problem with the physical connection, as that's when i saw that error most.

Also Jurgens made mistakes with the HPD line before which took me a while to figure out, if it gets that bad then make sure your control lines are working as they should (DDC and HPD) - though IIRC the rev 4's only difference is the I2S being pulled out (which is a ball ache in itself).

Return to “Graphics, sound and multimedia”

Who is online

Users browsing this forum: No registered users and 8 guests