Actions

Difference between revisions of "BeagleBone"

From PROBOTIX :: wiki

 
(26 intermediate revisions by the same user not shown)
Line 6: Line 6:
  
 
[http://beagleboard.org/Support/bone101/ Bone 101]
 
[http://beagleboard.org/Support/bone101/ Bone 101]
 +
 +
== Debian ==
 +
 +
http://elinux.org/Beagleboard:BeagleBoneBlack_Debian
 +
 +
https://sites.google.com/site/manisbutareed/bringing-my-beagles-to-heel/booting-into-linux-on-a-beaglebone
 +
 +
http://omappedia.org/wiki/Bootloader_Project
 +
 +
http://dumb-looks-free.blogspot.com/2014/05/beaglebone-black-bbb-boot-process.html
  
 
== Working with Git ==
 
== Working with Git ==
Line 34: Line 44:
  
 
http://circuitco.com/support/index.php?title=C/C%2B%2B_Programming
 
http://circuitco.com/support/index.php?title=C/C%2B%2B_Programming
 +
 +
http://www.cplusplus.com/doc/tutorial/operators/
 +
 +
== Webserver ==
 +
 +
https://www.element14.com/community/community/designcenter/single-board-computers/next-gen_beaglebone/blog/2013/11/22/beaglebone-web-server--led-blinking
 +
 +
 +
== GPIO ==
 +
 +
http://robotic-controls.com/learn/beaglebone/beaglebone-black-built-leds
 +
 +
== EEPROM ==
 +
 +
http://papermint-designs.com/community/node/331
 +
 +
== eQEP Encoder Input ==
 +
 +
http://elinux.org/EBC_Reading_a_Rotary_Encoder_via_eQEP
 +
 +
 +
== Character LCDs (HD44780) ==
 +
 +
https://github.com/PierreND/BeagleBone-various/blob/master/PND_linksprite_LCD_BeagleBone.js
 +
 +
== TFT LCD ==
 +
 +
http://www.embest-tech.com/product/extension-module/bb-view.html
 +
  
 
== Machine Kit ==
 
== Machine Kit ==
 +
 +
http://www.machinekit.io/
  
 
https://github.com/cdsteinkuehler/MachineKit
 
https://github.com/cdsteinkuehler/MachineKit
Line 41: Line 82:
 
http://bb-lcnc.blogspot.com/2013/07/adding-homelimit-switches.html
 
http://bb-lcnc.blogspot.com/2013/07/adding-homelimit-switches.html
  
>
+
== Machine Vision ==
>    # P9.31 GPIO3_14
+
 
>     setp [PRUCONF](DRIVER).stepgen.00.steppin        0x8E
+
http://www.youtube.com/watch?v=8QouvYMfmQo
>
+
 
> What does that mean? Where is 0x8E coming from?
+
<code>sudo apt-get install v4l-utils
 +
 
 +
v4l2-ctl --list-devices
 +
 
 +
v4l2-ctl --all
 +
 
 +
v4l2-ctl --list-ctrls
 +
 
 +
v4l2-ctl --set-ctrl=brightness=200
 +
 
 +
v4l2-ctl --list-formats
 +
 
 +
v4l2-ctl --set-fmt-video=width=1920,height=1080,pixelformat=H264
 +
 
 +
cd /home/linuxcnc
 +
 
 +
git clone git://github.com/derekmolloy/boneCV.git
 +
 
 +
cd boneCV/
 +
 
 +
sudo apt-get install libv4l-dev
 +
 
 +
sudo apt-get install libopencv-dev
 +
 
 +
./build
 +
 
 +
 
 +
</code>
 +
 
 +
== Beaglebone Headers ==
 +
 
 +
https://mlelectronics.com
 +
 
 +
== Misc: ==
  
The value above is given meaning by the PRU code, which uses the
+
<pre>
kernel numbering scheme, but offset by one so that 0x00 (the default
+
# P9.31 GPIO3_14
value for all HAL signals) means don't do anything. The details are:
+
setp [PRUCONF](DRIVER).stepgen.00.steppin        0x8E
  
GPIO Pin Value:
+
The value above is given meaning by the PRU code, which uses the
value = 32 * ( <GPIO_bank> + 1 ) + bit
+
kernel numbering scheme, but offset by one so that 0x00 (the default
 +
value for all HAL signals) means don't do anything.  The details are:
  
PRU Direct Output Bits:
+
GPIO Pin Value:
value = 32 * (4 + 1 ) + bit = 160 + bit = 0xA0 + bit
+
value = 32 * ( <GPIO_bank> + 1 ) + bit
  
So 0x8E = 142 = (32 * 4) + 14 = GPIO bank 3, bit 14
+
PRU Direct Output Bits:
 +
value = 32 * (4 + 1 ) + bit = 160 + bit = 0xA0 + bit
  
 +
So 0x8E = 142 = (32 * 4) + 14 = GPIO bank 3, bit 14
 +
</pre>
  
  

Latest revision as of 16:33, 13 March 2017

BeagleBone Black

Getting Started

BeagleBone Black Info

Bone 101

Debian

http://elinux.org/Beagleboard:BeagleBoneBlack_Debian

https://sites.google.com/site/manisbutareed/bringing-my-beagles-to-heel/booting-into-linux-on-a-beaglebone

http://omappedia.org/wiki/Bootloader_Project

http://dumb-looks-free.blogspot.com/2014/05/beaglebone-black-bbb-boot-process.html

Working with Git

http://alistapart.com/article/get-started-with-git

http://git-scm.com/book/ch2-5.html

http://nvie.com/posts/a-successful-git-branching-model/

Working with Device Trees

http://learn.adafruit.com/introduction-to-the-beaglebone-black-device-tree/device-tree-overlays

https://docs.google.com/document/d/17P54kZkZO_-JtTjrFuVz-Cp_RMMg7GB_8W9JK9sLKfA/pub

http://blog.inbedded.net/blog/2013/06/02/beaglebone-black-and-lcd-equals-fun/

pins.txt

https://github.com/selsinork/beaglebone-black-pinmux/blob/master/pinmux.ods

Programmable Realtime Unit (PRU)

http://blog.boxysean.com/2012/08/12/first-steps-with-the-beaglebone-pru/

C++ Programming

http://circuitco.com/support/index.php?title=C/C%2B%2B_Programming

http://www.cplusplus.com/doc/tutorial/operators/

Webserver

https://www.element14.com/community/community/designcenter/single-board-computers/next-gen_beaglebone/blog/2013/11/22/beaglebone-web-server--led-blinking


GPIO

http://robotic-controls.com/learn/beaglebone/beaglebone-black-built-leds

EEPROM

http://papermint-designs.com/community/node/331

eQEP Encoder Input

http://elinux.org/EBC_Reading_a_Rotary_Encoder_via_eQEP


Character LCDs (HD44780)

https://github.com/PierreND/BeagleBone-various/blob/master/PND_linksprite_LCD_BeagleBone.js

TFT LCD

http://www.embest-tech.com/product/extension-module/bb-view.html


Machine Kit

http://www.machinekit.io/

https://github.com/cdsteinkuehler/MachineKit

http://bb-lcnc.blogspot.com/2013/07/adding-homelimit-switches.html

Machine Vision

http://www.youtube.com/watch?v=8QouvYMfmQo

sudo apt-get install v4l-utils

v4l2-ctl --list-devices

v4l2-ctl --all

v4l2-ctl --list-ctrls

v4l2-ctl --set-ctrl=brightness=200

v4l2-ctl --list-formats

v4l2-ctl --set-fmt-video=width=1920,height=1080,pixelformat=H264

cd /home/linuxcnc

git clone git://github.com/derekmolloy/boneCV.git

cd boneCV/

sudo apt-get install libv4l-dev

sudo apt-get install libopencv-dev

./build


Beaglebone Headers

https://mlelectronics.com

Misc:

 # P9.31 GPIO3_14
 setp [PRUCONF](DRIVER).stepgen.00.steppin         0x8E

 The value above is given meaning by the PRU code, which uses the
 kernel numbering scheme, but offset by one so that 0x00 (the default
 value for all HAL signals) means don't do anything.  The details are:

 GPIO Pin Value:
 value = 32 * ( <GPIO_bank> + 1 ) + bit

 PRU Direct Output Bits:
 value = 32 * (4 + 1 ) + bit = 160 + bit = 0xA0 + bit

 So 0x8E = 142 = (32 * 4) + 14 = GPIO bank 3, bit 14



BeagleBone Black Dimensions

sudo -A su -c "echo BB-BLACK-LCNC-PBX-BB > /sys/devices/bone_capemgr.*/slots"

cat /sys/devices/bone_capemgr*/slots

sudo vim /boot/uboot/uEnv.txt

echo BB-BLACK-LCNC-PBX-BB >/sys/devices/bone_capemgr*/slots

watch --differences dmesg | tail

tail -f /var/log/messages