Comments (9)
Hey no worries!
With regards to your requirements on ~1k symbols, the hardware you have (CC1101, 3.3V Arduino) is enough to do so - however you may wish to write your own firmware on the Arduino itself as CCManager is not able to solve the issue as-is.
CCManager works by queuing bytes into the CC1101's internal TX FIFO (limited to 61 bytes), then requesting the CC1101 to TX the buffer's content. This allows timing flexibility between the host/bridge/CC1101.
There is also a second mode (serial synchronous/asynchronous mode) on the CC1101. Upon enabling TX, the CC1101 will generate a clock signal and read data from its GDO pins. In this mode, the CC1101 acts more like a simple modulator and you should be able to send a transmission of arbitrary length.
This is the literature from TI which might help you in the alternative mode:
http://www.ti.com/lit/an/swra359a/swra359a.pdf
Unfortunately I have not implemented a CLI version of CCManager. Perhaps in the future ^_^
Might I suggest looking at rfcat for similar features, but more powerful in the "expert mode" and automation department? (Different hardware though)
from ccmanager.
Thanks again for so much help.
I don't know how I misinterpreted it so badly, but I actually only need to send 17 bytes! I managed to use GRC to record from an RTL-SDR and use wave-converter to demodulate and decode the 2-FSK rolling key code and then convert it to a hexadecimal code. Turns out the code is repeated twice, so only 8 bytes, 2 of the bytes increment by 16 every button press, 5 bytes are constant, leaving only one true "rolling code". I'll see if there's some sort of pattern to it.
Crazy how this is the stuff protecting my car! 1 byte of data. So much for rolling code security.
from ccmanager.
Hey,
I've tested out 2FSK briefly and it seems to work. You can configure the registers manually via the CC1101's datasheet or use TI's SmartRF Studio (free - requires TI login though) and let it generate the registers for you.
These are the RF settings I used to test (2FSK @ 433.9MHz, 82.5KHz deviation)
This is the output (annotated)
You can configure your desired RF settings, export the registers (1), choose the correct output type and copy the text (2) and import it into CCManager through pasting into the dialog in "Import SimpliciTI Settings" (3)
Hope it helps!
from ccmanager.
Thanks for all the help.
After searching around, I seem to be on my own :( I don't have much experience with SPI etc.
Oh well, I'll see how this whole "serial synchronous" business works out.
from ccmanager.
Thanks a lot for that! Such a nice and detailed guide!
Anyway, the particular rolling code system I have has a symbol rate of around 18kHz, which the CC1101 can do, however it does have ~1000 symbols that need to be transmitted ... I see that your program only supports 61 bytes. Do you have any idea on how to tackle this challenge (I am using an Arduino Pro Mini, 3.3V, 8MHz)? Also, is there a way to run your CCManager program without the GUI, just with a CLI in Linux shell/Windows command prompt? I'd like to be able to automate this on a Raspberry Pi -> analyses/decodes FSK -> sends code to CC1101.
Sorry for the many questions, I am still a n00b with this hardware.
Thanks again.
from ccmanager.
Hi again,
Just wondering if this idea makes any sense: instead of transferring the data continuously over serial and having to deal with clocks etc, could I just hard code the entire transmission in a string in the Arduino sketch? There should be enough flash memory for this. I could have a Raspberry Pi dynamically generate and upload the sketch to the Arduino once it captures a key press.
Then I could simply go on by looping and keeping the TX FIFO filled (not sure on how to do this, but there are libraries I suppose)? Would this work?
Thanks.
from ccmanager.
Hey,
It might work, though it sounds somewhat hacky given that the data would be sent in blocks of 61 bytes with an unknown interval, and I don't think I am able to give more advice than that. It would be easier and more reliable to get the Arduino to do the work via asynchronous mode with the CC1101 in your case for long packets.
Asynchronous mode is similar to the method you describe, where you store your data on the microcontroller, and configure the CC1101 to both transmit and read the next packet's data simultaneously.
from ccmanager.
Congrats!
Do remember that rolling code can be desynchronized (by accident usually) and there probably is a sequence of actions you may have to take to re-synchronize it. Hopefully CCManager is capable of opening your car for you :^)
from ccmanager.
Hey trishmapow,
You have succeeded? I am looking for information to use a CC1101 on arduino to try on my car.
Sorry for my bad english
Thanks
from ccmanager.
Related Issues (8)
- Doorbell RF replay example ? HOT 1
- Disable the CC1101's preamble and sync transmission HOT 1
- Input Voltage
- Sends another code HOT 14
- OOK data looks weired HOT 9
- Arduino + CC1101 + CCMANAGER HOT 1
- Send Code HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ccmanager.