klaff
Posts: 11
Joined: Mon Mar 09, 2015 7:09 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Tue Mar 31, 2015 6:52 pm

pi@raspberrypi ~/gpiotest $ vcgencmd version
Mar 16 2015 19:34:31
Copyright (c) 2012 Broadcom
version 51ab816b505d1b745130562908d866915c836056 (clean) (release)
pi@raspberrypi ~/gpiotest $

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Tue Apr 07, 2015 8:57 am

Sorry, but until someone sends in a non-working set up, I have to conclude PEBCAK. However, I did find that it didn't work with the current raspberrypi-bootloader package (rpi-update fixed it).

Code: Select all

root@serge-cm:~# vcgencmd version
Mar 16 2015 19:34:31 
Copyright (c) 2012 Broadcom
version 51ab816b505d1b745130562908d866915c836056 (clean) (release)

Code: Select all

root@serge-cm:~# cat /boot/config.txt 
start_x=1
gpu_mem=128

Code: Select all

root@serge-cm:~# md5sum /boot/dt-blob.bin
8971741228b1c984a1d4e0b219cbb5a3  /boot/dt-blob.bin

Code: Select all

root@serge-cm:~# uname -a
Linux serge-cm 3.18.9+ #768 PREEMPT Sun Mar 15 18:59:03 GMT 2015 armv6l GNU/Linux

Code: Select all

root@serge-cm:~# cat /proc/cpuinfo | grep Revision
Revision        : 0014

Code: Select all

root@serge-cm:~# vcgencmd get_camera
supported=2 detected=2

Code: Select all

root@serge-cm:~# raspivid -cs 1
root@serge-cm:~# raspivid -cs 0
root@serge-cm:~#
Edit: By the way, I don't mean any offense when I say it might be a pebcak issue. It's just that I can't reproduce it. It is reported by a number of people though, so I think there has to be something more to it than a mistake somewhere.

Torkel
Posts: 27
Joined: Thu Apr 16, 2015 8:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Thu Apr 16, 2015 9:03 pm

Hi, this is my first post to this forum. I just bought a brand new compute module and two cameras (with wide angle lenses - they give better pictures too!) for a project. I was lucky to notice the second camera adaptor board actually wasn't a camera adaptor board at all... so I yesterday received a proper second camera adaptor board from Farnell (only UPS shipping... so expensive... *sad*).

I had multiple issues getting this up and running:

- The current raspbian release linked to from the main raspberry pi homepage contains a known bug that causes boot problems for the compute module. It boots after a minute of rest (weird!) and then 'rpi-update' fixes it.
- It was not obvious for me that one needed to change pins and upload the "dt-blob" to /boot in order to get two cameras going (a hint about this would have been great in the first section on this page: https://www.raspberrypi.org/documentati ... -camera.md)
- I had the same issue as experienced by several other people here - pin 2 and pin 3 will not work for controlling a camera. Changing it to pin 4 and pin 5 fixes it. If the cables are not moved the LED is dim and the camera works, but probably the camera is on all the time in that case since its enabled by something that seems initialised wrong - better move the cables if you changed the pin assignents, people ;)

I got this working now, so there's no way I'm sending my board in... And anybody else stumbling over this problem will hopefully find this thread and solve the issue the way I did it, so I doubt you'll get someone to send gear to you, ShiftPlusOne ;)

Oh, one more detail that got me: in order to "change pin assignments", one downloads the file from m.furukawa (see page 1 of this thread!) and then open the file. In the very last section of the file there are lines beginning with "pin@p2" - change this to "pin@p4" (and 3 to 5!). A bit lower down there are "pin_define@CAMERA1_LED ..... <2>.." change to "..<4>.." (also 3 to 5). (I missed doing both the pin and the pin_define changes and thought it didn't work for me because Murphy.)

So, anyway, now all is up and running. Yay!
Next step for me is figuring out just how much video from the two separate cameras I can push though Videocore and UDP-stream out :)

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Thu Apr 16, 2015 9:30 pm

You won't need to use rpi-update fairly soon.

I don't know how to make the dt-blob stuff any clearer, so if you do, a pull request would be welcome.

The stuff about certain pins not working (probably being in a wrong mode) is interesting, but again, I can't do anything about it if I can't reproduce it.

Either they're not set to the correct mode by the firmware or something else comes along and changes them back.

Torkel
Posts: 27
Joined: Thu Apr 16, 2015 8:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Fri Apr 17, 2015 6:58 am

Ok, I did a pull request on the doc page with some suggestions for clarifying the second camera stuff:
https://github.com/raspberrypi/documentation/pull/212

SteveBooth
Posts: 10
Joined: Sun Mar 15, 2015 2:30 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Tue Apr 28, 2015 11:16 pm

