Giter Site home page Giter Site logo

gyaresu / rf1101se-teensy Goto Github PK

View Code? Open in Web Editor NEW
56.0 9.0 24.0 21.41 MB

Driving one of those cheap RF1101SE boards with a Arduino or Teensy

C++ 60.74% C 22.88% Arduino 15.27% Python 1.11%
arduino teensy cc1101 cc1110 radio yardstick opensesame mcu microcontroller chip

rf1101se-teensy's Introduction

rf1101se-teensy

Hi! This is my repo for learning about microcontrollers and packetised radio with the CC1101 by Texas Instruments chip driven by 'Arduino-compatible' devices.

You're going to want to have at least one (or a dozen) of these really really cheap RF1101SE radio module based on a Texas Instruments CC1101 chip (that's the one with no MCU and no USB, just the radio).

rf1101 with atmega328 from boldport and FTDI serial adapter I'm driving this 3.3v chip directly from the Atmega328 with 5v... but other chips have acted in super weird ways. So now you've been warned(!), it really shouldn't work. YMMV ¯\(ツ)

  • cc1101 — Just the radio
  • cc1110 — radio and MCU (Radica IM-ME used in OpenSesame)
  • cc1111 — radio, mcu, usb (YARD Stick One)

You're also going to want to have a Teensy, Arduino or basically any microcontroller that can speak SPI.

Now all of this works with the Arduino 'whatever' but if you have a 'whatever' then you'll need Logic Converters because "whatever's" do 5V on the digital pins and the Teensy can deal with either 3.3V or 5V because...

Teensy don't care.

Teensy is your basic honey badger of small inexpensive microcontroller boards. It runs a Cortex-M4 which comes with a whole bunch of functionality built right into the chip.

Please note that the cheap rf1101se-v3.1/whatever radio board you got from Aliexpress is probably only good for 433MHz because they all seem to be missing resistors on the circuit board that would enable it to be useful at any other frequencies. So it's not the chip that's at fault, just the cheap board design.

Encode all the things!

The example presented currently enables:

Read The Fine Manual

I've tried to document what the registers do in the Arduino code. You really need to read the manual though to understand what's going on.

cc1101 reference manual

gfsk manchester gfsk manchester detailed gfsk manchester decoding

TODO Move to the default Arduino SPI library. I would like to drive two slave devices (cc1101 chips) with a single microcontroller but the included panstamp library has it's own spi.c and spi.h which don't allow SPI.setSCK(pin)

ASK/OOK encoding

I include Yardstick One (YS1) code in this repo because I have one. If you don't have one then get one because they're awesome.

Links to things

rf1101se-teensy's People

Contributors

gyaresu avatar samyk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rf1101se-teensy's Issues

SPI.h

Can you explain your pin/port assignments in the subject file? I am trying to use your code and it seems that they correspond to a Teensy 1.0 core and NOT 3.1.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.