Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
d00616D

d00616

@d00616
Contest Winner
About
Posts
228
Topics
6
Shares
0
Groups
4
Followers
2
Following
0

Posts

Recent Best Controversial

  • nRF5 OTA updates
    d00616D d00616

    @lorenzo said in nRF5 OTA updates:

    Hi, Any news on that? If needed I can help developping.

    No news from my side. Currently I have no time to work on this feature.

    You can fork my Repository https://github.com/d00616/ArduinoHwNRF5 to finish the work. It's possible to send a new firmware and the image is new replaced by the bootloader but with the first interrupt the MCU is crashing. For NF52 MCUs, I think this problem is fixable by moving the IV-Pointer to the image maybe there is an problem by different memory layouts of Arduino and Zephyr (used to compile mcuboot).

    Development

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @neverdie said in 💬 MySensors NRF5 Platform:

    @d00616 I guess this is what you mean by Zephyr? http://docs.zephyrproject.org/boards/arm/nrf52840_pca10059/doc/nrf52840_pca10059.html?highlight=nrf52840

    With Zephyr, I mean the Zephyr OS. This board definition is part of a newer Zephyr Version, I had used to compile mcuboot. This was ~7 Month ago.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    If someone try to work on mcuboot compatibility. Maybe only the IV is the problem. For NRF52 the IV can be moved to the beginning of the image, but the nRF51 IV is in the mcuboot rage.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    Sorry wrong wording. All P0 ports can be mapped. But to map P1 ports there is additional code required which does'n exists in the Arduino port.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @neverdie said in 💬 MySensors NRF5 Platform:

    @d00616 Will everything work the same on the nRF52840?
    Has anyone tried it?

    Yes. At the moment, I have no time to finish my work on supporting the nrf52840. In my Repository https://github.com/d00616/ArduinoHwNRF5 you can find my last state. All 840 ports P0 (0-31) and P1 (62-64) should be usable as GPIO but there is no support using the P1 ports with any pin mapping component like UART, I2C....

    The second change in my last commit is mcuboot. A bootloader compiled with Zephyr. Firmware can be upgraded OTA using MYSController with some enhancements (ask @tekka about the correct version). Firmware transmision works well but, at the moment my mcuboot port don't work. The memory layout between zephyr and arduino is different. The application cashes after start. I think it's a problem with different memory layout between Arduino and Zephyr.

    For NRF52 MCUs the memory problem can be solved by moving the interrupt vector register to the IV location in the image and setting the SP register to the correct value. Maybe the starting code of ArduinoHwNRF5 is the correct position, so this mcuboot version can be used for Arduino and Zephyr Software.

    If moving the SP to the correct position doesn't help, for NRF51 the Arduino linker scripts must be changed. I think there is only a small change required, but I have no idea about how to do this.

    It's welcome if someone can finish this work.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • nRF5 OTA updates
    d00616D d00616

    @andrew said in nRF5 OTA updates:

    I just started to review the NRF5* possibilities. regarding to the code protection, are you sure that you have to implement this by your own?
    what do you think about CTRL-AP - Control Access Port, APPROTECT?

    This is already implemented -> https://github.com/mysensors/MySensors/blob/development/hal/architecture/NRF5/MyHwNRF5.cpp#L69

    Do not enable this feature until the bootloader is working. I have an NRF52 board, I can't erase after enabling the feature. I think the problem is I haven't enabled the reset pin.

    I have tried to erase the MCU with ST-Link an CMSIS adapters. Maybe I have more luck with an J-Link.

    Development

  • nRF5 OTA updates
    d00616D d00616

    @alowhum said in nRF5 OTA updates:

    Any luck? Has OTA support for NRF5 materialised?

    It's not complete yet. My idea is to use mcuboot as bootloader and the MySensors OTA protocol to transfer a new firmware image. The last one is completely finished. I use the zehpyr port of mcuboot. This is working fine for NRF52 MCUs, but it depends on an memory layout of zephyr. The arduino-nrf5 port is using another memory layout.

    At the moment, I can flash a new firmware image over the air, the image starts until the first interrupt routine is called. I think this can be fixed for NRF52 MCUs. Last time, I have looked into the mcuboot project, the NRF51 MCU wasn't supported.

    I can't work on that in the moment, because I'm very busy with non MySensors related tasks.

    Development

  • nRF5 action!
    d00616D d00616

    @neverdie said in nRF5 Bluetooth action!:

    Speaking of batteries, I found only one proper holder for holding two CR2032's in series:

    There are CR2477 (560mAh) or CR2450 (950mAh) 3V cells. Maybe its's better to handle.

    My Project

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @nca78 said in 💬 MySensors NRF5 Platform:

    Should we worry about that ?

    No. There are some ports of Arduino for NRF5. At the moment MySensors is not compatible with the Primo Port, because it comes with the SoftDevice. It changes nothing for the current state.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @monte said in 💬 MySensors NRF5 Platform:

    @d00616 thanks for a reply. I will evaluate my skills for this task, when I actually will get a chip to try it on. I need some really small pcb for my project, and single chip with mcu and rf with the size of nrf51 fits perfectly, but it requires quiet simple communications and full MySensors library will be overkill and hard to adapt for my needs.

    If possible use the nRF52 series. There are some improvements like better radio sensivity, lower current consumption, more RAM and flash, better ADC and a better CPU. Maybe in the future there is a Firmware update OTA functionality which is easier to adapt to the NRF52 than the NRF51 platform. Another reason to use the NRF52 is, that the official Arduino NRF5 port only supports the NRF52. This port has a lot more capabilities than the arduino-nrf5 port, but MySensors is not compatible at the moment.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @monte Thank you.

    @monte said in 💬 MySensors NRF5 Platform:

    @d00616 one more question. Is your driver able to send broadcast messages, without defined address, or should I just use the same node address on multiple receiving nodes?

    The broad cast address is hard coded to 0xff (255). Each node must have a uniqe address, because it's not possible to send packages to a node with the same address.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @monte said in 💬 MySensors NRF5 Platform:

    @d00616 thanks for a reply. I will evaluate my skills for this task, when I actually will get a chip to try it on. I need some really small pcb for my project, and single chip with mcu and rf with the size of nrf51 fits perfectly, but it requires quiet simple communications and full MySensors library will be overkill and hard to adapt for my needs.

    You can use the MY_CORE_ONLY mode -> https://forum.mysensors.org/post/76627

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • nRF5 action!
    d00616D d00616

    @nca78 said in nRF5 Bluetooth action!:

    @neverdie I suppose the radio is using the high frequency clock, so it doesn't have any influence ?

    The LFCLK is required for BLE timing. Without the MCU required more energy to generate (synthetic) or calibrate (RC) the 32kHz signal.

    My Project

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @monte said in 💬 MySensors NRF5 Platform:

    Hello, @d00616. Could you tell me which ESB library did you use to port it to arduino environment? The one that comes with Nordic SDK? After searching for few hours I haven't find any other realization of ESB mode for arduino IDE except your port included with MySensors. It's a pity. Are you going to release general purpose library, maybe?

    The ESB library is written from scratch. At the time of of starting the Nordic SDK license was incompatible with open source projects. I have no plans to release this as stand-alone library. At the moment there is only an subset of the ESB protocol implemented. Enough to be compatible with MySensors RF24 devices.

    Feel free to use my code to create a stand-alone library. If required, we can talk about dual licensing to code with an additional open source license.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • How to make radio ESB disable
    d00616D d00616

    @icmathad said in How to make radio ESB disable:

    how to make radio ESB mode disable in MySensor API. please help me out.

    You can add a second NRF5 MCU or an dedicated BLE chip one for BLE and one for ESB.

    General Discussion

  • How to make radio ESB disable
    d00616D d00616

    @icmathad said in How to make radio ESB disable:

    how to make radio ESB mode disable in MySensor API. please help me out.

    If you mean to switch between BLE and ESB. This is not possible at the moment.

    The function call to disable the SoftDevice is not available with the arduino-nrf5 port. This is required to release the radio interrupt. This function call is available with the Arduino Primo port.

    If you are using the NRF51 the used RTC for sleep() is conflicting with the SoftDevice. The SoftDevice must be disabled before sleep(). The NRF52 comes with an additional RTC, which is used for sleep().

    The most blocking reason the SoftDevice is unsupported is the arduino-NVM library, required as EEPROM emulation. This library isn't using the SoftDevice API for flash access. The library blocks the program flow, if a SoftDevice is present. I had invested some time without luck. I don't know why.

    Pull requests are welcome.

    General Discussion

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @neverdie said in 💬 MySensors NRF5 Platform:

    Ashes on my head. The mysensors code is working with I2c after all. I confirmed it on the second (alternate) node. I had switched two of the wires in the myboardnrf5 pinout, but hadn't on the generic nRF51 pinout. Correcting for that, it now works.

    Thank you for reporting this. Great news to hear this.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @neverdie said in 💬 MySensors NRF5 Platform:

    @d00616 said in 💬 MySensors NRF5 Platform:

    I have I2C and serial running with a NRF52832.

    Yes, it does seem to work on the nRF52832. Just not presently on the nRF51822.

    Can you check, if the device works with the "Generic NRF51822" board? You can edit the variant files in the arduino-nrf5\variants directory.
    C:\Users...\AppData\Local\Arduino15\packages\sandeepmistry\hardware\nRF5\0.4.0\variants\Generic

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @neverdie said in 💬 MySensors NRF5 Platform:

    @d00616 You mentioned that it works only with a particular version of GCC. Does that mean I need to have a particular version of the Arduino IDE installed? I'm currently running the latest version of Windows Arduino IDE, which is 1.8.5.

    The GCC version is part of the arduino-nrf5 distribution.

    @neverdie said in 💬 MySensors NRF5 Platform:

    Unfortunately, it does not appear that I2C is working.

    I have I2C and serial running with a NRF52832.
    You can try to remove the compat_pin_mapping line and add the 0.1.0 pin map at this place. Then the board definition is nearly the 0.1.0 version.

    @neverdie said in 💬 MySensors NRF5 Platform:

    However, it doesn't seem to be working on the nrf51.

    I check the NRF51 board. What do you mean with no working?

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51

  • 💬 MySensors NRF5 Platform
    d00616D d00616

    @neverdie said in 💬 MySensors NRF5 Platform:

    I think I made the changes you recommended, but now I'm getting:
    Board MyBoard_nRF51822 (platform nRF5, package MySensors) is unknown

    Error compiling for board MyBoardNRF5 nRF51822.

    I had the same message. In my case, I have uninstalled arduino-nrf5, cleared files, which are not removed from packages directory (the 0.2.1 MyBoard files) and reinstalled arduino-nrf5. After restarting Arduino it was fine.

    OpenHardware.io contest2017 nrf52 mysensors nrf5 nrf51
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular