Skip to content

Releases: bloombloombloom/Bloom

Bloom v0.9.0

07 May 14:52
Compare
Choose a tag to compare

Feature release


This release includes significant changes to Bloom's internals. Although best efforts have gone into testing the release, users may face some issues as a result of the changes. In the event that you come across any issues, please report them as soon as possible.

Debug tool drivers:

For configuration values, see https://bloom.oscillate.io/docs/configuration#debug-tool-target-config

Custom GDB commands (via the monitor GDB command)

  • monitor help - Displays help text, describing the supported monitor commands.
  • monitor version - Displays Bloom's version number.
  • monitor version machine - Outputs Bloom's version number in JSON format.
  • monitor target-info machine - Outputs information on the connected target, in JSON format.
  • monitor reset - Resets the target and holds it in a stopped state. See #24 for more.

Other

  • --version-machine CLI command - Outputs Bloom's version number in JSON format.

Bug fixes

  • Insight was needlessly refreshing GPIO pin states twice, when the user would update a PORT register via the register inspection window.
  • The GDB debug server would fail and shutdown (causing the rest of Bloom to follow) when an exception was thrown during the processing of a TargetExecutionResumed event (sending a stop reply packet to the GDB client).
  • Bloom wasn't operating correctly when used with CLion 2022.1 (and possibly some other versions proceeding 2021.1) - CLion was configuring GDB to include frames before the entry point, when generating backtraces. This was resulting in GDB requesting memory reads at invalid memory addresses, which Bloom was handling incorrectly. See #37 for more.

Bloom v0.8.3

04 Apr 20:53
Compare
Choose a tag to compare

Bug fix release


Fixes:

  • Startup failure due to unnecessary target parameter validation (for Xplained Pro XMEGA board)
    Bloom was performing a sense check at startup, to ensure that the connected target's flash page size did not exceed any maximum memory access size enforced by the EdbgAvr8Interface. This was not necessary for XMEGA and UPDI targets, as we don't use paging for flash memory access on those targets. See #27 for more.
  • Awkward minimum window size being applied to the Insight window, upon the enabling of the memory inspection pane, for target package variants with a large pin count (~100 pins)
    When users would select a target package variant with ~100 pins, and then enable the memory inspection pane, Bloom was applying a minimum size to the Insight window, which exceeded the available space on the user's screen. This made the UI very awkward and frustrating. See #29 for more.

Bloom v0.8.2

21 Mar 13:35
Compare
Choose a tag to compare

Bug fix release


Fixes:

  • For debugWire debug sessions on some Xplained Mini evaluation boards, when cycling the target power (after updating the DWEN fuse bit), Bloom was not giving the target enough time to power-up, before attempting to reconnect via debugWire. This was resulting in connection failures. To address this, Bloom now waits ~250 milliseconds after target power-up, before attempting to reconnect via debugWire. Furthermore, this delay is now configurable via the new targetPowerCycleDelay target config param. The millisecond value of that param determines how long Bloom will wait for the target to power-down and back up.

Bloom v0.8.1

17 Mar 00:56
Compare
Choose a tag to compare

Bug fix release


Fixes:

  • In some circumstances, Bloom was leaving the debug tool in a bad state. This would happen when Bloom would fail to properly handle loss of debug tool control due to another program stealing it. After loss of debug tool control and a shutdown trigger, Bloom would incorrectly make an attempt to disconnect from the debug tool (to which it was no longer connected), and this would result in the debug tool being left in a bad state.

Bloom v0.8.0

16 Mar 18:24
Compare
Choose a tag to compare

Small feature release


Target power management

Some debug tools possess the ability to control the connected target's power input. This is typically the case for evaluation boards, where the connected target is embedded onto the same board as the debugger, and they both share the same power supply.

With these debug tools, Bloom can now manage the power to the connected target. With this functionality, Bloom will now automatically cycle the target power after updating the DWEN fuse bit, for debugWire sessions. This new function is enabled by default, but can be disabled via the cycleTargetPowerPostDwenUpdate target config parameter.

Bloom v0.7.0

15 Mar 13:38
Compare
Choose a tag to compare

Feature release


Debug tool drivers:

Insight:

  • Updated Register Inspection window appearance (to be consistent with the Manage Memory Regions window).

Other:

  • New shutdownPostDebugSession config parameter to instruct Bloom to automatically shutdown at the end of a debug session.

Bloom v0.6.0

07 Feb 00:25
Compare
Choose a tag to compare

Small feature release.

Insight:

  • Introduced project-user settings which are loaded and saved automatically. This means:
    • Memory regions are persisted between execution cycles. Users no longer have to recreate these every time they close Bloom.
    • Hex viewer settings are persisted.
    • Main window size is persisted.
    • Panel and pane states are persisted.
  • Added signed integer data type for value annotations
  • Made endianness of focused memory regions configurable via the 'Manage Memory Regions' window.
  • Improved register searching

Bug fixes:

  • Masked memory reads of SRAM were failing with the Atmel-ICE and some UPDI targets. Device-side masking has now been disabled on all EDBG devices.

Bloom v0.5.0

28 Dec 18:19
Compare
Choose a tag to compare

New debug tool drivers:

  • Xplained Pro Evaluation Board
  • Xplained Mini Evaluation Board
  • Xplained Nano Evaluation Board
  • Curiosity Nano Evaluation Board
  • MPLAB PICkit 4

For configuration values, see https://bloom.oscillate.io/docs/configuration#debug-tool-target-config

Insight:

  • Internal RAM and EEPROM inspection (excluding manipulation)
  • Stack memory highlighting
  • Focused memory regions (with value annotations)
  • Excluded memory regions
  • Go to address
  • ASCII view
  • Improved target package widgets sizes

Target support:

Bug fixes:

  • For certain targets, Bloom was sending an incorrect response to GDB's read register command. This was the result of some targets (just 9 of the 248 supported) having a stack pointer register size of just 1 byte. GDB was expecting this register to be 2 bytes in size, but Bloom was sending it as is. GDB would terminate the debug session in response to the incorrect packet sent by Bloom. This was reported by @ccrause.

Other:

Bloom v0.4.2

31 Oct 10:57
Compare
Choose a tag to compare

Bug fix release:

  • Unmet dependency for libxcb-xinput resulting in installation failures on Ubuntu 16.04.07 LTS. The library has been pre-built and included in Bloom's distributed libs directory.
  • Bloom failed to configure AVR8 parameters on some debug tools, when configured with the UPDI physical interface. This was caused by the failure to configure the PDI clock speed on the debug tool, before attempting to set other parameters. Users were being presented with a "JTAGM failed to initialise" error during TC startup. See the related issue, reported by @timwalls, at #8.
  • Added the DIP target package variant for ATmega4809 target (variant name: ATmega4809-PF)

Bloom v0.4.1

04 Oct 22:49
Compare
Choose a tag to compare

Bug fix release:

  • Fixed issue with reading target registers, when using the MPLAB Snap debug tool - the Snap doesn't handle masked read memory EDBG commands properly. We now avoid use of the command, when using the MPLAB Snap, by implementing the masking at the driver side and then issuing standard read memory commands.