Release History
Release v2.4.0
Added features:
- Added option to update the firmware of the BleuIO Dongle using BLE SUOTA (Software Update Over the Air). The feature can be activated and deactivated. It is deactivated per default.
Added Commands
- AT+SUOTASTART for enabling the SOUTA service and starting the SOUTA Advertising.
- AT+SUOTASTOP for disabling the SUOTA Service and stopping the SUOTA Advertising.
Release v2.3.1
Added features:
- In AT+SCANFILTER added that the UUID filter will also check for "Service Data - 128-bit UUID" and "Service Data - 16-bit UUID" packets.
Bug fixes
- Fixed a bug where the dongle did not recognize SPS messages due to a different handle and displays the messages in a way that doesn't conform to previous versions.
- Fixed a bug where, using the AT+GETCONN, previously bonded/paired devices would not show up as bonded/paired when reconnected despite being bonded/paired.
Release v2.3.0
Added features:
BleuIO now has the ability to create a custom Service!
You can:
- Set a custom UUID for the Service
- Add up to 5 characteristics
- Set custom UUID for each of the characteristics
- Add read/write/write without response properties and Notify or Indicate for each characteristic
- Add a descriptor to each characteristic
- Change/update value of the characteristic and descriptor in ASCII or Bytes
- Notify/Indicate all peers that subscribe to any characteristic with either Notify or Indication properties when updating the characteristic value
Added Commands
- AT+CUSTOMSERVICE for setting up or querying the settings for the custom service.
- AT+CUSTOMSERVICESTART for starting service.
- AT+CUSTOMSERVICESTOP for stopping the service, but keeping the user settings.
- AT+CUSTOMSERVICERESET for stopping the service and clearing the user settings.
Release v2.2.2
Added features:
- Added new command to set or query the currently set maximum MTU size allowed used in MTU negotiation upon connecting to device.
- Added new command that applies a filter on the results from AT+FINDSCANDATA and AT+GAPSCAN.
Three filters are currently avalible: Local Name, Service UUID and Manufacturer Specific ID.
You can have one active, or two active in any combination or all three active at once.
Results will only be shown if the selected filter value is present in the advertising or scan response data.
You can for example set a filter to only show data packets from devices that has the Local Name BleuIO (either Complete or Shortened) by running AT+SCANFILTER=NAME=BleuIO.
Release v2.2.1
Added features:
- Increased MTU to 512
- Added an MTU event that shows the negotiated MTU when connected or when changed: (MTU CHANGED: xxx) (using verbose mode: {779:"0000","evt":{"action":"mtu changed","mtu":xxx}})
- Added new AT command: AT+GETMAC for getting bleuio mac address.
Bugfixes
- Fixed format errors of some messages when using verbose mode that doesn't comform to JSON.
Release v2.2.0
Added features:
BleuIO has been updated with the new VERBOSE mode that changes the format of all the output. This new mode changes the output to a more structured and unified format and includes command IDs for all command-related messages. The command-releated outputs are more easily separatable from the event outputs. The idea is to make the BleuIO output more consistent, easier to use in scripts and generate more useful error messages.
Visit Verbose Mode details to get more information about the formatting, as well as the error and event code lists. The AT-Command list has also been updated so that evey command can be toggled between showing the examples in normal mode or in advanced mode.
Release v2.1.4
Added features:
- BleuIO can now toggle on/off the written data echo after a gattcwrite command.
- It is now possible to set a timer for AT+FINDSCANDATA & AT+SCANTARGET scans just like with AT+GAPSCAN. Just end the command with "=<scan_time>". Like AT+FINDSCANDATA=123456=5.
Release v2.1.3
Added features:
- BleuIO can filter scan results based on RSSI value with the new AT command AT+FRSSI=<max_rssi>. Only results at or below set value will be displayed.
- BleuIO can now toggle show/hide RSSI values in AT+FINDSCANDATA and AT+SCANTARGET scans.
Bugfixes
- Removed bug where if trying to connect to a device already connected to the dongle would result in a disconnection of that device.
Improvments
- When connecting to a device sometimes the dongle fails to establish a connection right after a successful connection event and disconnect. Now it will automatically try to reconnect with the response: "Connection failed to be established. Reconnecting...". It will try up to 6 times before giving up and showing the disconnection event and the response: "FAILED TO ESTABLISH CONNECTION!".
Release v2.1.2
Added features:
- BleuIO can now change or view the current device name used in GAP Service by using the new command AT+DEVICENAME.
Release v2.1.1
Added features:
- BleuIO now support Security Level 4! Use the AT+SECLVL command to set security level to 4 and protect the connection with Secure Connection. Secure Connection uses an algorithm called Elliptic curve Diffie–Hellman (ECDH) for key generation, and a new pairing procedure for the key exchange.
- BleuIO can now change it's address type. By using the new command AT+GAPADDRTYPE the BleuIO can now switch between: Public Static Address, Private Static Address, Private Random Resolvable Address, Private Random Non-resolvable Address and Private Random Resolvable address using Bluetooth LE Privacy v1.2.
Release v2.1.0
Improvements:
- Improved performance on slower systems by increasing the timeout for how long the BleuIO Dongle will wait for an acknowledgment from the USB Host that data has been received.
Bugfix
- Fixed a bug where the BleuIO Dongle sometimes missed or only received partial data from Notifications.
Release v2.0.9
Added features:
- Added support to set the information in the Device Service Information (DIS). Information can only be set before starting advertising. If no custom information is set, the default BleuIO device information will be used. Once advertising is started the information set to be used will be locked in and cannot be changed during runtime.
Added Commands
- Added a new command AT+DIS, that is used to view current information used in the Device Information Service (DIS).
- Added a new command AT+SETDIS that is used to set current information used in the Device Information Service (DIS).
Release v2.0.8
Added features:
- Added support for indication type notifications.
- You now have more control over indications and notifications. Notifications and indications will only be shown if you have enabled them. Exception is when connecting to another BleuIO Dongle; it will still enable the required notifications used by the SPS service. You can of manually disable them if you want with the AT+CLEARNOTI command.
- Added a new command AT+SETINDI that will allow you to easily enable indications.
- Added a new command AT+CLEARINDI that will allow you to easily disable indications.
- Added a new command AT+NOTI that will show a list of enabled notifications and on which connection.
- Added a new command AT+INDI that will show a list of enabled indications and on which connection.
Improvements:
- You can now set decimal values in the connection interval parameters (min connection interval & max connection interval). The new lowest value on min connection interval is now 7.5 miliseconds.
Release v2.0.7
Bugfixes:
- Problem sending over 99 bytes using AT-commands "AT+GATTCWRITEB" and "AT+GATTCWRITEWRB" resulted in an unexpected behaviour.
Release v2.0.6
Added features:
- Added a new command AT+CLEARNOTI that will allow you disable notifications.
- Added connection parameters to the AT+GAPCONNECT command. The parameters are: Connection Interval Min, Connection Interval Max, Slave Latency and Supervision Time-out.
Release v2.0.5
Added features:
- Added a new command ATASPS that will allow you to choose if the SPS responses will be shown as ASCII or Hex. ASCII is shown by default at startup.
Bug fixes
- Fixed a bug where if you sent more than 244 characters at once before sending a carriage return (or pressed Enter) the dongle would restart.
Release v2.0.4
Added features:
- Added two new AT command for writing without response. AT+GATTCWRITEWR for ASCII and AT+GATTCWRITEWRB for hex.
- Added a new command AT+GETSERVICESONLY that will discover only all the services of the connected peripherals.
- Added a new command AT+GETSERVICEDETAILS that will discover all the characteristics and descriptors of a selected service. Must run AT+GETSERVICESONLY command first to get the service handle.
Release v2.0.3
Added features:
- Added new AT command ATDS that turns on (ATDS0) or turns off (ATDS1) auto-discovery of services from the device, the dongle is connected to or when is in DUAL mode, and a device connects to it.
Auto discovers services are on by default. - Added a new command AT+GAPDISCONNECTALL that disconnects all current connections.
Bug fixes
- Fixed a bug where the services that were being auto-discovered upon a connection event was from the connection set in target connection instead of the current connection.
- Fixed a bug where you had to put a small timeout between the actual command and the carriage return ('\r') to run a command when using scripts to communicate with the dongle. You should now be able to send the command and the return character at the same time.
- Updated the response from a successful AT+GAPDISCONNECT command. It should now reply with a 'handle_evt_gap_disconnected: conn_idx=conn_idx address=mac_address_of_disconnected_device.' and then the 'DISCONNECTED.' line for easily discerning which device has been disconnected.
Release v2.0.2
Added features:
- Added new AT command ATA that hides (ATA0) or shows (ATA1) ASCII values from Notification, Indication, or GATT Read responses. Ascii values are shown by default.
Bug fixes
- Fixed a bug where running a scan and stopping it repeatedly would, in rare cases, cause a hard restart of the dongle.
Release v2.0.1
Bug fixes
- Fixed a bug where you wouldn't get the data from a AT+GATTCREAD command.
Release v2.0.0
Improvments:
- You can now connect to up to 8 devices at the same time. And with the new dual mode role, you can scan, advertise, and connect to other devices without changing roles or disconnect. While in Peripheral mode, you will always be acting as a server and in Central mode as a client. But in dual mode you can switch between acting as a server or client depending on your needs.
- When connected to multiple devices, keep an eye on the conn_idx (connection index) when receiving or sending data to know which device you are sending to/receiving from.
Added features:
- Increased possible connections to max 8. (Previously max 1).
- Added a new dual role with the capabilities of both Peripheral and Central.
- Added 5 new AT commands; AT+DUAL for dual role, AT+CLIENT and AT+SERVER for switching behaviour in Dual role towards targeted connection, AT+GETCONN for getting a list of active connections, AT+TARGETCONN for choosing which connection you want to interact with.
- Added number of connections and maximum connections when connected in the ATI command info.
- Added a line with (connidx=**_conn_idx**) above the [Received]: line when using the SPS service as a server with multiple connections to be able to tell which device sent the data.
- Added a line with (connidx=**_conn_idx**) above the DISCONNECTED. line when connected to more than one other device to be able to tell which device disconnected.
Bug fixes
- Fixed a bug that caused notifications received to be cut off by other data, making parsing the correct data difficult.
Release v1.3.1
Bug fixes
- Fixed a bug that caused a hard reset if the dongle was printing something but was not connected anything that would receive it, like a terminal.
Release v1.3.0
Added features:
- Added AT Command AT+SETPASSKEY for setting or quering set passkey for passkey authentication.
- Added AT Command AT+SECLVL for setting or quering minimum security level used when connected to other devices.
- Added AT Command AT+NUMCOMPA for accepting a numeric comparison authentication request or enabling/disabling auto-accepting numeric comparisons. Enabled by default.
Improvments:
- You can now set the passkey for passkey authentication on your dongle yourself.
- You can now set the security minimum level your dongle will use. This can be done either when already connected to a device or before. If the device you are connecting to does not meet the security level requierment the dongle will disconnect from it.
- You can now choose if the dongle should auto accept the numeric comparison authentication request or if it should be accepted manually.
Bug fixes
- You no longer need to run the AT+CANCELCONNECT twice, just once.
- Security Level will be displayed when queried via the AT+SECLVL command rather than when changed. As the security level shown when changed could be misleading.
Release v1.2.0
Added features:
- Added AT Command AT+GAPIOCAP for setting or quering dongle input and output capabilities. Important for what type of security responses is availible.
- Added AT Command AT+GAPPAIR for manually starting a pairing or bonding procedure.
- Added AT Command AT+GAPUNPAIR for unpairing all or selected devices.
- Added AT Command AT+ENTERPASSKEY for handling passkey requests when pairing/bonding.
- You are now able to secure the connection between other devices and the dongle or between dongles via pairing/bonding. The dongle is now capable of initialising or handeling pairing and/or bonding requests. Depending on what Input/Output capability you've set on the dongle the dongle can now handle numeric comparision authentication or passkey authentication (with the new AT+ENTERPASSKEY command).
Improvments:
- It is now possible to access protected characeristics that needs a increeced Security Level. Security Level can be increeced by succefully pairing/bonding.
- Security Level will know be displayed when changed.
Release v1.1.0
Added features:
- Added AT Command AT+GETSERVICES for manually discovering services and characteristics when connected.
- Added AT Command AT+SETNOTI for manually enabling notifications.
- Added AT Command AT+CANCELCONNECT for canceling an ongoing connection attempt.
Improvments:
- Added some more helpful error messages when in Central Mode and an ongoing connection attempt is in progress. Now when you are trying to change to Peripheral Mode or start a scan while still waiting to connect to a peripheral the dongle will throw an error. Warning you that the connection attempt must be resolved first, either by itself or the user canceling the attempt.
Bug fixes
- Fixed a bug where the user could still attempt a scan, that always returned an empty scan result, or change to Peripheral Mode while an ongoing connection attempt was unresolved.
Release v1.0.9
Added features:
- Added AT Command ATE for turning on/off echo.
- Added AT Command AT+FINDSCANDATA for scanning andvertising/response data packages which includes a specific value.
Improvments:
- Removed unnecessary CR and LF in response messages and redundant OK responses.
Bug fixes
- Fixed a bug where null values where sometimes returned in the response message.
- Querying ADVDATA and ADVRESP now works as intended.
- Fixed a bug where SCANTARGET sometimes included normal scan results.
Release v1.0.8
Bug fixes
- Fixed a bug where the serial number of the USB Dongle got scrambled. It is now working as intended.
Release v1.0.7
Bug fixes
- Fixed a bug where two or more dongles couldn't be plugged into the same computer due to that the computer thought they were the same device because they had the same device information. Each dongle will now generate a unique serial number which will help the computer to differentiate between them.
Release v1.0.6
Added features:
- Removed AT Command AT+SPSRECEIVE as it was pretty unnecessary. Incoming data will now be shown by default.
- Added information on AT+GAPSTATUS and ATI about current role, connection status and if advertising.
- When using the SPS added the line [Recieved]: infront of recieved data to make it easier to find and use from scripts etc.
- Added a separate AT command: AT+GATTCWRITEB for when you want to write hexvalues.
- Added some more information about the size (in bytes) of the value read or written when you use AT+GATTCWRITE, AT+GATTCWRITEB or AT+GATTCREAD.
Minor Bug fixes
- Fixed a lot of minor bugs that caused unwanted restarts
- AT+GATTCREAD now also properly displayes the hexvalue not just the ASCII value.
Release v1.0.5
Added features:
Added possibility to scan up to three target devices with AT+SCANTARGET=
Added command AT+FINDSCANDATA=argument that displays Advertising and Response Data that contains argument, or if left empty shows all scan adv and response data
When doing a AT+TARGETSCAN= or AT+FINDSCANDATA=, the displayed data will show if it is Advertising Data or Response Data. Or if other it will display the corresponding Type code.
Release v1.0.4
Bugfixes:
- Fixed the inconsistency were the BleuIO were referred to as SSD005 Dongle in several places.
- Fixed a bug were you won't get the whole 31 bytes of Advertising and Response Data when using AT+SCANTARGET=
- Fixed a bug were no data would be shown when using SCANTARGET= after either Connecting/Disconnecting to a device or first doing a GAPSCAN
- Fixed a bug were GATTCREAD and GATTCWRITE would not translate the user input correctly, resulting in getting incorrect values