Recently I have been working on RIOT-OS with my two interns from TU Berlin & EIT. The goal of the project is to develop a demo program that uses CC1101 as both gateway and sensors. During this period I encountered numerous ridiculous bugs, hope this blog will solve some one else’s puzzle.
One of the guys is working on the CC1101 6Lowpan boarder router daemon in RIOT-OS, since there are lack of support of CC1101 on 6Lowpan, especially in IPHC.
Another guy is working on CC1101 sensor nodes that can sleep and wake up by radio. Different data rates can achieve different cover ranges, we decided to use the 2.4k-5kbps data rates in the system.
The CC1101 modules are manufacturered in China:
These modules are quite cheap, it is about 2USD. the output power is 10dBm by default.
There are several bugs in the system, firstly I would like to point out that:
You have to compile by “make” before you do “make flash” to successfully disable IPHC.
Now it is the instruction:
- Disable IPHC by adding the following codes on makefile.dep
ifneq (,$(filter cc110x,$(USEMODULE)))
DISABLE_MODULE += gnrc_sixlowpan_iphc
2. Using gnrc_networking as a simple example.
3. Take a look at the parameter files, and copy one to your board. The GPIO numbers in STM32F0 is in periph.h, but in other boards are specified in GPIOPIN(PORTX,X).
Update: right now they modified the way of using GPIO in STM32F0, and there is a bug when using the GPIO
4. If you run the gnrc program, you will find out that you can’t ping the default ip, so you have to delete the ip and add one by
ifconfig 7 add fe80:::hard addr