Re: nRF52 NFC Tag Emulation

2019-07-24 Thread Amr Bekhit
Hi Jeremy, > How did you manage to get nfc_uri_msg_encode() working? It seems to rely > on an awful lot of the Nordic SDK that’s not in MyNewt. > Yes - you need to bring in quite a few files from the nRF SDK. I've posted a rough version of my current NFC library to github. You can see it at

Re: nRF52 NFC Tag Emulation

2019-07-23 Thread Amr Bekhit
repo: https://github.com/jeremywood/nfc-tag-test < > https://github.com/jeremywood/nfc-tag-test> > > Thank you, > > Jeremy Wood > > > On Jul 22, 2019, at 1:43 PM, Amr Bekhit wrote: > > > > Hi Jeremy, > > > > The Nordic SDK uses a closed-sour

Re: nRF52 NFC Tag Emulation

2019-07-22 Thread Amr Bekhit
Hi Jeremy, The Nordic SDK uses a closed-source library to achieve this, nfc_t4t_lib. > Has anybody had any luck getting it to work with MyNewt? Yes, if you include the nfc_t4t_lib_gcc.a file in the src folder, newt will automatically link it in with the rest of the code. To bring up tag

Re: Mynewt Nimble OOB pairing

2019-04-30 Thread Amr Bekhit
Hi Łukasz, Thanks for looking into this. However in logs I cannot see SMP Pairing Response, but I should see it if > you would use NoInputNoOutput on Nimble side as you said in previous email. > Could you confirm that you used different IO capabilities for this test? > Yes, for this test I had

Re: Mynewt Nimble OOB pairing

2019-04-29 Thread Amr Bekhit
6. So this explains why things aren't working as expected. On Mon, 29 Apr 2019 at 19:38, Amr Bekhit wrote: > Hi Łukasz, > > I've sent you the Android Bluetooth HCI log separately to your email. > > The log was saved while the following events took place: > >- With my d

Re: Mynewt Nimble OOB pairing

2019-04-29 Thread Amr Bekhit
can present/use OOB flag during pairing. > > > > Best > > Lukasz > > > > On Fri, Apr 26, 2019, 18:57 Amr Bekhit wrote: > > > >> Hi Łukasz, > >> > >> Thanks for your reply. Where and when should the call to > ble_sm_inject_io >

Re: Mynewt Nimble OOB pairing

2019-04-26 Thread Amr Bekhit
hanged by other > means e.g. NFC to the NimBLE stack using "int ble_sm_inject_io(uint16_t > conn_handle, struct ble_sm_io *pkey)". > > For Secure Connection make sure to set MYNEWT_VAL BLE_SM_SC to 1. > > Hope that helps > > Best > Łukasz > > > > O

Mynewt Nimble OOB pairing

2019-04-25 Thread Amr Bekhit
Hello all, I'm interested in using OOB pairing over NFC to connect my peripheral device to a master (an Android phone in this case). The NFC Forum has a specification ( https://nfc-forum.org/our-work/specifications-and-application-documents/application-documents/) which dictates how two

Re: nRF52 NFC

2019-04-18 Thread Amr Bekhit
of the application as well. Amr On Thu, 18 Apr 2019 at 16:35, Amr Bekhit wrote: > Hi Andrzej > > You need to implement this handler and set interrupt vector using >> NVIC_SetVector() - Mynewt does not provide handlers for interrupts which >> are not used in code. >> > > I've

Re: nRF52 NFC

2019-04-18 Thread Amr Bekhit
Hi Andrzej You need to implement this handler and set interrupt vector using > NVIC_SetVector() - Mynewt does not provide handlers for interrupts which > are not used in code. > I've given that I go but still wasn't able to get it to work - you can see the modified code here:

nRF52 NFC

2019-04-18 Thread Amr Bekhit
Hello all, I'm trying to port the nRF NFC library to mynewt 1.5, but I'm struggling to get basic NFC functionality up and running. I've put together a basic mynewt project using the PCA10040 BSP and using the barebones NFC example at

LoRa low power patch - how to implement hardware specific timer turn-on

2019-03-01 Thread Amr Bekhit
Hello all, I've recently pushed my patch implementing low power in the LoRa stack ( https://github.com/apache/mynewt-core/pull/1670). It does this by using the os_cputime functions for the non-critical timing tasks (such as scheduling a retry, or delaying for a reset), and using the normal

Re: Trouble achieving low power bluetooth communication

2019-02-28 Thread Amr Bekhit
Hi Matt, Please see my email thread here: https://lists.apache.org/thread.html/c8cb49947625af476612b79b3c1a1e5db31fa52c75132ffb63dc81e5@ You most likely have the HFXO turned on due to a timer. Amr On Thu, 28 Feb 2019, 11:40 p.m. Matt Hammond, wrote: > Hi! > > I'm new to MyNewt/Nimble and

