The first parts for the quadcopter have arrived: the beaglebone black boards that I would like to use as controllers. I bought two, one for use on the quad and another for experimentation and general tinkering. The beaglebone black comes with four PWM output pins I hope can be controlled at the same time, I still have some documentation to read and small experiments to make to find out which interfaces to use best. Next up would be to figure out which other parts to order first and to get a go at the design of the software to control the quad.
Workshop GPIO/I2C/SPI/PWM on Raspberry Pi
A couple of weeks ago I gave a small workshop on how to use and measure GPIO/I2C/SPI/PWM signals with use of the Raspberry Pi, and I’ve been asked by some friends if I would share the presentation of that evening with them. So here it is:
GPIO-I2C-SPI_Workshop (right click, save link as)
A long overdue update
Has it really been 5 years since I last posted an update? Shame on me…
A lot has changed in those 5 years, a breakup with the girlfriend, moved out of my parents house, got a new job in an exciting international company, bought a motorcycle and some electric guitars and started taking guitar lessons, but I haven’t been able to continue on those old electronics projects.
I’ll be blowing more life into this blog with a new and exciting project I’ve started on: building and programming my own quadcopter. And I’ll be adding more personal and increasingly cynical views on the world here too.
You will hear from me again soon!
USB experimentation board – part 2
I finaly figured out how to compile and run the library and gui program for the Velleman k8055 board on Ubuntu Linux.
First I downloaded this: libk8055.
But this library contains an error in the header file, it is missing a line, so edit the k8055h file and add the following line:
int ReadAllValues(long int *data1, long int * data2, long int * data3, long int * data4, long int * data5);
To compile and install the library type in the following commands in the command prompt:
make
sudo make install
Next: I downloaded the gui program: k8055gui.
This requires a couple of libraries to be installed on your system first:
sudo apt-get install libwxbase2.8-0 libwxbase2.8-dev libwxgtk2.8-0 libwxgtk2.8-dev libusb-dev
This program also contains an error, to fix this you need to edit the MyFrame.cpp file, and replace (a small remark, thanks to Vincent in the comments below: mind the double quotes!):
#include <k8055.h>
with
extern “C” {
#include <k8055.h>
}
To compile, type in the command window:
make
To start the gui program:
sudo ./k8055gui
I’ll try to find a way so you don’t need to be root to execute the gui program.
USB experimentation board – part 1
I bought and assembled this Velleman K8055 kit (quite) a while ago. It’s an USB experiment board. Under windows it all works quite nicely; but under Linux I have been unable to compile the demo program.
The demo program consists of two parts: a library called libk8055 and the Linux clone of the Velleman demo interface.
Compiling the library was pretty straightforward, and the accompanying command line tool worked too. Compiling the demo interface program did not work, at first because I was missing wxWidget libraries, secondly because there was a function not documented in the header file of the library, and thridly because the linker can’t find or read the library file. I haven’t found a solution for that last problem just yet. I tried adjusting the installation script to install the files in the default ubuntu locations, but this didn’t solve it. I tried messing with compile options, I tried static linking, dynamic linking, a whole set of compile options, but it just wouldn’t link…
I’ll try again later, when I find the courage to dive deeper into the sources. I’ll also try to get the bugfixes upstream once I finalise them.
Velleman VK8048 PIC programmer kit
I bought a Velleman PIC pogrammer kit a few weeks ago, assembled it right away, and programmed one of the examples from the CD on it, and left it gathering dust for a while.
Apparently there is no free and uncrippled C compiler for the PIC16 series microcontrollers, except maybe for the SDCC compiler, although I’m not sure whether support for the PIC16 is finished and working already.
There are other compilers for this controller by Microchip, IAR, Hi-Tech and CSS but either they require a paid license or have a severely reduced free compiler.
For now the assembler will have to do, and so I’m working my way through the 170 page manual, but it doesn’t seems to be too complicated. I’m hoping I can use this board as a test stage for that POV display, and as a programmer for the PIC controllers.
TTL 3,3V to RS232 Level converter – part 5 (last)
TTL 3,3V to RS232 Level converter – part 4
I just finished building a first version of the level convertor on a breadboard. You can see the schematics and a few pictures above (click the thumbnails to enlarge).
I used:
- 2 x 100nF non polarized capacitors
- 3 x 470nF non polarized capacitors
- 1x DE-9 Female connector
- 1x 4-pins PCB connector
- 1 x MAX3232CPE+
- 1 x bread board
To connect to the PC, you can use a standard crossed serial cable. For La Fonera, the standard settings are:
- baudrate: 9600bps
- data bits: 8
- stop bits: 1
- parity: none
- flow control: none
This level convertor can be used for speeds up to 115200bps, and works with TTL inputs from 2,7V up to 5,5V.
Next up I’ll make the same schematic in a more permanent and less cluttered form.
TTL 3,3V to RS232 Level converter – part 3
I finally received the MAX3232CPE+ chips from Maxim. The first delivery must have gotten lost because I made an error on the address. Anyway now I can make a list of other components I need to get from the electronics shop. I hope that I can do that tomorrow, else it’ll have to wait untill next week because of the official holidays and other prior engagaments this week.
A friend of mine has also attempted to hack the fonera router, but instead of using the colofonium and camacia hacks as I did, he attempted to access the Redboot bootloader directly. Unfortunatly he has bricked his router, and is unable to get back in the bootloader. So he’s anxiously awaiting me to finish this level shifter and to get back on the road.
TTL 3,3V to RS232 Level converter – part 2
It has been almost a month now since I ordered the MAX3222CPN+ samples from Maxim, and still no luck… Could it have something to do with me entering the wrong postal code?
Anyway, I’m giving it another go with the similar MAX2323CPE+, the only difference with the MAX3222CPN+ is that the MAX3222CPN+ powers off when the input current drops below 1µA, so it is slightly more power efficient. I’m not trying to build a long lasting, battery operated level shifter, so the MAX3232CPE+ will do just fine.
If this one too doesn’t come through, I’ll need to start looking for the MAX232 (or its low power variants) in local retail stores. This chip needs to be powered with a 5V power supply, instead of the 3.3V power supply the MAX3232 and MAX3222 requires, so I’ll be looking at some additional wiring, and the use of an external power supply.
As soon as I have this, I can start shopping for more parts 🙂