When it comes to hardware setup, there is a fair bit of handwaving below. It is assumed for now you can figure out how to connect the antennas to the BeagleConnect Freedom boards and other similar hardware configuration steps.
- Download the special mikroBUS/Greybus BeagleBoard.org Debian image from here.
- Load this image to a microSD card using a tool like Etcher.
- Insert the microSD card into the Green Gateway.
- Power the Green Gateway via the 12V barrel jack.
- Use Ethernet via a cable or WiFi via
connmanctl
for an Internet connection.
On the newly imaged BeagleBone Green Gateway board, using the latest firmware release
wget https://github.com/jadonk/beagleconnect/releases/download/bcf-beta0.0.7/bcf-bcf-beta0.0.7.zip
unzip bcf-bcf-beta0.0.7.zip && cd build
- Connect (or reconnect) a BeagleConnect Freedom board over USB
chmod +x cc2538-bsl.py
./cc2538-bsl.py cc1352/wpanusb_beagleconnect.bin /dev/ttyACM0
- After it finishes programming successfully, reconnect the BeagleConnect Freedom board over USB
- Test that the driver loaded and is talking to the newly added gateway radio
debian@beaglebone:~$ iwpan wpan0 info
Interface wpan0
ifindex 10
wpan_dev 0x200000001
extended_addr 0x5a4f745eb7beac7f
short_addr 0xffff
pan_id 0xffff
type node
max_frame_retries 3
min_be 3
max_be 5
max_csma_backoffs 4
lbt 0
ackreq_default 0
By default, the beta boards ship with a debug sensor broadcast per https://gist.github.com/Pillar1989/c579b789e38e856cde16e77345932ac4. You can use this to further test your gateway.
- Power a BeagleConnect Freedom that has not yet been programmed via a USB power source, not the BeagleBone Green Gateway. You'll hear a click every 1-2 seconds along with seeing 4 of the LEDs turn off and on.
- In an isolated terminal window,
sudo beagleconnect-start-gateway
wget https://raw.githubusercontent.com/jadonk/beagleconnect/master/sw/sensortest-rx.py
chmod +x sensortest-rx.py
./sensortest-rx.py
Every 1-2 minutes, you should see something like:
('fe80::3111:7a22:4b:1200%lowpan0', 52213, 0, 13) '2l:7.79;'
('fe80::3111:7a22:4b:1200%lowpan0', 52213, 0, 13) '4h:43.75;4t:23.11;'
The value after "2l:" is the amount of light in lux. The value after "4h:" is the relative humidity and after "4t:" is the temperature in Celcius.
Do this from the BeagleBone Green Gateway board that was previously used to program the BeagleConned Freedom gateway device:
- Disconnect the BeagleConnect Freedom gateway device
- Connect a new BeagleConnect Freedom board via USB
./cc2538-bsl.py cc1352/greybus_mikrobus_beagleconnect.bin /dev/ttyACM0
- After it finishes programming successfully, disconnect the BeagleConnect Freedom node device
- Power the newly programmed BeagleConnect Freedom node device from an alternate USB power source
- Reconnect the BeagleConnect Freedom gateway device to the BeagleBone Green Gateway
sudo beagleconnect-start-gateway
cd /opt/source
sudo chmod go+w .
git clone https://github.com/jadonk/beagleconnect --recurse-submodules
cd ..beagleconnect/sw <if not cloned already, clone beagleconnect repo with submodules>
./build-firmware.sh
To skip this step, download the pre-built firmware from : https://github.com/jadonk/beagleconnect/suites/4055985525/artifacts/102934099
@jadonk can we update the commit for greybus to f7fe50f8c0ab4545a0850e0552b99ad7522287b8
this was a miss from my side while copy pasting the commit :