AFSK (Audio frequency shift keying) was used primarily for slow – 1200baud – packet radio. Today it is mainly used by HAMs for APRS(tm).

The most common setup is to have radio equipment with TNC (terminal node controller) connected to host PC. Host is running some software that understands incoming packets and reacts to them. If you are a HAM you probably have radio and PC already. What you need is the TNC. General problem I found with TNCs is that they tend to cost too much – 100+EUR price tag is not uncommon for 5-10year old equipment, and new TNC models cost 200+EUR (lots of features not necessary for AFSK operation).

Read the rest of this entry »

Hobby king has been selling Turnigy SuperBrain Brushless motor controllers for quite some time. These BLDC motor controllers are unique for their functionality and price. Each of these units serves not only as controller but also logs various telemetry data of your system.

Read the rest of this entry »

Last time I went through junk in the basement I found old ZX spectrum.This was the time I got the great idea. Have the ZX spectrum implemented in FPGA. So after a bit of searching I found ZXgate project. This is exactly the project I have been looking for. It implements the peripherals of ZX Spectrum, just have to add CPU and some external parts.

Read the rest of this entry »

You have probably noticed there is more power in the STM32 processors than simple tasks can use. In this case you probably want to run some more “tasks”.
FreeRTOS has just the stuff you need – tasks, mutexes/semaphores, queues.
Unfortunately I ran into trouble with newlib and FreeRTOS not playing nicely as they should. Memory allocation (malloc) didn’t work as expected and caused the CPU to Bus-Fault. Then I realized there is another allocator in the FreeRTOS, and why does one need 2 allocators on embeded system ?

Read the rest of this entry »

Some time ago, I have added support to OpenOCD to be able to use Buspirate as JTAG interface.
This how-to will show you, how to setup all the things necessary.

Read the rest of this entry »

Now that we can compile stuff for ARM, we need a way to see what our code is doing.
Most (all?) of ARM processors have JTAG. JTAG is used to access the debug port on the CPU, allowing to change state, registers, memory, peripheral registers, etc. OpenOCD knows how to talk to CPU through JTAG.
We are going to show you how to setup OpenOCD with GDB and make them behave together.
Read the rest of this entry »

Few months ago I came across STM32 microprocessors. These processors are use ARM Cortex-M3 core, with clock up to 70Mhz, Internal flash, and RAM, Peripherals include DMA, SPI, CAN, RTC and lot of other.

Of course you need some compiler to develop application for this processor. Standard way of compilation for gcc will lead to very much usable toolchain, until you want to do something with floating point.

Read the rest of this entry »

I have finally decided to create a blog for all the things I do, and I’m interested in. This will mostly be related to embedded computing, programming and electronics

I hope that some (all?) posts will be useful in some way. Stay tuned :)

Follow

Get every new post delivered to your Inbox.