I always forget where the Digi wiki that covers Python on the ConnectPort (IP to PAN bridge).
Finished the greenhouse
I finished my greenhouse this weekend. I put a second layer of poly siding up to create a dead-air insulation space. The SLA battery that powered my Arduino driven environmental monitor appears dead. The Oregon winter did not provide enough light to keep the battery topped off. I have resorted to running an extension cable to use an AC adaptor.
P8 and P9: Confusion and Progress
Spent a little bit of time writing python code to talk to the RoboClaw. After I got the MUX mode set correct for UART1, I could not figure out why a loop-back test was not working. If in doubt, read the reference document. It turns out I had was using the right pins on the wrong expansion header. Resoldered the serial lines for UART1 and UART2 back to P9…and it works. Personally, I think it’s even simpler to write serial byte commands in Python than using the Arduino. It should only take a few hours to come up with a simple state machine that can use the five front-facing distance sensors to do obstacle detection.
Otherwise, been a busy day buying The Boy a new bike, acquiring construction tools at the Home Despot for a project this May, and cleaning the bbq.
LS20031 and the BeagleBone
After several hours of trouble shooting, I finally got the BeagleBone and a LS20031 gps to talk.
I hooked the LS20031 to UART5 of the BeagleBone. The LS20031 has 3.3V TTL serial, so a level converter was not required. UART5 looks to be the toughest of the serial ports to use. The trick to getting UART5 RX and TX pins (37 and 38) to work, is to set them to MUX mode 4. Most of the other serial ports work in mode 0.
A second problem is the LS20031 is really picky about startup. If you have the RX or TX pins connected and power cycle, the unit does not always come back online. This is indicated by the red LED being constantly on. The only way I have found to make it power on correctly is to reset the BeagleBone. Note: I am using the 3.3V power supply from the ‘Bone.
Small success
Wrote a simple Arduino sketch that reads from five HC-SR04 distance sensors, then sends that data over the serial line. The Mega is connected to the BeagleBoard (through a powered USB hub). A python script correctly reads in each line of data transmitted from the Mega. Baby steps.
HC-SR04 wiring harness
Tonight I started creating the four-wire harnesses for GND, VCC, TRIG, and ECHO for the $4 ultrasonic sensors. I created fie sets for each of the front-facing sensors. This will be the first test of using the Mega to gather data, then send to the BeagleBone. I verified with the maker’s of RoboClaw, that it uses 3V TTL serial. This means no level converter will be necessary to interface it with the BeagleBone.
Found an interesting open source website for SLAM: OpenSLAM. It will take some time to dig through the project and see if anything is usable.
Weekend progress
Bricked the Angstrom image
I think the angstrom package updater tried to update the kernel. This bricked my BeagleBone. It took several hours to rebuild the image (the hard way), then reinstall the software I want.
Turn’s out the BeagleBone is for early adopters. Buy it, play with it, and don’t upgrade it. The makers next really planned on doing distro updates with any kind of Quality Assurance.
Edit 2015: The BeagleBone Black has better long-term linux support. However, if one really wants stable updates, choose a Raspberry pi.
Does the GWU627 work with the BeagleBone?
The answer: not out of the box. My BeagleBone is a rev A4. It suffers from a hardware issue getting DHCP lease when run at 100 megabits.
Removing A219 from Rev A4 BeagleBone
Yes! It works!
If you remove A219, the BeagleBone can power the GWU627 and pull a DHCP address from my network!
IoGear GWU627
I’m really starting to not like WordPress. This is the third time I’ve written this entry; and it gets shorter each time.
I chose the IoGear GWU627 to work as a wifi bridge for the BeagleBone. It came with a bad ethernet cable. Took me thirty minutes to figure that problem out. It works. It is small, and gets its power from a usb cable. Still trying to verify that works with the BeagleBone.