Releases: X2Cscope/pyx2cscope
v0.6.2
What's Changed
Bugfix:
The default sample time on mchplnet was set to 1 instead of 0.
This affects the scope view sampling resolution and which sample will be stored on the internal buffer.
- 0 means every single sample
- 1 every 2nd sample
- 2 every 3rd sample
The GUIs only allowed to set values starting from 1.
This was also fixed. In case where values < 0 are inserted, the value rounds to 0.
Full Changelog: v0.6.1...v0.6.2
v0.6.1
What's Changed
-
Bug fix 0.6.1 (#108)
-
build include gui.resources folder
-
fixed dashboard load/save url
-
fixed import/load/save dashboard
-
fixed script editing on QT
-
v0.6.1
-
fixed qr codes urls and included tests for it
-
added help card for web app
-
added tests for broken urls on links at Web App
-
added instructions for QR Codes, IP Addresses and connectivity
-
enhanced gitignore
Co-authored-by: X2Cscope 73351552+X2Cscope@users.noreply.github.com
Co-authored-by: Edras Pacola edras.pacola@microchip.com
Full Changelog: v0.6.0...v0.6.1
v0.6.0
What's Changed
-
generic_gui moved to a structured Qt app, now called main_window.py under px2cscope.gui.qt
-
Web GUI enhanced with dashboard
-
both GUIs have a scripting tool
-
both GUIs are Thread Safe
-
fixed trigger level o scope functionality
-
x2cscope can now read SFRs
-
x2cscope implemented ethernet connectivity
-
x2cscope prepared for CAN connectivity
-
documentation enhanced
-
pyX2Cscope execute 119 tests across install, dependencies, Qt and WEB GUIs
Full Changelog: v0.5.1...v0.6.0
v0.5.1
What's Changed
Removing eventlet from webinterface
this package is deprecated and should not be used for new projects. socketio use only threading from python
Fix installer dependencies
pyinstaller needs to add the hidden dependencies of web interface
Automate artifacts generation for deployment
this script:
- builds the exe
- copy the .bat file to start web interface
- zip the contents
- download the wheel file from pypi
- place everything under dist folder to upload to release page on github
enhance development documentation
bug fix on multidimensional array
Only the first indeces of multidimensional matrices were being addressed.
Added matrix example on example folder
- version 0.5.1
Co-authored-by: Edras Pacola edras.pacola@microchip.com
Full Changelog: v0.5.0...v0.5.1
v0.5.0
Release Notes: v0.5.0
🚀 Highlights
- Thread Safe
- PyX2Cscope is thread safe
-
Websockets Integration
- Added websocket support for
webx2c,watch-view, andscope-view. (#101)
- Added websocket support for
-
Bootstrap 5 Migration
- Upgraded web UI components to Bootstrap 5 for improved styling and responsiveness.
-
Enhanced Variable Handling
- Added variable legends to charts: click legend items to show/hide chart lines.
- Improved variable management in scope and watch views.
- Bug fix:
trigger_levelnow clamps to variable range (min/max).
🛠️ Fixes & Improvements
- Fixed HTML file naming pattern for
webx2cscope. - Updated
mchplnetversion tomain@v0.2.2and later tov0.3.0.- The latest version has complete documentation, test automation and some bugs are fixed.
- Visual fixes for mobile view and table overlays.
- Improved x-axis labels in webview.
- Enhanced connection/disconnection views.
- Default log level for
x2cscopeset toerror. - Enhanced
serial_stub.pyforget_ramandput_ram. - Added thread safety tests.
- Improved interface and examples for
mchplnet. - Enhanced existing tests and documentation (
github actions documentation.yml). - Defaulted to
snake_caseinmchplnet. - Improved docstrings and import formatting.
- Enhanced enum variable support:
- Added
get_enum_list,set_enum_value,get_enum_valuemethods.
- Added
- Imported
eventletfor web interface compatibility.
🧹 Removals & Deprecations
- Removed deprecated
elf16_parser.py.- The current ELF parser now supports both 16 and 32-bit architectures via
pyelftools.
- The current ELF parser now supports both 16 and 32-bit architectures via
- Removed debug prints and unused code.
- Included linter ignore for generic GUI (refactoring planned).
📝 Miscellaneous
- Fixed documentation misspellings and improved example readability.
- Added version check and auto-update for
__init__.pyon pre-commit. - Fixed
mchplnetdependency issues.
👥 Contributors
- Edras Pacola (edras.pacola@gmail.com, edras.pacola@microchip.com)
v0.4.4
What's Changed
-
VariableInfo is a member of Variable class
- variable.name is not accessible anymore, should be accessed through variable.info.name
- fixed generic_gui
- fixed web gui
- fixed examples
-
fixed enum byte size
- an enumeration has variable byte size, and depends on the mcu architecture. The byte size is read during parsing and available
at variable.info.byte_size
- an enumeration has variable byte size, and depends on the mcu architecture. The byte size is read during parsing and available
-
fixed sample time window calculation on scope_view
- renamed method from scope_sample_time to get_scope_sample_time
- calculation is based on retrieved values and not on magic numbers
- adapted generic_gui.py to correct function call on get_sample_time
-
fix web initial message error
-
formatting code
-
enhancing documentation
-
fixing documentation and image links
-
bump version 0.4.4
-
fix README.md with broken image link
Co-authored-by: Edras Pacola edras.pacola@microchip.com
v0.4.3
What's Changed
-
Milestone v0.4.3 - unions, bit size variables, and enhancements (#96)
-
union type fully implemented
-
reading bit-size variables under unions / structs regardless variable's byte size
-
writing bit-size variables under unions / structs regardless variable's byte size
-
removed arguments from class Variable
- Class Variable needs VariableInfo parameter and LNet to get instantiated.
- Instead of adding more parameters to the constructor, we store the VariableInfo as a member.
-
moved set_value to Variable class, added _set_value as abstract function
- moved call to checking value_range to parent class
- enables generic processing before moving to specific processing
-
increasing number of variables on generic_gui
-
changed default generic_gui logger level from warning to error
- this avoids minor level messages showing up on terminal
-
fixed behavior when variable name is not found
If the variable does not exist in elf file, we log message "Variable '{name} not found!" and return None
If the variable is found, but an error occurred when parsing, we log the error message and return None -
Changing prints over the code to logging.debug
-
Changed contact information
-
ruff check
-
bump version
Co-authored-by: Edras Pacola edras.pacola@microchip.com
v0.4.2
What's Changed
-
Milestone 0.4.2 - elf parser supports structure, enums and unions
-
Fix struct enum (#92)
-
merged process_end_die
-
enum working with structs and arrays
-
general variable instantiation is now optimized.
-
Before creating VarInfo objects, a valid address is checked.
-
including tests for enum tests for 16 and 32 bit cores
-
optimize offset calculation on struct members
-
include test to check struct member address
-
union is partially available:
if a union is multiple of bytes it is working.
if a union contain elements that have size of some bits, the variable is detected and included, but read and write on these variables are unpredictable. Do not use.
Full Changelog: v0.4.1...v0.4.2
v0.4.1
- Milestone 0.4 - minor update to 0.4.1
What's Changed
-
fix scope trigger and enumeration type (#87)
-
reinserting get_variable_raw
-
fix SFR example to import the right library
-
change get_device_id example
-
Fixed enum variable types (static only) inside structures still not working
-
Enhancing enum implementation with architecture considerations (data width)
-
fixed import error on LNet the code was importing the module and should import the class.
Full Changelog: v0.4.0...v0.4.1
v0.4.0
What's Changed
- Unified parser for 16bit, 32bit and dsPIC devices. (No xc16-elf.exe required anymore)
- Import and Export list of variables (yml, pickle and elf)
- Executable for Windows
- Enhanced automated tests
- Threadsafe on Web GUI
- Minor bug fixes on GUI and Web GUI
- Including more examples
- Documentation improvements
Known bugs:
- Triggering with positive trigger delays, the data is not syncronised and displayed correctly
Co-authored-by: Edras Pacola edras.pacola@microchip.com
Co-authored-by: Yash Agarwal yash.agarwal@microchip.com
Co-authored-by: Mark Wendler mark.wendler@microchip.com
Full Changelog: v0.3.3...v0.4.0