Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
network_protocol_programming_lab:8_smartrf [2021/04/09 10:56] – [Menu Bar] rathke | network_protocol_programming_lab:8_smartrf [2022/04/29 08:43] (current) – [4C Installation] fangenoorth | ||
---|---|---|---|
Line 8: | Line 8: | ||
4C can also be used to perform some performance test, like continuously sending an receiving a bit stream or transmitting and receiving data packets. | 4C can also be used to perform some performance test, like continuously sending an receiving a bit stream or transmitting and receiving data packets. | ||
- | |||
- | < | ||
===== 4C Installation ===== | ===== 4C Installation ===== | ||
Line 16: | Line 14: | ||
To install //4C// several steps have to be done: | To install //4C// several steps have to be done: | ||
- | - Login as root to the BeagleBone Black and download | + | - Download |
- | - Go back to your PC or laptop. Download Version v14.16.0 of [[https:// | + | - Go back to your PC or laptop. Download Version v14.16.0 of [[https:// |
- | - Download //4C// as a ZIP-File from [[https:// | + | - Download //4C// as a ZIP-File from [[https:// |
- If not already done, open a your favorite terminal app (terminal in Linux or Mac OS X, Powershell in MS Windows) and change to directory '' | - If not already done, open a your favorite terminal app (terminal in Linux or Mac OS X, Powershell in MS Windows) and change to directory '' | ||
- Now open your Browser (remember: Chrome, Firefox or Safari) and go to the url: <code bash> | - Now open your Browser (remember: Chrome, Firefox or Safari) and go to the url: <code bash> | ||
+ | |||
+ | **If you work inside uni with your own machines the above setup will not work.** This is because the BeagleBones reside in their own subnet to which you don't have access from your laptops connected to eduroam for example. This issue arose already in the earlier steps. Back then we solved it by first sshing into the inna server (or via JumpHost) and then ssh into the BeagleBones. But now the situation is a bit different, because we cannot instruct our Webbrowser to do this. Instead we have to use a technique called //SSH port tunneling// | ||
+ | |||
+ | Luckily the command to set this up is quite easy. First execute steps 1 to 3 from the above. However in step 3 enter '' | ||
+ | <code bash> | ||
+ | ssh -N t27@inna.tkn.tu-berlin.de -L 4711:<IP of BBB>: | ||
+ | </ | ||
+ | This tells ssh to forward packets arriving on port 4711 on your local machine (from the node webapp) to port 4711 on the BeagleBones (to the cc1200 daemon) using the inna server as a intermediate Jump Host. Note that the terminal window needs to stay opened and this ssh call should not be terminated, otherwise the tunnel will be closed as well. | ||
+ | |||
+ | Now you can start and connect to the webapp as described in step 4 and 5. | ||
+ | |||
===== First Steps with 4C ===== | ===== First Steps with 4C ===== | ||
After you have installed and startet //4C//, the window depicted in Fig. 2 will open. | After you have installed and startet //4C//, the window depicted in Fig. 2 will open. | ||
- | < | + | < |
==== Menu Bar ==== | ==== Menu Bar ==== | ||
- | On top of the window you see the menu bar with the menus //TKN//, //File//, //CC1200// and the // | + | On top of the window you see the menu bar with the menus //TKN//, //File//, //CC1200// and the // |
=== TKN Menu === | === TKN Menu === | ||
Line 63: | Line 72: | ||
Selecting //Write Register// item a dialog opens that asks you for the address of a specific register to write. The value of the registers is transferred to CC1200 every time you press the '' | Selecting //Write Register// item a dialog opens that asks you for the address of a specific register to write. The value of the registers is transferred to CC1200 every time you press the '' | ||
- | === Device List Window === | + | === Mode Menu === |
- | + | In the //Mode Menu// you will select which configuration | |
- | The upper half shows a list of all RF devices produced from Texas Instruments. \\ If you click the right mouse button on device (e.g. CC1200), a context menu will open. If you select "Open RF Device in Offline | + | ==== HF Configuration Window |
- | + | ||
- | === Connected Evaluation Boards Window | + | |
- | The lower part shows all evaluation boards, that are connected with your computer with the corresponding evaluation modules. | + | |
- | + | ||
- | Now, double click the evaluation board in the lower part of the window. A device window opens (see Fig. 3). You are now directly connected to the CC1200 device. | + | |
- | ==== Device Control Panel ==== | + | |
- | + | ||
- | < | + | |
- | + | ||
- | + | ||
- | As you can see in Fig. 3, the window is divided into three parts. | + | |
- | + | ||
- | === Connected Evaluation Boards Window === | + | |
- | * The upper part contains some useful control, that are used very frequently. E.g. can set the device either in " | + | |
- | + | ||
- | === Predefined Configurations Window === | + | |
- | * The middle part of the window contains predefined configurations - called settings. | + | |
- | + | ||
- | === Test Configurations Window === | + | |
- | * In lower part of the window you can configure and start predefined tests, e.g. " | + | |
- | + | ||
- | ==== Expert Mode Window ==== | + | |
- | We are not using the easy mode. Therefore switch to expert mode (see Fig. 3) after you have enabled " | + | |
- | + | ||
- | < | + | |
- | + | ||
- | After entering expert mode, you will recognize (see Fig.4), that the number of predefined configurations has been increased and the number of options for the predefined tests also has been increased. Beside that, two more windows are now visible: | + | |
- | + | ||
- | * //The registers of the chip are now accessible in the " | + | |
- | * //You can chose the RF parameters of the chip.// \\ In this window, you change the RF parameters of the chip, without touching the registers. SmartRF Studio will do that for you. E.g. if you change the symbol rate, SmartRF Studio will modify the affected registers. To test, which register has been changed, press the " | + | |
- | + | ||
- | ==== Register Export | + | |
- | + | ||
- | After changing all registers to your needs, it is time to export the value of all registers and include the the register values in your own source code. Afterwards the register values will be written by about program. | + | |
- | + | ||
- | To export the register values, press the " | + | |
- | + | ||
- | < | + | |
- | On the left side of the window, a list of predefined templates are shown. This list can be extended by new templates. Below the template | + | In the //HF Configuration Window// you can change HF chip parameters like carrier frequency, modulation, bit rate etc. without modification |
- | First, there is a header, followed by the register section and ended by a footer. The result is shown in the right side of the window. | + | Currently only changing |
- | E.g., if you select the "// | ||
- | If you do not like this style, you can modify it with the placeholder "RN, rn, RD rd ..." depicted in the " | + | ==== Register Window ==== |
- | If you are satisfied with you template, you will export | + | The //Register Window// contains all CC1200 registers. After der register name, its address (in parenthesis) and the current value of the register |
- | < | + | ==== Testing |
- | On the left side in Fig. 6, all the available registers are shown. The CC1200 has 165 registers. On the right side, the exported registers are shown. If you want to remove a register, highlight it in the left window and click the left arrow. If you want to add a register highlight it in the right window and press right arrow. If you want to include all registers, then press the three right arrows and so on. If you are not sure, which registers to include, just include all registers. | + | The //Testing Window// contains |
- | ===== First Tests with SmartRF Studio ===== | + | * Transmission in // |
+ | * Reception in // | ||
+ | * Transmission in //FIFO Mode// data Communication mode and | ||
+ | * Reception in //FIFO Mode// data Communication mode. | ||
- | In section, we are using two evaluation boards. The CC1200 of the first board will act as a transmitter and the CC1200 | + | The data communications modes are explained in the //CC1200 |
- | First leave SmartRF Studio, if no already done. Now prepare two evaluation boards a described in section [[network_protocol_programming_lab: | + | For all data communication modes the following parameters are configured: |
- | + | ||
- | < | + | |
- | Now, start SmartRF Studio as shown in Fig. 7. Double-click the first board in the device list. The device window for that board will open (see Fig. 8) | + | carrier frequency: 868 MHz,\\ |
+ | Modulation: 2-GFSK,\\ | ||
+ | Bitrate: 38.4 kBit/s\\ | ||
+ | Deviation: | ||
+ | Rx filter bandwidth: 104.166667 kHz,\\ | ||
+ | Transmission Power: 14 dBm | ||
- | < | + | ==== Status Window ==== |
+ | In the //Status Window// the current status of the CC1200 is shown. The status will be updated every second and corresponds to the values explained in //CC1200 User Guide// | ||
- | Select | + | ==== Strobe Window ==== |
- | In the lower window, select | + | The Strobe Window will be used to change |
- | Now, go back to the main window of SmartRF Studio" | + | ===== First Test with 4C ===== |
- | 9. | + | |
- | < | + | First, take a BeagleBone Black equipped with a CC1200 evaluation module and perform the installation of 4C. Now open 4C and the main window appears. |
- | Now, go back to the receiver board and press the start button. You will see a curve representing the RSSI value. Now, select the window of the transmitter board and press also the start button. If you now look at the window of the receiver, you will see a jump in the RSSI curve. The jump occurs at the time, the sender starts transmitting. If you switch off the sender, the RSSI curve will drop. This behavior ist shown in Fig. 10. | + | Go to the Register Window |
+ | Now change | ||
- | < | + | In the next step choose //RX Synchronous Serial |
- | This simple example should demonstrate the use of SmartRF Studio. Try other settings, perhaps use the packet modes and modify some RF parameters. To get familiar with SmartRF Studio, play around with it. | + | You habe found a configuration |