Add me to the list of people that got a Display adapter card instead of a Camera adapter card, and because the ID on the card is virtually invisible to anyone without an SEM, I blithely plugged in my brand new wide-angle camera, and could not get it to work.

Not sure what I do now. I guess order an actual camera adapter.

Super-bad design guys. if you have to incompatible ports on a device, you do not design them to use identical cables, and to look exactly the same. I may have now blown out my camera as a result.

notacake
Posts: 6
Joined: Thu Apr 18, 2013 12:46 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Thu May 21, 2015 7:20 pm

I too have had this problem. I downloaded the latest Raspbian image, did rpi-update, and followed the guide word-for-word at https://www.raspberrypi.org/documentati ... -camera.md. Same problem as the other people in this thread, CAM0 would work, CAM1 wouldn't. I first used peoples suggestions here to work around it by modifying the DTS file to use pins 4 & 5, but then I decided to switch back to the dual camera DTS file from the guide and dig a little deeper. That's when I found this in my dmesg output:

Code: Select all

[    5.512875] bcm2708_i2c_init_pinmode(1,2)
[    5.520561] bcm2708_i2c_init_pinmode(1,3)
So I created the file /etc/modprobe.d/i2c_bcm2708.conf with the contents:

Code: Select all

blacklist i2c_bcm2708
Then ran:

Code: Select all

sudo depmod -a
And rebooted, no more messages about setting I2C pinmode in dmesg, and both cameras are now working with pins 2 & 3! So the I2C module is taking control of the GPIO pins 2 & 3, which I've confirmed with my logic analyzer, the pins first go low on boot, then get pulled high as the kernel boots.

Now this doesn't really help if you need I2C, so something still needs to be fixed, but I'm willing to help test anything you need me to. I can also send you the compute module if you still need it (and maybe the I/O board if absolutely necessary).

Here's some version info:

Code: Select all

pi@raspberrypi ~ $ uname -a
Linux raspberrypi 3.18.13+ #784 PREEMPT Sat May 9 15:49:42 BST 2015 armv6l GNU/Linux

Code: Select all

pi@raspberrypi ~ $ cat /proc/cpuinfo
processor       : 0
model name      : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS        : 2.00
Features        : half thumb fastmult vfp edsp java tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x0
CPU part        : 0xb76
CPU revision    : 7

Hardware        : BCM2708
Revision        : 0011
Serial          : 00000000b7516242

Code: Select all

pi@raspberrypi ~ $ vcgencmd version
May 13 2015 14:58:12
Copyright (c) 2012 Broadcom
version 8e0e0dbfe92be77d6355082451280d32f5bf0ff3 (clean) (release)

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Thu May 21, 2015 7:43 pm

That seems to make perfect sense. In my testing, I didn't have the i2c module loaded. Between what the people at pi towers have found recently (device tree related issue) and what you've just pointed out, I think a lot of the problems reported here have been addressed.

Thank you very much for looking into it. I'll need to re-read the thread again to make sure everything makes sense, but that sounds very promising.

ReneHaren
Posts: 11
Joined: Sun Jul 19, 2015 12:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Sun Jul 19, 2015 7:03 pm

I experians the same problem.
If I can help by testing please advise me what to do.

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Sun Jul 19, 2015 7:40 pm

Could you please install device-tree-compiler, provide the content of config.txt, your dt-blob.dts, output of 'dtc -I fs /proc/device-tree' and `vcgencmd version`?

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

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 10:53 am

Assuming you are using device tree, the kernel I2C driver has been corrected to not mess with pin muxing. That should have resolved these reported problems (though left you with I2C-1 not mapped to useful pins).

If you're not using device tree but are loading the i2c modules, then you will have to move the shutdown and LED pins off GPIO 2&3. If I've read the docs correctly, then the only other muxing option for I2C-1 is GPIOs 44&45, so you will have to do some pin remuxing for that as well.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 12:01 pm

6by9 wrote:Assuming you are using device tree, the kernel I2C driver has been corrected to not mess with pin muxing.
But if the user has dtparam=i2c=on or similar in config.txt then they'd still run into the problem. So the output of 'dtc -I fs /proc/device-tree' and 'sudo raspi-gpio get' should be helpful.

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

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 1:16 pm

ShiftPlusOne wrote:
6by9 wrote:Assuming you are using device tree, the kernel I2C driver has been corrected to not mess with pin muxing.
But if the user has dtparam=i2c=on or similar in config.txt then they'd still run into the problem. So the output of 'dtc -I fs /proc/device-tree' and 'sudo raspi-gpio get' should be helpful.
Fair cop.
I hadn't noted that the i2c overlay fragments included the alt function for the gpios, just that the driver used to be doing it and was fixed in https://github.com/raspberrypi/linux/co ... 2192c5745d "i2c-bcm2708: When using DT, leave the GPIO setup to pinctrl "
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

