{ "info": { "author": "atokulus", "author_email": "atokulus@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# About `flora_tools`\n\nThe `flora_tools` package provides the tools and means for developing on the new PermaSense flora DPP2 Comboards, facilitating the LoRa radio SX1262 from Semtech.\n\nModule | Description\n------ | -----------\n`flora_tools` | General resources, such as the static calculation of time-on-air, Gloria & LWB figures,
basic interfacing via serial/UART, and interface for the Tektronix oscilloscope to measure the timings precisely\n`flora_tools.experiments` | All scripted experiments, utilizing e.g. the oscilloscope\n`flora_tools.analysis` | Jupyter notebooks for condensed visual representation.\n`flora_tools.sim` | The simulation server for the protocol layers\n`flora_tools.toolchain` | The scripts for flashing and maintaining the firmware projects\n`flora_tools.stm32loader` | The script which implements the STM32's UART ROM-bootloader protocol\n\n# Installation Guide\n\nInstall Python3.7+ and pip 10.0+. If your are using Ubuntu 18.04, these are already installed. Then you can install the pip package `flora-tools`\n\n```sh\npython -m pip install flora-tools\n```\n\nIf you run into problems, try `python3 -m pip` or `pip3`, as there are still many old distributions around.\n\n### Run The script ###\n\nUse \n\n```sh\npython -m flora-tools # With a dash!\n```\n\nor just\n\n```\nflora_tools # With an underscore!\n```\n\n### Development ### \n\nDo not install the python package from PyPi, but rather clone this repository and run\n\n```sh\ngit submodule update --init --recursive\npython -m pip install -e .\n```\n\ninside the top folder (where `setup.py` is located). You can edit the source files and the module will reflect the changes automatically.\n\nThe python package is generated and uploaded according to (https://packaging.python.org/tutorials/packaging-projects/).\nDo not forget to clone the git submodules as well.\n\n\n## Patch Atollic TrueStudio Eclipse Project Files\nAs there are no external include paths and symbols configured in a freshly generated Atollic TrueStudio project, the project's XML files have to be patched.\n\nJust run\n\n```sh\npython -m flora-tools patch_eclipse path/to/flora_repository\n```\n\n\n## Mass programming/flashing DevKits (STM32L476RG) and Comboards (STM32L443CC, STM32L433CC) with built-in ROM UART-Bootloader\n\nUsing the `stm32loader` library for Python 3 (originally by *florisla*), all SX126xDVK1xAS devkits and DPP-Comboard modules can be programmed simultaneously. The library is available as a git submodule inside the `flora-tools` python package.\n\nEnsure you have closed all your serial-port connections to your DevKits or ComBoards.\n\nYou can now either put the MCU into bootloader mode by pullin BOOT0-pin high (connect with VCC), set the J502 & J503 solder bridges on the DPP carrier board, or use the dedicated FlOS CLI command `system bootloader` inside *flora CLI* to jump directly into the ROM bootloader. All variant are supported automatically by the command below.\n\nCheck that you have compiled and built your Atollic project correctly and have a `*.hex` or `*.binary` file inside the `Outputs` folder. Then run the following command with the correct path (i.e. where the `platform` and `lib` folder are located).:\n\n```sh\npython -m flora-tools program_all path/to/flora_repository\n```\n\n## Programming single Device\n```sh\npython -m flora-tools program path/to/firmware(.hex/.binary) -p COM1\n```\n\n## Measurement setup\n\n### Precise timing measurements\n\n![Setup to measure precise timings](/doc/img/measurements-cable_setup.png)\n\n### Measurements over GPIB/LXI/VISA\nFor a working PyVISA installation for interfacing with the oscilloscope and power analyzers you need to follow this [guide](https://pyvisa.readthedocs.io/en/stable/getting_nivisa.html). For Windows, you can download the following VISA backend driver: (http://www.ni.com/download/ni-visa-18.0/7597/en/)\n\nUse NI MAX to configure all your devices.\n\n### Tektronix MSO4104B oscilloscope\n\nFirst, upgrade your oscilloscope to the lates firmware version, as the `HORIZONTAL:RECORDLENGTH` command won't work otherwise.\n\nConnect your oscilloscope to LAN via a Ethernet.\n\nPush the `Utility` button and switch to the `Utility Page` `I/O`. Select `Ethernet & LXI`. Disable the `e*Scope Password`. Set the `Network Configuration` (bottom) to `Automatic` to get a DHCP lease.\n\nAdd your Tektronix MSO4104B oscilloscope in NI MAX. You have to note down the VISA Resource Name.\n\n## FlockLab Integration\n\n*To be integrated.*\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Atokulus/flora_tools.git", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "flora-tools", "package_url": "https://pypi.org/project/flora-tools/", "platform": "", "project_url": "https://pypi.org/project/flora-tools/", "project_urls": { "Homepage": "https://github.com/Atokulus/flora_tools.git" }, "release_url": "https://pypi.org/project/flora-tools/0.1.11/", "requires_dist": [ "intelhex", "jupyter", "matplotlib", "networkx", "numpy", "pandas", "pyserial", "pyvisa", "setuptools" ], "requires_python": ">=3.7", "summary": "Tool and library for interfacing with the PermaSense Flora nodes, enabling programming, configuring and measuring.", "version": "0.1.11" }, "last_serial": 4065369, "releases": { "0.1.11": [ { "comment_text": "", "digests": { "md5": "fac684007edd1cd849a8349cba115642", "sha256": "d9250f50348d544109032cc0cbf8750d5fc1ce88d59305a50cf171eb7dbe1c69" }, "downloads": -1, "filename": "flora_tools-0.1.11-py3-none-any.whl", "has_sig": false, "md5_digest": "fac684007edd1cd849a8349cba115642", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 101922, "upload_time": "2018-07-16T11:21:42", "url": "https://files.pythonhosted.org/packages/67/37/8845026b285975f430a244b30b895a691696211c95cf729334a468d61d16/flora_tools-0.1.11-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fac684007edd1cd849a8349cba115642", "sha256": "d9250f50348d544109032cc0cbf8750d5fc1ce88d59305a50cf171eb7dbe1c69" }, "downloads": -1, "filename": "flora_tools-0.1.11-py3-none-any.whl", "has_sig": false, "md5_digest": "fac684007edd1cd849a8349cba115642", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 101922, "upload_time": "2018-07-16T11:21:42", "url": "https://files.pythonhosted.org/packages/67/37/8845026b285975f430a244b30b895a691696211c95cf729334a468d61d16/flora_tools-0.1.11-py3-none-any.whl" } ] }