Hi, Which distribution are you using with Xenomai?
I'm trying to use Xenomai with Angstrom version download from beagleboard page (link: https://s3.amazonaws.com/angstrom/demo/beaglebone/Angstrom-Cloud9-IDE-GNOME-eglibc-ipk-v2012.12-beaglebone-2013.06.20.img.xz) But when trying to install the kernel in the SD, I get some messages saying that there isn't enough space in the SD... ton@ubuntu:~/linux-dev$ sudo ./tools/install_kernel.sh [sudo] password for ton: I see... fdisk -l: Disk /dev/sda: 21.5 GB, 21474836480 bytes Disk /dev/sdb: 3951 MB, 3951034368 bytes lsblk: NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 19G 0 part / ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 1022M 0 part [SWAP] sdb 8:16 1 3.7G 0 disk ├─sdb1 8:17 1 70.6M 0 part /media/BEAGLE_BONE └─sdb2 8:18 1 3.3G 0 part /media/Angstrom sr1 11:1 1 1024M 0 rom ----------------------------- Are you 100% sure, on selecting [/dev/sdb] (y/n)? y Debug: Existing Partition on drive: ----------------------------- Disk /dev/sdb: 3951 MB, 3951034368 bytes 122 heads, 62 sectors/track, 1020 cylinders, total 7716864 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 Device Boot Start End Blocks Id System /dev/sdb1 * 63 144584 72261 c W95 FAT32 (LBA) /dev/sdb2 147456 7127039 3489792 83 Linux Unmounting Partitions ----------------------------- Starting Partition Search ----------------------------- Trying: [/dev/sdb1] Partition: [/dev/sdb1] trying: [vfat], [ext4] Partition: [vfat] Installing 3.11.0-rc1-armv7-d1 to /dev/sdb1 `/home/ton/linux-dev/deploy/3.11.0-rc1-armv7-d1.zImage' -> `/home/ton/linux-dev/deploy/disk/zImage' Installing 3.11.0-rc1-armv7-d1-dtbs.tar.gz to /dev/sdb1 tar: imx6dl-wandboard.dtb: Wrote only 4096 of 8192 bytes tar: imx6q-arm2.dtb: Cannot write: No space left on device tar: imx6q-phytec-pbab01.dtb: Cannot write: No space left on device tar: imx6q-sabreauto.dtb: Cannot write: No space left on device tar: imx6q-sabrelite.dtb: Cannot write: No space left on device tar: imx6q-sabresd.dtb: Cannot write: No space left on device tar: imx6q-sbc6x.dtb: Cannot write: No space left on device tar: imx6q-wandboard.dtb: Cannot write: No space left on device tar: imx6sl-evk.dtb: Cannot write: No space left on device tar: imx6sl-wandboard.dtb: Cannot write: No space left on device tar: omap2420-h4.dtb: Cannot write: No space left on device tar: omap3-beagle-xm.dtb: Cannot write: No space left on device tar: omap3-beagle.dtb: Cannot write: No space left on device tar: omap3-devkit8000.dtb: Cannot write: No space left on device tar: omap3-evm.dtb: Cannot write: No space left on device tar: omap3-igep0020.dtb: Cannot write: No space left on device tar: omap3-igep0030.dtb: Cannot write: No space left on device tar: omap3-tobi.dtb: Cannot write: No space left on device tar: omap3430-sdp.dtb: Cannot write: No space left on device tar: omap4-panda-a4.dtb: Cannot open: No space left on device tar: omap4-panda-es.dtb: Cannot open: No space left on device tar: omap4-panda.dtb: Cannot open: No space left on device tar: omap4-sdp-es23plus.dtb: Cannot open: No space left on device tar: omap4-sdp.dtb: Cannot open: No space left on device tar: omap4-var-som.dtb: Cannot open: No space left on device tar: omap5-uevm.dtb: Cannot open: No space left on device tar: vf610-twr.dtb: Cannot open: No space left on device tar: Exiting with failure status due to previous errors I'm using 4 GB SD card, and I'm almost sure that Xenomai should work with Angstrom. Maybe I should use the eMMc image, or SD bigger than 4GB? Thanks for your help! Ton El lunes, 25 de noviembre de 2013 12:19:19 UTC+1, fe wi escribió: > > Hi! > > I am currently using my Beaglebone Black with the following KERNEL: > 3.8.13xenomai-bone28.1 (including the ti_am335_adc driver). > > Part of my Project is reading signals from an ADC and then processing > them. I would love to use the onboard ADC for that, but I require to sample > 5 channels @ 2 kHz each. (I have installed the Xenomai Kernel mainly for > processing purposes but it might be useful for sampling as well ;) ) > > My first simplistic try was to just read the voltage values from the files > provided in "/sys/bus/iio/devices/iio:device0/in_voltage0_raw" . > This works fine so far, but is just not fast enough. ( I get about 500 sps > on ONE channel) > > Here is that part of my CODE: > for(;;) { > > rt_task_wait_period(NULL); // Xenomai > > now=rt_timer_read(); // Xenomai > > // Work for the current period // > > FILE *read = fopen ( > "/sys/bus/iio/devices/iio:device0/in_voltage0_raw", "r"); > > > fscanf (read, "%f", &value); > float voltage = value * (1800.0/4095.0); > fprintf (write, "Value: %f Voltage: %f\n", value, voltage); > > printf("Time since last turn: %ld,%06ld ms Value:%f > Voltage: > %f\n", > (long)(now - previous) / 1000000, > (long)(now - previous) % 1000000, value, voltage); > previous = now; > > fclose ( read ); > fclose ( write ); > > } > (I know that leaving out the printf part and the voltage calculation > increases performance, but still not enough) > > Is there any other way reading the values, directly from the memory > location or a register? Perhaps using mmap? > Or is there a Xenomai function for reading from an iio device? (I couldn't > find any...) > > I have seen two interesting links about continuous sampling: > - > http://beagleboard-gsoc13.blogspot.de/2013/07/sampling-analogue-signals-using-adc-on.html > - http://processors.wiki.ti.com/index.php/AM335x_ADC_Driver%27s_Guide > > But i can't get the generic_buffer.c from those sites to work correctly > (as the trigger handling seems to be outdated), plus i might need to know a > kind of "oneshot" read function anyway to mux the 5 channels i want to > sample. Or is it possible to continuous sample multiple channels? The > Driver guide says 'no', but the Author from the other link seems to have > worked a lot on the adc Driver since. > > I am currently trying to figure out the code in generic_buffer.c and the > used iio_utils.h and the adc driver, but it is a lot of code and drivers > are not my strong suit. > So far I think I need to setup the ADC to my needs (somewhat similar to > generic_buffer.c) and then read from it somehow, but I am really struggling > with that! > > > So now you know the state of my project :) but to *sum it up*: > > Are my demands (5 channels @ 2 kHz) even possible using only the on-board > ADC? > And if yes how do i read the values fast enough? Any tips? > > Thank you in advance!! > > > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