ReneHaren
Posts: 11
Joined: Sun Jul 19, 2015 12:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 5:22 pm

dtc -I fs /proc/device-tree
Gives

FATAL ERROR: Couldn't opendir() "/proc/device-tree": No such file or directory

dtc is default installed by NOOBS.


vcgencmd version
Apr 21 2015 14:40:08
Copyright (c) 2012 Broadcom
version 2d5ad04b63af4233440c3f7c8587108223201102 (clean) (release)


Config.txt

Code: Select all

# For more options and information see 
# http://www.raspberrypi.org/documentation/configuration/config-txt.md
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
#disable_overscan=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1

# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800

# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on

# Uncomment this to enable the lirc-rpi module
#dtoverlay=lirc-rpi

# Additional overlays and parameters are documented /boot/overlays/README


# NOOBS Auto-generated Settings:
hdmi_force_hotplug=1
config_hdmi_boost=4
overscan_left=24
overscan_right=24
overscan_top=16
overscan_bottom=16
disable_overscan=0
start_x=1
gpu_mem=128

dt-blob.dts

Code: Select all


/dts-v1/;

/ {

	videocore {

		pins_rev1 {

			pin_config {

				pin@default {
					polarity = "active_high";
					termination = "pull_down";
					startup_state = "inactive";
					function = "input";
				};

				pin@p2 {
					function = "i2c1";
					termination = "pull_up";
				};

				pin@p3 {
					function = "i2c1";
					termination = "pull_up";
				};

				pin@p5 {
					function = "output";
					termination = "pull_down";
				};

				pin@p6 {
					function = "output";
					termination = "pull_down";
				};

				pin@p14 {
					function = "uart0";
					termination = "no_pulling";
					drive_strength_mA = <0x8>;
				};

				pin@p15 {
					function = "uart0";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p16 {
					function = "output";
					termination = "pull_up";
					polarity = "active_low";
				};

				pin@p27 {
					function = "output";
					termination = "no_pulling";
				};

				pin@p40 {
					function = "pwm";
					termination = "no_pulling";
					drive_strength_mA = <0x10>;
				};

				pin@p45 {
					function = "pwm";
					termination = "no_pulling";
					drive_strength_mA = <0x10>;
				};

				pin@p46 {
					function = "input";
					termination = "no_pulling";
				};

				pin@p47 {
					function = "input";
					termination = "no_pulling";
				};

				pin@p48 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p49 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p50 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p51 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p52 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p53 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};
			};

			pin_defines {

				pin_define@HDMI_CONTROL_ATTACHED {
					type = "internal";
					number = <0x2e>;
				};

				pin_define@NUM_CAMERAS {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_UNICAM_PORT {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_I2C_PORT {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_SDA_PIN {
					type = "internal";
					number = <0x2>;
				};

				pin_define@CAMERA_0_SCL_PIN {
					type = "internal";
					number = <0x3>;
				};

				pin_define@CAMERA_0_SHUTDOWN {
					type = "internal";
					number = <0x1b>;
				};

				pin_define@CAMERA_0_LED {
					type = "internal";
					number = <0x5>;
				};

				pin_define@FLASH_0_ENABLE {
					type = "absent";
				};

				pin_define@FLASH_0_INDICATOR {
					type = "absent";
				};

				pin_define@FLASH_1_ENABLE {
					type = "absent";
				};

				pin_define@FLASH_1_INDICATOR {
					type = "absent";
				};

				pin_define@POWER_LOW {
					type = "absent";
				};

				pin_define@LEDS_DISK_ACTIVITY {
					type = "internal";
					number = <0x10>;
				};

				pin_define@LAN_RESET {
					type = "internal";
					number = <0x6>;
				};
			};
		};

		pins_rev2 {

			pin_config {

				pin@default {
					polarity = "active_high";
					termination = "pull_down";
					startup_state = "inactive";
					function = "input";
				};

				pin@p0 {
					function = "i2c0";
					termination = "pull_up";
				};

				pin@p1 {
					function = "i2c0";
					termination = "pull_up";
				};

				pin@p5 {
					function = "output";
					termination = "pull_down";
				};

				pin@p6 {
					function = "output";
					termination = "pull_down";
				};

				pin@p14 {
					function = "uart0";
					termination = "no_pulling";
					drive_strength_mA = <0x8>;
				};

				pin@p15 {
					function = "uart0";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p16 {
					function = "output";
					termination = "pull_up";
					polarity = "active_low";
				};

				pin@p21 {
					function = "output";
					termination = "no_pulling";
				};

				pin@p40 {
					function = "pwm";
					termination = "no_pulling";
					drive_strength_mA = <0x10>;
				};

				pin@p45 {
					function = "pwm";
					termination = "no_pulling";
					drive_strength_mA = <0x10>;
				};

				pin@p46 {
					function = "input";
					termination = "no_pulling";
				};

				pin@p47 {
					function = "input";
					termination = "no_pulling";
				};

				pin@p48 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p49 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p50 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p51 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p52 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p53 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};
			};

			pin_defines {

				pin_define@HDMI_CONTROL_ATTACHED {
					type = "internal";
					number = <0x2e>;
				};

				pin_define@NUM_CAMERAS {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_I2C_PORT {
					type = "internal";
					number = <0x0>;
				};

				pin_define@CAMERA_0_SDA_PIN {
					type = "internal";
					number = <0x0>;
				};

				pin_define@CAMERA_0_SCL_PIN {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_SHUTDOWN {
					type = "internal";
					number = <0x15>;
				};

				pin_define@CAMERA_0_UNICAM_PORT {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_LED {
					type = "internal";
					number = <0x5>;
				};

				pin_define@FLASH_0_ENABLE {
					type = "absent";
				};

				pin_define@FLASH_0_INDICATOR {
					type = "absent";
				};

				pin_define@FLASH_1_ENABLE {
					type = "absent";
				};

				pin_define@FLASH_1_INDICATOR {
					type = "absent";
				};

				pin_define@POWER_LOW {
					type = "absent";
				};

				pin_define@LEDS_DISK_ACTIVITY {
					type = "internal";
					number = <0x10>;
				};

				pin_define@LAN_RESET {
					type = "internal";
					number = <0x6>;
				};
			};
		};

		pins_bplus {

			pin_config {

				pin@default {
					polarity = "active_high";
					termination = "pull_down";
					startup_state = "inactive";
					function = "input";
				};

				pin@p14 {
					function = "uart0";
					termination = "no_pulling";
					drive_strength_mA = <0x8>;
				};

				pin@p15 {
					function = "uart0";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p28 {
					function = "i2c0";
					termination = "pull_up";
				};

				pin@p29 {
					function = "i2c0";
					termination = "pull_up";
				};

				pin@p31 {
					function = "output";
					termination = "pull_down";
				};

				pin@p32 {
					function = "output";
					termination = "pull_down";
				};

				pin@p35 {
					function = "input";
					termination = "no_pulling";
					polarity = "active_low";
				};

				pin@p38 {
					function = "output";
					termination = "no_pulling";
				};

				pin@p40 {
					function = "pwm";
					termination = "no_pulling";
					drive_strength_mA = <0x10>;
				};

				pin@p41 {
					function = "output";
					termination = "no_pulling";
				};

				pin@p44 {
					function = "gp_clk";
					termination = "pull_down";
				};

				pin@p45 {
					function = "pwm";
					termination = "no_pulling";
					drive_strength_mA = <0x10>;
				};

				pin@p46 {
					function = "input";
					termination = "no_pulling";
					polarity = "active_low";
				};

				pin@p47 {
					function = "output";
					termination = "pull_down";
				};

				pin@p48 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p49 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p50 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p51 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p52 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p53 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};
			};

			pin_defines {

				pin_define@HDMI_CONTROL_ATTACHED {
					type = "internal";
					number = <0x2e>;
				};

				pin_define@NUM_CAMERAS {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_I2C_PORT {
					type = "internal";
					number = <0x0>;
				};

				pin_define@CAMERA_0_SDA_PIN {
					type = "internal";
					number = <0x1c>;
				};

				pin_define@CAMERA_0_SCL_PIN {
					type = "internal";
					number = <0x1d>;
				};

				pin_define@CAMERA_0_SHUTDOWN {
					type = "internal";
					number = <0x29>;
				};

				pin_define@CAMERA_0_UNICAM_PORT {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_LED {
					type = "internal";
					number = <0x20>;
				};

				pin_define@FLASH_0_ENABLE {
					type = "absent";
				};

				pin_define@FLASH_0_INDICATOR {
					type = "absent";
				};

				pin_define@FLASH_1_ENABLE {
					type = "absent";
				};

				pin_define@FLASH_1_INDICATOR {
					type = "absent";
				};

				pin_define@POWER_LOW {
					type = "internal";
					number = <0x23>;
				};

				pin_define@LEDS_DISK_ACTIVITY {
					type = "internal";
					number = <0x2f>;
				};

				pin_define@LAN_RESET {
					type = "internal";
					number = <0x1f>;
				};
			};
		};

		pins_cm {

			pin_config {

				pin@default {
					polarity = "active_high";
					termination = "pull_down";
					startup_state = "inactive";
					function = "input";
				};

				pin@p2 {
					function = "output";
					termination = "no_pulling";
				};

				pin@p3 {
					function = "output";
					termination = "no_pulling";
				};

				pin@p14 {
					function = "uart0";
					termination = "no_pulling";
				};

				pin@p15 {
					function = "uart0";
					termination = "pull_up";
				};

				pin@p30 {
					function = "output";
					termination = "no_pulling";
				};

				pin@p31 {
					function = "output";
					termination = "no_pulling";
				};

				pin@p47 {
					function = "output";
					termination = "pull_up";
				};

				pin@p48 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p49 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p50 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p51 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p52 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};

				pin@p53 {
					function = "sdcard";
					termination = "pull_up";
					drive_strength_mA = <0x8>;
				};
			};

			pin_defines {

				pin_define@NUM_CAMERAS {
					type = "internal";
					number = <0x2>;
				};

				pin_define@CAMERA_1_LED {
					type = "internal";
					number = <0x2>;
				};

				pin_define@CAMERA_1_SHUTDOWN {
					type = "internal";
					number = <0x3>;
				};

				pin_define@CAMERA_1_UNICAM_PORT {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_1_I2C_PORT {
					type = "internal";
					number = <0x0>;
				};

				pin_define@CAMERA_1_SDA_PIN {
					type = "internal";
					number = <0x0>;
				};

				pin_define@CAMERA_1_SCL_PIN {
					type = "internal";
					number = <0x1>;
				};

				pin_define@CAMERA_0_LED {
					type = "internal";
					number = <0x1e>;
				};

				pin_define@CAMERA_0_SHUTDOWN {
					type = "internal";
					number = <0x1f>;
				};

				pin_define@CAMERA_0_UNICAM_PORT {
					type = "internal";
					number = <0x0>;
				};

				pin_define@CAMERA_0_I2C_PORT {
					type = "internal";
					number = <0x0>;
				};

				pin_define@CAMERA_0_SDA_PIN {
					type = "internal";
					number = <0x1c>;
				};

				pin_define@CAMERA_0_SCL_PIN {
					type = "internal";
					number = <0x1d>;
				};

				pin_define@LEDS_DISK_ACTIVITY {
					type = "internal";
					number = <0x2f>;
				};

				pin_define@POWER_LOW {
					type = "absent";
				};
			};
		};
	};
};




$ sudo raspi-gpio get

Code: Select all


BANK0 (GPIO 0 to 27):
  GPIO 00: level=1 fsel=0 alt=  func=INPUT
  GPIO 01: level=1 fsel=0 alt=  func=INPUT
  GPIO 02: level=0 fsel=4 alt=0 func=SDA1
  GPIO 03: level=0 fsel=4 alt=0 func=SCL1
  GPIO 04: level=1 fsel=0 alt=  func=INPUT
  GPIO 05: level=1 fsel=0 alt=  func=INPUT
  GPIO 06: level=1 fsel=0 alt=  func=INPUT
  GPIO 07: level=1 fsel=4 alt=0 func=SPI0_CE1_N
  GPIO 08: level=1 fsel=4 alt=0 func=SPI0_CE0_N
  GPIO 09: level=0 fsel=4 alt=0 func=SPI0_MISO
  GPIO 10: level=0 fsel=4 alt=0 func=SPI0_MOSI
  GPIO 11: level=0 fsel=4 alt=0 func=SPI0_SCLK
  GPIO 12: level=0 fsel=0 alt=  func=INPUT
  GPIO 13: level=0 fsel=0 alt=  func=INPUT
  GPIO 14: level=1 fsel=4 alt=0 func=TXD0
  GPIO 15: level=1 fsel=4 alt=0 func=RXD0
  GPIO 16: level=0 fsel=0 alt=  func=INPUT
  GPIO 17: level=0 fsel=0 alt=  func=INPUT
  GPIO 18: level=0 fsel=0 alt=  func=INPUT
  GPIO 19: level=0 fsel=0 alt=  func=INPUT
  GPIO 20: level=0 fsel=0 alt=  func=INPUT
  GPIO 21: level=0 fsel=0 alt=  func=INPUT
  GPIO 22: level=0 fsel=0 alt=  func=INPUT
  GPIO 23: level=0 fsel=0 alt=  func=INPUT
  GPIO 24: level=0 fsel=0 alt=  func=INPUT
  GPIO 25: level=0 fsel=0 alt=  func=INPUT
  GPIO 26: level=0 fsel=0 alt=  func=INPUT
  GPIO 27: level=0 fsel=0 alt=  func=INPUT
BANK1 (GPIO 28 to 45):
  GPIO 28: level=1 fsel=0 alt=  func=INPUT
  GPIO 29: level=1 fsel=0 alt=  func=INPUT
  GPIO 30: level=0 fsel=1 alt=  func=OUTPUT
  GPIO 31: level=0 fsel=1 alt=  func=OUTPUT
  GPIO 32: level=0 fsel=0 alt=  func=INPUT
  GPIO 33: level=0 fsel=0 alt=  func=INPUT
  GPIO 34: level=1 fsel=0 alt=  func=INPUT
  GPIO 35: level=1 fsel=0 alt=  func=INPUT
  GPIO 36: level=1 fsel=0 alt=  func=INPUT
  GPIO 37: level=0 fsel=0 alt=  func=INPUT
  GPIO 38: level=0 fsel=0 alt=  func=INPUT
  GPIO 39: level=0 fsel=0 alt=  func=INPUT
  GPIO 40: level=0 fsel=0 alt=  func=INPUT
  GPIO 41: level=0 fsel=0 alt=  func=INPUT
  GPIO 42: level=0 fsel=0 alt=  func=INPUT
  GPIO 43: level=0 fsel=0 alt=  func=INPUT
  GPIO 44: level=0 fsel=0 alt=  func=INPUT
  GPIO 45: level=0 fsel=0 alt=  func=INPUT
BANK2 (GPIO 46 to 53):
  GPIO 46: level=0 fsel=0 alt=  func=INPUT
  GPIO 47: level=0 fsel=1 alt=  func=OUTPUT
  GPIO 48: level=1 fsel=7 alt=3 func=SD1_CLK
  GPIO 49: level=1 fsel=7 alt=3 func=SD1_CMD
  GPIO 50: level=1 fsel=7 alt=3 func=SD1_DAT0
  GPIO 51: level=1 fsel=7 alt=3 func=SD1_DAT1
  GPIO 52: level=1 fsel=7 alt=3 func=SD1_DAT2
  GPIO 53: level=1 fsel=7 alt=3 func=SD1_DAT3

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 6:27 pm

I believe you're running old firmware which doesn't come with a bcm2708-rpi-cm.dtb. I thought the fallback was a B+ dtb, but it seems like device tree is disabled entirely.

Could you please run sudo rpi-update, reboot and try that dtc command again?

ReneHaren
Posts: 11
Joined: Sun Jul 19, 2015 12:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 6:37 pm

I update the CMIO

$ sudo rpi-update

I run out of space?

Code: Select all


 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** Performing self-update
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 10185  100 10185    0     0  43793      0 --:--:-- --:--:-- --:--:-- 57542
 *** Relaunching after update
 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** We're running for the first time
 *** Backing up files (this will take a few minutes)
 *** Backing up firmware
 *** Backing up modules 3.18.11+
#############################################################
WARNING: This update bumps to rpi-4.0.y linux tree
Be aware there could be compatibility issues with some drivers
Discussion here:
https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=113753
##############################################################
Would you like to proceed? (y/N)
 *** Downloading specific firmware revision (this will take a few minutes)
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   168    0   168    0     0    305      0 --:--:-- --:--:-- --:--:--   400
 74 46.8M   74 34.9M    0     0   581k      0  0:01:22  0:01:01  0:00:21  529ktar: modules/4.0.8-v7+/kernel/net/wireless/cfg80211.ko: Cannot write: No space left on device
tar: modules/4.0.8-v7+/kernel/net/wireless/lib80211.ko: Cannot write: No space left on device
tar: modules/4.0.8-v7+/kernel/net/wireless/lib80211_crypt_ccmp.ko: Cannot write: No space left on device
tar: modules/4.0.8-v7+/kernel/net/wireless/lib80211_crypt_tkip.ko: Cannot write: No space left on device
tar: modules/4.0.8-v7+/kernel/net/wireless/lib80211_crypt_wep.ko: Cannot write: No space left on device
tar: modules/4.0.8-v7+/kernel/net/xfrm: Cannot mkdir: No space left on device
tar: modules/4.0.8-v7+/kernel/net/xfrm: Cannot mkdir: No space left on device

$ df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 2760656 2744272 0 100% /
/dev/root 2760656 2744272 0 100% /
devtmpfs 186140 0 186140 0% /dev
tmpfs 38084 260 37824 1% /run
tmpfs 5120 0 5120 0% /run/lock
tmpfs 76160 0 76160 0% /run/shm
/dev/mmcblk0p5 61302 19188 42114 32% /boot


Please adive what to do?

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 6:50 pm

try this

Code: Select all

sudo rm /boot.bak -rf
sudo SKIP_BACKUP=1 rpi-update

ReneHaren
Posts: 11
Joined: Sun Jul 19, 2015 12:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 7:07 pm

$ sudo SKIP_BACKUP=1 rpi-update

Code: Select all


 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** Performing self-update
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 10185  100 10185    0     0  22025      0 --:--:-- --:--:-- --:--:-- 25784
 *** Relaunching after update
 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** We're running for the first time
#############################################################
WARNING: This update bumps to rpi-4.0.y linux tree
Be aware there could be compatibility issues with some drivers
Discussion here:
https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=113753
##############################################################
Would you like to proceed? (y/N)
 *** Downloading specific firmware revision (this will take a few minutes)

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   168    0   168    0     0    145      0 --:--:--  0:00:01 --:--:--   164
 92 46.8M   92 43.5M    0     0   652k      0  0:01:13  0:01:08  0:00:05  886ktar: vc/hardfp/opt/vc/lib/plugins/reader_mkv.so: Wrote only 1536 of 5086 bytes
tar: vc/hardfp/opt/vc/lib/plugins/reader_mp4.so: Cannot write: No space left on device
tar: vc/hardfp/opt/vc/lib/plugins/reader_mpga.so: Cannot write: No space left on device
tar: vc/hardfp/opt/vc/lib/plugins/reader_ps.so: Cannot write: No space left on device

again failure
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 2760656 2744272 0 100% /
/dev/root 2760656 2744272 0 100% /
devtmpfs 186140 0 186140 0% /dev
tmpfs 38084 260 37824 1% /run
tmpfs 5120 0 5120 0% /run/lock
tmpfs 76160 0 76160 0% /run/shm
/dev/mmcblk0p5 61302 19188 42114 32% /boot
tmpfs 76160 0 76160 0% /tmp

What to do next?

Itlooks like sudo rm /boot.bak -rf is not working

$ df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 2760656 2744272 0 100% /
/dev/root 2760656 2744272 0 100% /
devtmpfs 186140 0 186140 0% /dev
tmpfs 38084 260 37824 1% /run
tmpfs 5120 0 5120 0% /run/lock
tmpfs 76160 0 76160 0% /run/shm
/dev/mmcblk0p5 61302 19188 42114 32% /boot
tmpfs 76160 0 76160 0% /tmp

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 7:14 pm

Can't really suggest much other than removing things which take up space. For example, sudo apt-get remove wolfram-engine, should give you a good 500MB to play with.

ReneHaren
Posts: 11
Joined: Sun Jul 19, 2015 12:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Mon Jul 20, 2015 7:39 pm

No luck, yet, again no space..

Code: Select all

sudo apt-get remove wolfram-engine
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  wolfram-engine
0 upgraded, 0 newly installed, 1 to remove and 28 not upgraded.
After this operation, 460 MB disk space will be freed.
Do you want to continue [Y/n]? y
dpkg: unrecoverable fatal error, aborting:
 unable to fill /var/lib/dpkg/updates/tmp.i with padding: No space left on device
E: Sub-process /usr/bin/dpkg returned an error code (2)

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Tue Jul 21, 2015 1:07 am

Ouch... Find some large files you know are safe to remove or temporarily move elsewhere, then remove wolfram-engine. I would expect that you've got a /boot.bak again after running rpi-update for the second time, so that should free up enough space to remove wolfram stuff.

ReneHaren
Posts: 11
Joined: Sun Jul 19, 2015 12:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Tue Jul 21, 2015 1:14 pm

Where can I find the /boot.bak ?

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Tue Jul 21, 2015 1:16 pm

If it exists, that would be the full path.

Edit: There should also be a /lib/modules.bak

ReneHaren
Posts: 11
Joined: Sun Jul 19, 2015 12:43 pm

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Tue Jul 21, 2015 2:22 pm

Can't find it. After installing NOOBS is the card al ready full?
4 GB should be enough for OS I thnik?
I didn't install mutch more.

ls -ltr /lib

Code: Select all


total 628
lrwxrwxrwx  1 root root    19 Jan  1  1970 libcgroup.so.1 -> libcgroup.so.1.0.38
drwxr-xr-x  4 root root 12288 Jan  1  1970 arm-linux-gnueabihf
drwxr-xr-x 15 root root  4096 Jan  1  1970 terminfo
drwxr-xr-x  2 root root  4096 Jan  1  1970 modprobe.d
lrwxrwxrwx  1 root root    19 Jan  1  1970 libauparse.so.0 -> libauparse.so.0.0.0
drwxr-xr-x 10 root root  4096 Jan  1  1970 firmware
lrwxrwxrwx  1 root root    19 Jan  1  1970 libxtables.so.7 -> libxtables.so.7.0.0
drwxr-xr-x  2 root root  4096 Jan  1  1970 xtables
drwxr-xr-x  3 root root  4096 Jan  1  1970 dhcpcd
drwxr-xr-x  4 root root  4096 Jan  1  1970 modules
lrwxrwxrwx  1 root root    17 Jan  1  1970 libip6tc.so.0 -> libip6tc.so.0.1.0
lrwxrwxrwx  1 root root    20 Jan  1  1970 libnih-dbus.so.1 -> libnih-dbus.so.1.0.0
lrwxrwxrwx  1 root root    24 Jan  1  1970 ld-linux.so.3 -> /lib/ld-linux-armhf.so.3
lrwxrwxrwx  1 root root    30 Jan  1  1970 ld-linux-armhf.so.3 -> arm-linux-gnueabihf/ld-2.13.so
lrwxrwxrwx  1 root root    21 Jan  1  1970 cpp -> /etc/alternatives/cpp
drwxr-xr-x  3 root root  4096 Jan  1  1970 lsb
drwxr-xr-x  3 root root  4096 Jan  1  1970 systemd
lrwxrwxrwx  1 root root    17 Jan  1  1970 libip4tc.so.0 -> libip4tc.so.0.1.0
lrwxrwxrwx  1 root root    15 Jan  1  1970 libipq.so.0 -> libipq.so.0.0.0
lrwxrwxrwx  1 root root    17 Jan  1  1970 libaudit.so.0 -> libaudit.so.0.0.0
drwxr-xr-x  2 root root  4096 Jan  1  1970 init
lrwxrwxrwx  1 root root    16 Jan  1  1970 libiptc.so.0 -> libiptc.so.0.0.0
lrwxrwxrwx  1 root root    15 Jan  1  1970 libnih.so.1 -> libnih.so.1.0.0
drwxr-xr-x  2 root root  4096 Jan  1  1970 resolvconf
-rw-r--r--  1 root root 87596 May  1  2012 libaudit.so.0.0.0
-rw-r--r--  1 root root 46692 May  1  2012 libauparse.so.0.0.0
-rw-r--r--  1 root root  7800 May  1  2012 libnss_mdns.so.2
-rw-r--r--  1 root root  7364 May  1  2012 libnss_mdns_minimal.so.2
-rw-r--r--  1 root root  7396 May  1  2012 libnss_mdns6.so.2
-rw-r--r--  1 root root  7024 May  1  2012 libnss_mdns6_minimal.so.2
-rw-r--r--  1 root root  7376 May  1  2012 libnss_mdns4.so.2
-rw-r--r--  1 root root  7004 May  1  2012 libnss_mdns4_minimal.so.2
-rwxr-xr-x  1 root root 78388 Dec  1  2012 klibc-sO6SifHCdmbehHGtm0y1yHu6vb0.so
-rw-r--r--  1 root root 91504 Jan 11  2013 libnih.so.1.0.0
-rw-r--r--  1 root root 34152 Jan 11  2013 libnih-dbus.so.1.0.0
-rw-r--r--  1 root root 38672 Mar  3  2013 libxtables.so.7.0.0
-rw-r--r--  1 root root  5344 Mar  3  2013 libiptc.so.0.0.0
-rw-r--r--  1 root root  9700 Mar  3  2013 libipq.so.0.0.0
-rw-r--r--  1 root root 22324 Mar  3  2013 libip6tc.so.0.1.0
-rw-r--r--  1 root root 22300 Mar  3  2013 libip4tc.so.0.1.0
-rw-r--r--  1 root root 67660 Jun 18  2014 libcgroup.so.1.0.38
drwxr-xr-x  5 root root  4096 Jul 10 14:07 udev
drwxr-xr-x  3 root root  4096 Jul 20 18:34 modules.bak


ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6291
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: CAM1 not detected on CMIO board with default dt-blob.dts

Tue Jul 21, 2015 8:25 pm

I see modules.bak in the output you've provided. Perhaps there's miscommunication somewhere. I'd expect to see /boot.bak AND /lib/modules.bak. These are FULL paths, so a question like "Where can I find the /boot.bak ?" doesn't make sense. The answer is already in the question.

The general idea behind the CM isn't to run a full featured educational distro image designed for the regular raspberry pi. The CM is meant to be the bare bones of a pi to be embedded in industrial applications designed by professional engineers. These sorts of applications don't need to run the foundation's raspbian image. This is also why it didn't originally come with a bcm2708-rpi-cm.dtb. It was expected that people would provide their own files customised for their specific application.

Having said that, you could try starting again and flashing it with the image in this archive http://nightly.raspberrypi.org/nightlyi ... -1-noX.zip, but that's not really something I've tested yet.

Return to “Compute Module”