BeagleBone Green Wireless
Introduction
SeeedStudio BeagleBone Green Wireless (BBGW) is a joint effort by BeagleBoard.org and Seeed Studio. It is based on the open-source hardware design of BeagleBone Black and developed into this differentiated version. SeeedStudio BeagleBone Green Wireless has included a high-performance flexible WiFi/Bluetooth interface and two Grove connectors, making it easier to connect to the large family of Grove sensors. The on-board HDMI and Ethernet are removed to make room for these wireless features and Grove connectors.
Features
- Fully Compatiable with BeagleBone Black
- Processor: AM335x 1GHz ARM® Cortex-A8
- 512MB DDR3 RAM
- 4GB 8-bit eMMC on-board flash storage
- 3D graphics accelerator
- NEON floating-point accelerator
- 2x PRU 32-bit microcontrollers
- Connectivity
- USB client for power & communications
- USB host with 4-port hub
- WiFi 802.11 b/g/n 2.4GHz
- Bluetooth 4.1 with BLE
- 2x 46 pin headers
- 2x Grove connectors (I2C and UART)
- Software Compatibility
- Debian
- Android
- Ubuntu
- Cloud9 IDE on Node.js w/ BoneScript library
- plus much more
Specification
Item | Value |
---|---|
Processor | AM335x 1GHz ARMR Cortex-A8 |
RAM | 512MB DDR3 |
on-board Flash Storage | 4GB eMMC |
CPU Supports | NEON floating-point & 3D graphics accelerator |
Micro USB Supports | powering & communications |
USB | USB2.0 Host *4 |
Grove Connectors | 2 (One I2C and One UART) |
GPIO | 2 x 46 pin headers |
Ethernet | Wi-Fi 802.11b/g/n 2.4GHz and Bluetooth 4.1 LE |
Operating Temperature | 0 ~ 75 |
Application Ideas
- Internet of Things
- Smart House
- Industrial
- Automation & Process Control
- Human Machine Interface
- Sensor Hub
- Robot
BBGW Starter Tutorial #1-#6
Here are some tutorials for the starters to use some Grove modules to realize their interesting ideas with BeagleBone Green Wireless(BBGW). The tutorials are based on Python and mraa/upm library.
#1 The Breath LED | #2 Storm on your table | #3 Speak Louuuuuudly |
---|---|---|
MAKE IT NOW! | MAKE IT NOW! | MAKE IT NOW! |
#4 How hot is it today? | #5 Where are you? | #6 My Little alarm clock |
---|---|---|
MAKE IT NOW! | MAKE IT NOW! | MAKE IT NOW! |
Funny Projects
Bluetooth Device Detection | Home Control Center | SAP HCP IoT Service |
---|---|---|
MAKE IT NOW! | MAKE IT NOW! | MAKE IT NOW! |
Hardware Overview
Pin map
Each digital I/O pin has 8 different modes that can be selected, including GPIO.
65 Possible Digital I/Os
Note
In GPIO mode, each digital I/O can produce interrupts.
PWMs and Timers
Note
Up to 8 digital I/O pins can be configured with pulse-width modulators (PWM) to produce signals to control motors or create pseudo analog voltage levels, without taking up any extra CPU cycles.
Analog Inputs
Note
Make sure you don’t input more than 1.8V to the analog input pins. This is a single 12-bit analog-to-digital converter with 8 channels, 7 of which are made available on the headers.
UART
Note
There is a dedicated header for getting to the UART0 pins and connecting a debug cable. Five additional serial ports are brought to the expansion headers, but one of them only has a single direction brought to the headers.
I2C
Note
The first I2C bus is utilized for reading EEPROMS on cape add-on boards and can’t be used for other digital I/O operations without interfering with that function, but you can still use it to add other I2C devices at available addresses. The second I2C bus is available for you to configure and use.
SPI
Note
For shifting out data fast, you might consider using one of the SPI ports.
Getting Started
Note
This chapter is writing under Win10. The steps are familiar for the other operate systems.
STEP1. Plug in your BBGW via USB
Use the provided micro USB cable to plug your BBGW into your computer. This will both power the board and provide a development interface. BBGW will boot Linux from the on-board 2GB or 4GB eMMC.
BBGW will operate as a flash drive providing you with a local copy of the documentation and drivers. Note that this interface may not be used to re-configure the microSD card with a new image, but may be used to update the boot parameters using the uEnv.txt file.
You’ll see the PWR LED lit steadily. Within 10 seconds, you should see the other LEDs blinking in their default configurations.
- D2 is configured at boot to blink in a heartbeat pattern
- D3 is configured at boot to light during microSD card accesses
- D4 is configured at boot to light during CPU activity
- D5 is configured at boot to light during eMMC accesses
STEP2. Install Drivers
Install the drivers for your operating system to give you network-over-USB access to your Beagle. Additional drivers give you serial access to your board.
Operating System | USB Drivers | Comments |
---|---|---|
Windows (64-bit) | 64-bit installer | |
Windows (32-bit) | 32-bit installer | |
Mac OS X | Network Serial | Install both sets of drivers. |
Linux | mkudevrule.sh | Driver installation isn’t required, but you might find a few udev rules helpful. |
Note
For window system, please note that:
- Windows Driver Certification warning may pop up two or three times. Click “Ignore”, “Install” or “Run”
- To check if you’re running 32 or 64-bit Windows see this.
- On systems without the latest service release, you may get an error (0xc000007b). In that case, please install and retry:
- You may need to reboot Windows.
- These drivers have been tested to work up to Windows 10
STEP3. Browse to your Beagle
Using either Chrome or Firefox (Internet Explorer will NOT work), browse to the web server running on your board. It will load a presentation showing you the capabilities of the board. Use the arrow keys on your keyboard to navigate the presentation.
Click http://192.168.7.2 to launch to your BBGW. Older software images require you to EJECT the BEAGLE_BONE drive to start the network. With the latest software image, that step is no longer required.
STEP4. Cloud9 IDE
To begin editing programs that live on your board, you can use the Cloud9 IDE by click
STEP5. Connect your BBGW to Wi-Fi
Using your smart phone or computer to scan local Wi-Fi network and connect to the AP named “BeagleBone XXX”
After connection succeeded, it will head to the login page automatically. Select the SSID of your Wi-Fi and enter the passwd, click OK.
Now your BBGW is connected to Wi-Fi.
STEP6. Connect your BBGW to your Bluetooth Device
Connect to Cloud9 IDE and start a new terminal. Start the bluetooth config with the command:
bb-wl18x-bluetooth
bluetoothctl
Type
scan on
to scan local bluetooth devices. My device named “jy” is found.
Copy the device mac address, then contect to the device with the command:
pair 0C:xx:xx:xx:xx:0B
trust 0C:xx:xx:xx:xx:0B
connect 0C:xx:xx:xx:xx:0B
Now your BBGW is connected to your bluetooth device. Type
quit
back to the terminal. Play music on BBGW, then you will hear music on your bluetooth speaker device.Update to latest software
You need to update the board to latest software to keep a better performance, here we will show you how to make it step by step.
STEP1. Download the latest software image
First of all, you have to download the suitable image here.
Note
Due to sizing necessities, this download may take about 30 minutes or more.
The file you download will have an .img.xz extension. This is a compressed sector-by-sector image of the SD card.
STEP2. Install compression utility and decompress the image
Download and install 7-zip.
Note
Choose a version that suitable for your system.
Use 7-zip to decompress the SD card .img file
STEP3. Install SD card programming utility
Download and install Image Writer for Windows. Be sure to download the binary distribution.
STEP4. Write the image to your SD card
You need a SD adapter to connect your microSD card to your computer at the first. Then use the software Image Write for Windows to write the decompressed image to your SD card.
Click on Write button, then the process is started.
Note
- You may see a warning about damaging your device. This is fine to accept as long as you are pointing to your SD card for writing.
- You should not have your BeagleBone connected to your computer at this time.
- This process may need up to 10 minutes.
STEP5. Boot your board off of the SD card
Insert SD card into your (powered-down first) board. Then the board will boot from the SD card.
Note
If you don’t need to write the image to your on-board eMMC, you don’t need to read the last of this chapter. Otherwise pleas go ahead.
If you desire to write the image to your on-board eMMC, you need to launch to the board, and modify a file.
In /boot/uEnv.txt:
##enable Generic eMMC Flasher:
##make sure, these tools are installed: dosfstools rsync
#cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh
Change to:
##enable Generic eMMC Flasher:
##make sure, these tools are installed: dosfstools rsync
cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh
Then you will find the 4 user led light as below:
Note
If you don’t find the upper tracing light, please power down and power up the board.
When the flashing is complete, all 4 USRx LEDs will be off. The latest Debian flasher images automatically power down the board upon completion. This can take up to 10 minutes. Power-down your board, remove the SD card and apply power again to be complete.
Program Grove Module with Mraa and UPM
We have provided Mraa library and UPM library to make it easy for developers and sensor manufacturers to map their sensors & actuators on top of supported hardware and to allow control of low level communication protocol by high level languages & constructs.
What are Mraa and UPM?
Mraa is a C/C++ library with bindings to Python, Javascript and Java to interface with the I/O on BBG, BBGW and other platforms, with a structured and sane API where port names/numbering matches the board that you are on. Use of Mraa does not tie you to specific hardware with board detection done at runtime you can create portable code that will work across the supported platforms. UPM is a high level repository for sensors that use MRAA. Each sensor links to MRAA and are not meant to be interlinked although some groups of sensors may be. Each sensor contains a header which allows to interface with it. Typically a sensor is represented as a class and instantiated.The constructor is expected to initialise the sensor and parameters may be used to provide identification/pin location on the board.
Install and update
Mraa and UPM are already installed in the system image of BBGW, so you don’t need to install it. However if you want to update the library, or want to upgrade the library, use
apt-get update
and apt-get upgrade
please. Refer to https://github.com/intel-iot-devkit/mraa and https://github.com/intel-iot-devkit/upm for more information.Mraa Example
- light a led
import mraa
import time
#mraa.gpio60 = P9_14 = GPIO_50
led = mraa.Gpio(60)
led.dir(mraa.DIR_OUT)
while True:
led.write(1)
time.sleep(1)
led.write(0)
time.sleep(1)
- Grove - PIR Sensor
import mraa
import time
#mraa.gpio73 = P9_27 = GPIO_115
pir = mraa.Gpio(73)
pir.dir(mraa.DIR_IN)
while True:
print (pir.read())
time.sleep(1)
- Grove - Rotary Angle Sensor
import mraa
import time
#mraa.aio1 = AIN0
rotary = mraa.Aio(1)
while True:
print(rotary.read())
time.sleep(1)
- More Tutorials
Mraa Map for BBGW
References and Resources
References
There’re many references to help you to get more information about the board.
- BeagleBoard Main Page
- BeagleBone Green Wireless info at BeagleBoard page
- BeagleBoard Getting Started
- Troubleshooting
- Hardware documentation
- Projects of BeagleBoard
Resources
Help us make it better
Thank you for choosing Seeed. A couple of months ago we initiated a project to improve our documentation system. What you are looking at now is the first edition of the new documentation system. Comparing to the old one, here is the progresses that we made:
- Replaced the old documentation system with a new one that was developed from Mkdocs, a more widely used and cooler tool to develop documentation system.
- Integrated the documentation system with our official website, now you can go to Bazaar and other section like Forum and Community more conveniently.
- Reviewed and rewrote documents for hundreds of products for the system’s first edition, and will continue migrate documents from old wiki to the new one.
An easy-to-use instruction is as important as the product itself. We are expecting this new system will improve your experience when using Seeed’s products. However since this is the first edition, there are still many things need to improve, if you have any suggestions or findings, you are most welcome to submit the amended version as our contributor or give us suggestions in the survey below, Please don’t forget to leave your email address so that we can reply.
Happy hacking
댓글 없음:
댓글 쓰기