Unified method of turning peripherals on or off for low power, sharing peripherals amongst threads

2019-01-26 Thread Amr Bekhit
Hello all, I wanted to share my thoughts on two topics I've run into recently with mynewt: I've recently finished modifying to LoRa stack to allow it to work at reduced power by having it turn the high accuracy timer on or off as needed. I'm also currently integrating the Microchip CryptoAuthLib

Microchip CryptoAuthLib in mynewt

2019-01-25 Thread Amr Bekhit
Hello all, I'm looking to integrate the Microchip CryptoAuthLib into mynewt (https://github.com/MicrochipTech/cryptoauthlib). I'm primarily focusing on getting the library incorporated as a standalone package and implement the I2C hal layer using the mynewt hal_i2c functions. This is a "heads

Sharing the HFXO on the nRF series

2019-01-10 Thread Amr Bekhit
Hello all, I'm currently working on a project using mynewt 1.5.0 that will use both the BLE and LoRa stacks and needs to run at low power. This requires that the high frequency crystal oscillator (HFXO) be turned on and off as required, rather than staying always on (it consumes around 400uA).

Re: LoRa end device unable to consistently join

2019-01-07 Thread Amr Bekhit
and set the RXTX pin, it works fine now. On Sun, 6 Jan 2019 at 14:38, Amr Bekhit wrote: > > Hi Will, > > Thanks for your response. In this case, both the end node and gateway > are configured as a public network > (https://github.com/amrbekhit/mynewt-lora-sandbox/blob/master

Re: LoRa end device unable to consistently join

2019-01-06 Thread Amr Bekhit
RA_NODE_PUBLIC_NWK and the default is 0 > (meaning it is default to private network) > > > > On Jan 4, 2019, at 11:46 AM, Amr Bekhit wrote: > > > > Hello all, > > > > I'm trying to use mynewt to develop a small LoRa end device using the > > Telit RE866 mod

LoRa end device unable to consistently join

2019-01-04 Thread Amr Bekhit
Hello all, I'm trying to use mynewt to develop a small LoRa end device using the Telit RE866 module, which is basically an nRF52832 embedded with an SX1272 radio. Unfortunately, I'm having a lot of trouble getting the LoRa stack to consistently join the network successfully. I have my own gateway

Bosch BSEC Mynewt library for BME680 Environmental Sensor

2018-07-21 Thread Amr Bekhit
Hello all, I've released my integration of the Bosch BSEC library for use with the BME680 environmental sensor. The repo can be found here: https://github.com/amrbekhit/mynewt-bosch-bsec For the time being, I've released this as a separate repo as licensing is a problem. The code consists of

Re: SENSOR_TYPE definition for a gas sensor

2018-07-20 Thread Amr Bekhit
I've created a pull request for the BME680 driver, which can be found at https://github.com/apache/mynewt-core/pull/1286. Regarding the gas sensor type, as suggested by Kevin, I've allowed that to be modified via syscfg. As mentioned previously, the BME680 is ultimately designed to be used with

Re: SENSOR_TYPE definition for a gas sensor

2018-07-19 Thread Amr Bekhit
@Abderrezak > My question is: does Bosch allow the "re-distribution" of their > proprietary library? There are two parts to the Bosch library - the first it the BME680 driver, which, according to the license agreement can be redistributed in both source and compiled forms no problem. The other is

SENSOR_TYPE definition for a gas sensor

2018-07-19 Thread Amr Bekhit
Hello, I'm preparing to commit my library for the Bosch BME680 Environmental Sensor and have a question. In sensor.h, there are a sensor_type_t enum that contains definitions for the various values that can be read. The BME680 contains a gas sensor that reports a resistance. This is not listed in

BLE GATT Characteristic ENC AUTHEN and AUTHOR flag meanings

2018-07-17 Thread Amr Bekhit
Hello, Can someone explain (or help point to documentation) the ENC, AUTHEN and AUTHOR flags that are used in GATT characteristics? I've noticed that using them in combination with the normal READ and WRITE flags causes the central to request a pin code when it tries to access the characteristic,

Re: Towards an ecosystem

2018-07-17 Thread Amr Bekhit
Having some experience with working with the Linux kernel (compiling + configuring for custom hardware, debugging, patches), I kind of like the monolithic approach for the following reasons: - All the code is one place. - Rather than having multiple drivers/libraries for the same thing, there is

Re: Minimising power consumption on the nRF52

2018-07-12 Thread Amr Bekhit
Just done some more testing. If you build the bootloader without any additional syscfg files, the default BSP syscfg will take effect. For the nRF52DK board, this automatically turns on TIMER_0 (which subsequently enables the HFXO) and enables the UART (each of which consumes significant power,

Re: BLE uart read write

2018-07-10 Thread Amr Bekhit
Are you referring to the host/services/bleuart package? Looking at the code for that, it appears that there are no callbacks or hooks to allow you to read and write data. The code appears hard coded to read and write data from the console. Regarding receiving data, looks like you'll need to

Re: BLE security/encryption/passkey authentication

2018-07-10 Thread Amr Bekhit
2018 at 10:12, Amr Bekhit wrote: > > Hi Andrzej, > > Thank you - that does indeed work. > > I have another question. Bonding now works (i.e. using the nRF52 > Connect app on Android, I connect to the advertising end device and > then bond with it to save the credentials), h

Re: BLE security/encryption/passkey authentication

2018-07-10 Thread Amr Bekhit
bh... > > So please try with 6 digits passkey (i.e. >=10) and it should work. > > Best, > Andrzej > > > On Mon, Jul 9, 2018 at 12:08 PM Amr Bekhit wrote: > > > > Hi Andrzej, > > > > Below is my GAP event callback function and the console outpu

Re: BLE security/encryption/passkey authentication

2018-07-09 Thread Amr Bekhit
Hi Andrzej, Below is my GAP event callback function and the console output when I attempt to bond with my device (I'm using the Nordic nRF Connect app on my phone to interact with the device): static int bleprph_gap_event(struct ble_gap_event *event, void *arg) { int rc = 0;

Re: BLE security/encryption/passkey authentication

2018-07-09 Thread Amr Bekhit
the nimble stack what the passkey is. When the BLE GAP callback function is called with BLE_GAP_EVENT_PASSKEY_ACTION, I've tried to use the ble_sm_inject_io function to specify a passkey, but this doesn't seem to have any effect - the bonding still fails. Any thoughts? On Fri, 6 Jul 2018 at 15:43, Amr

BLE security/encryption/passkey authentication

2018-07-06 Thread Amr Bekhit
Hello all, Is there any documentation regarding the security aspects of Nimble (.e.g pairing, bonding, passkeys etc)? The mynewt documentation covers the basic advertising and GATT systems quite well, and am happily using those, but I'm struggling to find any information on the security side of

Minimising power consumption on the nRF52

2018-07-05 Thread Amr Bekhit
Hello all, I've been experimenting with mynewt and the nRF52DK board trying to create a low power application. I've been working off the hello_world app since it is simple. By default, when running the hello_world app, the nRF52 consumes around 1.5mA. Disabling the UART (by settings UART_0: 0 and

Re: Sensor API Timing Constraints

2018-06-30 Thread Amr Bekhit
You could also have a look at the Sensor Listener API and the sensor_set_poll_rate_ms function - if all you need is to read the sensor at a specified interval, that API could be all that you need. On Sat, 30 Jun 2018 at 15:36, Amr Bekhit wrote: > > It just so happens that I've recently com

Re: Sensor API Timing Constraints

2018-06-30 Thread Amr Bekhit
It just so happens that I've recently completed the driver for the Bosch BME680 environmental sensor as well as a separate module for the Bosch BSEC sensor fusion library. I've yet to submit the patches so I don't know if the method I chose would be accepted but I'd like to share my own thoughts

Sleep modes in mynewt

2018-06-28 Thread Amr Bekhit
Hello, What's the status of sleep/power saving in mynewt? Does mynewt have any support for bringing the CPU into various sleep modes? Does the system go into sleep mode during the idle task (I've done some digging - I don't think it does)? I've done some search in the source for 1.4.0 and found

Retrieving hardware IDs in Mynewt

2018-06-25 Thread Amr Bekhit
Hello, Is there any driver for retrieving CPU hardware IDs in mynewt? I can see that there is a sys/id package, but I couldn't find any documentation for it, nor any use of this library in the sample code. Amr

Re: Changing modules in the shell

2018-06-13 Thread Amr Bekhit
After playing around some more, it appears that this only works when you are in the base "shell" module, but not from other sub-modules. On Tue, 12 Jun 2018 at 15:08, Amr Bekhit wrote: > Hello all, > > Quick intro - I've recently started using mynewt and hoping to

Changing modules in the shell

2018-06-12 Thread Amr Bekhit
Hello all, Quick intro - I've recently started using mynewt and hoping to use it primarily for the Bluetooth and LoraWAN functionality. I quite like the package and syscfg system in mynewt, I think it's very flexible and I look forward to seeing the project grow. I've managed to make a small