Sample data from ADC with Sigfox / Telecom-Design

I just finished a program started a couple of month ago. When I stared to it, I had a hard work to find how to sample a group of  256 values at 32Khz with the EFM32 device embedded in the Telecom Design TD1204 / TD1208 used for my SigFox project. This post details how to do this task

Continue reading

Low consumption audio capture circuit for arduino

I had to work a little bit on an audio solution to get sound samples using a micro-controler. I based my design on an Internet really known circuit but I had to optimize it a little bit to be more efficient in terms of energy. This post is giving the result of my hack.

Continue reading

TD1208 – How to implement RF LAN

2 TD1208 configured as RF Lan

2 TD1208 configured as RF Lan

TD1208, SigFox chips, include a RF LAN fonction, this allow you to communicate between different TD1208 chip, locally, without using the SigFox network. This is really interesting if you have a network of sensor, you can connect them this way to a gateway. This gateway will then transmit the information to the SigFox network to reach your IoT service.

This post will describe how the rf_lan work and how to implement it.

I’m not fully sure I implement it the right way as the given example are really poor, the documentation is a mess and the source code of this part is not accessible… More over, my feeling is that this part of the SDK is still running bugs. What I mean is that in a future post you should find an update and a better way to do it than the one I’m going to describe. By-the-way, what is here is working, have fun with it !

Continue reading

Use a PIR sensor

Pir sensor

Pir sensor

This is a PIR ( Infra Red ) sensor ; this device is detecting movement of people by sending a signal on its output. This sensor is generating a +3.3V signal on output when a movement is detected. The duration and the sensitivity can be parametrized.

As you can see on this photo, you have 3 things you can configure on this device that will impact its behavior. The purpose of this post is to describe the use of each.

 

Continue reading

Sigfox : how to upgrade firmware automatically

You may had some problem to reflash your TD1208 once you load the blink example or your own code in the device. This is because you need to reset the device to reach the firmware upgrade procedure during boot procedure.

On of the way to do it is to perform a hard reset putting Reset pin to ground during TDLoader Sync process. The other way is to add some lines in your code to create a soft reset. Here is an example on howto do it :

void TD_USER_Setup(void)
{
    // Initialize the LEUART
    init_printf(TD_UART_Init(9600, true, false),
                TD_UART_Putc,
                TD_UART_Start,
                TD_UART_Stop);
}

void TD_USER_Loop(void)
{
    while ((c = TD_UART_GetChar()) >= 0) {
        NVIC_SystemReset();
    }
}

When the loader is waiting for the bootloader sequence, it send communication over the serial line. In this example, when a such communication is detected, the system is calling a soft reset, starting the boot sequence and as a consequence the firmware upgrade automatically.

Continue reading

Soldering station BAKU 702B

photo(1)I recently bought a low cost soldering station ( <100€ ) from Baku. This station includes a hot air soldering tool and a standard soldering tool. Temperature is indicated and independent for the two tools. Air flow level can also be configured.

I did not know if it was a good purchase as the price is really really low compared with usual soldering station. As my need is a non professional one, I did not had the budget and the use for a better station. Since 2 weeks I’m using it now, I can say, I’m happy with it. I do not use the standard soldering tool as the quality is lower my previous one and after testing it one time, I assume it’s life duration will be only a couple of weeks. But the hot air soldering tools seems to work correctly and was a great friend for my last SMD prototype. It is delivered with a replacement peace for the heating part, I assume the life will not be really long but for the price, 1 or 2 year will be enough to me !

Continue reading

Use of BeagleBone GPIO for SWD programming

Recently I killed on of SigFox Td1208 device by misprogramming it, destroying the bootloader. In a such situation serial port is not anymore accessible for programming. The use of JTAG port is a necessity. On the TD1208, jtag has been repaced by SWD which is a 2 wires port doing the same thing.

To use this port, you generally need a specific interface. These interfaces like Jlink are expensive (> 300€), some are less like BusPirate (30€). By the way, if you do not have it, you will have to order and wait for it. That’s why I’ve taken the choice of using my BeagleBone black device GPIO to pilot these signal. This code can easily be port to RaspberryPI…

Continue reading