NordicID / rfiddemo_xamarin

RFIDDemo app for Xamarin
MIT License
9 stars 0 forks source link

Antenna Power HH53ACD #4

Open graselli opened 2 years ago

graselli commented 2 years ago

Hi, how to set (in xamarin) antenna power for the reader HH53ACD (and eventually any other nordic reader) ?

TuroRantanen commented 2 years ago

Hi graselli,

It's as simple as the following:

App.Nur.TxLevel = 0; // Set TxLevet to maximum (1000mW in the case of the HH53, HH83, and HH85)
App.Nur.TxLevel = 3; // Set TxLevet to maximum - 3dB (500mW in the case of the HH53, HH83, and HH85)

The following code returns the number of TxLevel steps available:

App.Nur.GetDeviceCaps().txSteps;

Here is also some sample: https://github.com/NordicID/rfiddemo_xamarin/blob/80619466efdea229da3f06c1a7be06f387240780/rfiddemo_xamarin/nur_tools_rfiddemo_xamarin/Views/InventoryPage.xaml.cs#L38

Best regards, Turo

graselli commented 2 years ago

Thanks a lot. Another little question: the antenna power is the same for reading and writing ?

TuroRantanen commented 2 years ago

Yes, it's the same for reading and writing.

It's good to use a higher TxLevel for writing because usually, tags require more power for write operation:

// Get target tags by using TxLevel 10 mW
App.Nur.TxLevel = 20;
App.Nur.ClearTagsEx();
App.Nur.Inventory();
NurApi.TagStorage tagStorage = App.Nur.FetchTags(true);
// Make sure that there are no other tags around
if (tagStorage.Count == 1)
{
    // Write new EPC by using higher TxLevel (100 mW)
    App.Nur.TxLevel = 10;
    tagStorage[0].WriteEPC(0, false, NurApi.HexStringToBin("ACDC0123"));
}