Giter Site home page Giter Site logo

OOK data looks weired about ccmanager HOT 9 OPEN

jglim avatar jglim commented on August 17, 2024
OOK data looks weired

from ccmanager.

Comments (9)

jglim avatar jglim commented on August 17, 2024

Hi! Thanks for bringing this up. It does look strange.. Could I verify that the settings you used to capture those signals are as follows:

SDRSharp, under the Recording pane

  • Sample format is set to to 8 Bit PCM
  • Audio is unchecked
  • Baseband is checked

from ccmanager.

CptLeeChuck avatar CptLeeChuck commented on August 17, 2024

Thanks for your quick reply. Yes I can confirm these settings. Two more things to mention. First I forgot yesterday to wrote that I connected the EXP430G2 with MSP430G2553 and CC1101 once (between OOK signals as expected and my weired OOK signals) without non-rotated TXD and RXD jumpers. Could this have damaged something?

Furthermore I notice that I hve to reconnect the board each time twice before it CCManger can find it on COM3. This was also not the case previously.

Is there anything I can try to reset EXP430G2 with MSP430G2553 and CC1101 entirely and start from scratch? I tried alread to reload the firmware without success.

Below again more full screenshots from my attemtp today. Still same issue:
ff00ff00ff00-again
ff00ff00ff00-again2

from ccmanager.

jglim avatar jglim commented on August 17, 2024

Thanks for the details - I've tried to replicate your transmission and the results are below:

868-debug-ok

The first bit near 1,7230 seconds and 1,7240 seconds is a known issue where the CC1101 module tries to add a preamble before sending the data. It "should have been fixed" but still appears sometimes and it can usually be ignored or worked around by padding the start with 0x00.

At 868.25 MHz, the OOK pattern in your data appears to align with mine, indicating that the data and baud rate are also accurate. This indicates that your hardware is most likely perfectly healthy 😄

I believe the issue might be that the signal is too strong to your receiver as the amplitude on your recording (as displayed in Audacity) appears to be clipping the boundary. Maybe reducing the gain on your RTL-SDR or moving the devices further apart from each other will be of help.

Unfortunately I am not sure about the serial port visibility issue, as CCManager uses the OS's port listing.

from ccmanager.

CptLeeChuck avatar CptLeeChuck commented on August 17, 2024

Hi,

Thanks a lot! Your gain hint solved the first issue! Now I can reproduce my actuall problem with mixed/wrong values.

I send this for instance:

0xFF, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA

First of all I'm not sure if the only different pattern really is 0xFF (=11111111) as it looks to me like 0xCC (=11001100). (see red comment in my screenshot)

Second, as one 0xAA (=10101010) equals four times on and off in rotation I expected after 0xFF 164 (= 41 * 4) on and 164 off in rotation. But after 0xFF (or 0xCC) I count 83 on and 83 off in rotation. Furthermore I count 32 at the beginning and another 3 before 0xFF (or 0xCC).

mixed

Do you have a clue what's happening here?

Compared to all this if I send a shorter sentence ilke this one:

0xAA, 0xCC, 0xFF, 0x00, 0xAA, 0xCC, 0xFF, 0x00

I get the result as expected (including preamble of CC1101)
good

from ccmanager.

jglim avatar jglim commented on August 17, 2024

Hey,

Just an update: I've managed to replicate and confirm the issue but I haven't found a solution yet 🤔

from ccmanager.

CptLeeChuck avatar CptLeeChuck commented on August 17, 2024

Do you get the same wrong data or something different?

I was not able to open your project and do some debugging on this as visual studio prompts an error for missing .NET 4.0 components which I can't find for download and should actually be already included in visual studio/win10.

However I'm not very familiar with visual studio (with cc1101 even less), but in general i believe I understand your code more or less.

So in your RF class you've the following function which I understood transfers the data to the CC1101 TXFIFO register. Does this already contain the mixed data or is it scrambled later within CC1101?

public void Transmit(byte[] dataToTransmit)
		{
			List<byte> dataToTransmitInverted = new List<byte>();
		  	for (int i = 0; i < dataToTransmit.Length; i++)
		  	{
		  		dataToTransmitInverted.Add(FlipByte(dataToTransmit[i]));
		  	}
		  
		  	Log.Info("Writing TXFIFO", 2);
		  	SPI.WriteRegister(sp, CCRegister.CC1101_TXFIFO, (byte)dataToTransmit.Length);
		  	SPI.WriteBurstRegister(sp, CCRegister.CC1101_TXFIFO, dataToTransmit);
		  	
		  	EnterTransmitState();
		  	ShortWait();
		  	EnterIdleState();
		  	Log.Success("Transmit Completed");
		}

BTW: Are you transferring the non-inverted data?

from ccmanager.

jglim avatar jglim commented on August 17, 2024

The wrong data is different: I've followed your configuration as in your screenshot and this is the result

868-debug-2

The inverted data dataToTransmitInverted is not used (vestigial code during development). The CCManager client sends the unmodified transmission data via serial to the hardware, which then writes the same unmodified data to the CC1101 via SPI. Hopefully this screenshot of the debugged client may help you:

2017-10-27_10-09-57

It seems that either the CC1101 is unexpectedly messing up the data or the CC1101's registers are misconfigured. Either way it is quite a serious bug that has gone unnoticed for a long time (almost 4 years!). I plan to try different data sizes and registers to attempt to identify the issue at a later date as I am unfortunately occupied now. A (very hacky) workaround would probably be to further limit the transmission size.

Thanks for trying to debug the issue too! If you are using VS, maybe selecting "Windows Forms" (different from UWP) development in the installer might add the missing dependencies.

from ccmanager.

CptLeeChuck avatar CptLeeChuck commented on August 17, 2024

Would it make sense to post in TI board/forum?

from ccmanager.

jglim avatar jglim commented on August 17, 2024

At this point of time I still have not found out enough about the issue, such as the transmission sizes that start triggering the bug. It might still be worth a shot - if you decide to do so, I believe the data in "View/Edit Registers" (which indicate the state of registers when transmitting) may assist in the diagnosis.

Really appreciate how much time you have already spent looking through and improving CCManager ^_^

from ccmanager.

Related Issues (8)

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.