Skip to content

Releases: intrepidcs/python_ics

v905.10

19 Jul 20:10
Compare
Choose a tag to compare
v905.10 Pre-release
Pre-release

-Updated icsnVC40.h to v905.10
-Fixed a bunch of issues with setting structures. Script was essentially completely re-written with unit tests now. s_fire3_settings network enables was specifically not working and probably a lot more.

v904.18

25 May 15:44
Compare
Choose a tag to compare

-Updated icsnVC40.h to v904.18. v904.18 support added setting support for EtherBADGE (s_ether_badge_settings)

Setting structures changes (Addition of ethernet_settings2 structure):

  • s_fire3_settings
  • s_flex_vnetz_settings
  • sobd2_pro_settings
  • srad_jupiter_settings
  • srad_star2_settings
  • svcan4_ind_settings
  • svcan4_settings

Added NEODEVICE defines for the following devices:

  • NEODEVICE_ETHER_BADGE
  • NEODEVICE_RADSTAR2_A2B
  • NEODEVICE_RADEPSILON
  • NEODEVICE_OBD2_SIM_DOIP
  • NEODEVICE_OBD2_DEV

v903.17

05 Apr 20:08
Compare
Choose a tag to compare

Whats New?
v903 is a new release that implements features that break existing API in some areas.

ISO 15765-2
old naming conventions have been updated to reflect closer to the actual codebase.

# Old:
tx_msg = ics.CmISO157652TxMessage()
rx_msg = ics.CmISO157652RxMessage()

# New:
tx_msg = ics.st_cm_iso157652_tx_message.st_cm_iso157652_tx_message()
rx_msg = ics.st_cm_iso157652_rx_message.st_cm_iso157652_rx_message()

ics.st_cm_iso157652_tx_message.st_cm_iso157652_tx_message() data structure is now a ctypes.c_ubytes array instead of a python list.

# Old:
msg.data = [x for x in range(number_of_bytes)]

# New:
my_data = [x for x in range(number_of_bytes)]
msg.data = (ctypes.c_ubyte*len(msg.data))(*my_data)

>>> msg.data
<ics.structures.st_cm_iso157652_tx_message.c_ubyte_Array_4096 object at 0x0000023E534BE940>

Settings
v903 and up have converted over to a new auto generation of icsnVC40.h. This enables faster support for newer Intrepid devices and less error prone. With this switch we have moved to using ics.s_device_settings.

# Old behavior:
device = ics.open_device()
settings = ics.get_device_settings(device)
# settings is a Vcan3Settings type
settings.can1.Baudrate = 1
ics.set_device_settings(device, settings)

# New behavior
device = ics.open_device()
settings = ics.get_device_settings(device)
# settings is a s_device_settings type
settings.vcan3.can1.Baudrate = 1
ics.set_device_settings(device, settings)

Setting support for the following devices:

red: s_red_settings
fire: s_fire_settings
firevnet: s_fire_vnet_settings
cyan: s_cyan_settings (FIRE2)
vcan3: svcan3_settings
vcan4: svcan4_settings
ecu: secu_settings
ievb: sievb_settings
pendant: s_pendant_settings
radgalaxy: srad_galaxy_settings
radstar2: srad_star2_settings
neoobd2_sim: sobd2_sim_settings
cmprobe: s_cm_probe_settings
obd2pro: sobd2_pro_settings
vcan412: svcan412_settings
vcan4_12: svcan412_settings
neoecu_avb: secu_avb_settings
radsupermoon: srad_super_moon_settings
radmoon2: srad_moon2_settings
pluto: srad_pluto_settings
plutoswitch: s_pluto_switch_settings_s
radgigalog: srad_gigalog_settings
canhub: scan_hub_settings
neoecu12: s_neo_ecu12_settings
vcanrf: svcanrf_settings
eevb: seevb_settings
flexvnetz: s_flex_vnetz_settings
vividcan: s_vivid_can_settings
vcan4_ind: svcan4_ind_settings
radgigastar: srad_gigastar_settings
jupiter: srad_jupiter_settings
fire3: s_fire3_settings
radmoon_duo: s_rad_moon_duo_settings

PyInstaller
Due to the added complexity underneath when building PyInstaller hidden_imports.py should be used now in your spec script.

Other Fixes and Changes
Expanded documentation.
Adding support for Python 3.8 and Python 3.9.
Updated iso15765 example to utilize new flags.
Updated documentation to mention libicsneolegacy.so
Fixed an issue when get_messages() timeout was 0 no messages were returned.
Updated documentation and added use_server option for opening devices.
Added read_jupiter_firmware and write_jupiter_firmware methods.
Fixed a memory leak in find_devices()
Add methods for Gigalog/Gigastar disk formatting
Fixed a documentation issue per issue #90
Fixed month being offset by 1 in ics.get_rtc().
Fixed transmit_messages() to handle extended network ids.
Fixed code related to meth_get_backup_power_ready() internally.

v4.6

20 Oct 17:45
Compare
Choose a tag to compare

Fixes:

-Fixes #82. Documentation support added.
-Fixes #84. Inconsistent behavior of get_messages on Linux and Windows.
-Fixes #88. Using correct value type in coremini read/write app signal.

v4.5

08 Sep 21:46
Compare
Choose a tag to compare

-Fixed an issue (related: #69) when get_messages() timeout was 0 no messages were returned.

v4.4

13 Feb 22:48
Compare
Choose a tag to compare

Fixed crash for issue #69. When ics.get_messages() timeout parameter was set to zero a variable wasn't being initialized and could lead to a crash when no messages were found.

v4.3

18 Sep 22:46
Compare
Choose a tag to compare

-Release the GIL for the whole duration of timeout. Fixes Issue #60

v3.2post2

18 Sep 22:45
Compare
Choose a tag to compare

-Fixed Issue #32.
-Fixed Issue #33.
-Misc Documentation improvements.
-Release the GIL for the whole duration of timeout. Fixes Issue #60

v4.2

19 Aug 19:41
Compare
Choose a tag to compare

Implemented ics.enable_bus_voltage_monitor() and ics.get_bus_voltage()

v4.1

01 Jul 19:08
Compare
Choose a tag to compare

-Fixed crash with get_library_path(). See Issue #48 for more details.
-Fixed GIL issue in message_reflash_callback. See Issue #52 for more details.
-Python 2.7 tag removed from pip. See Issue #44 for more details.