HS101 Bluetooth

You can build a battery powered, portable 1 Channel oscilloscope with this variant of the HS101 DIY Oscilloscope (based on STM32F103 Blue Pill). It has the lowest noise among the HS101 variants. It can be implemented with several input ranges and uses HScope Android app.

Warning: Phones should have at least Bluetooth V.4.0 to work at highest speed with HC-06 Bluetooth Module.

Technical Specifications

Channels1
Input Range(according the implemented input stage)
Sampling Rate / Bandwidth(according the implemented input stage)
Input Noise< 0.08% noise @ 900KSa/s (<0.03% @ 100KSa/s, test results with the Black Pill)
Samples1024 (each scan)
Input Impedance(according the implemented input stage, 10kOhm or 1MOhm)
Modules SupportedAutomotive Module @ 10 KSa/s
Working RangeWithout any boxing, the connection has been tested to works at full speed up to 4m distance.

Built

Full schematic of HS101 Bluetooth PRO is available on EasyEDA. Following is the connection for the HC-05 or HC-06 Bluetooth module.

Prepare the STM32F103 Blue Pill

1. Flash the STM32 with the specific Firmware for Bluetooth. Firmware is also available on STM32Utils flashing utility.

Configuration of HC-05/06

The HS101 BLT firmware in the STM32 has a procedure to configure the HC-05/06 module at the first time.

1. First time connect the HC-06 Bluetooth Module as in picture and connect the Setup Wire. Power on (or press on RESET button). The STM32 green LED (PC13) should blink during the setup phase (it may run for 1 min). If the setup was successful the green LED will flash 1 second for 3 times (see demo video 1 or demo video 2). You can follow the configuration procedure with a serial terminal on the debug port at pin B10 (115200 baud).
2. Remove the Setup Wire, assemble the analog part and power on. On phone search for the bluetooth devices and pair the device called HS10X with password 0000 (first time it may require some time for the phone to show the bluetooth name). Pairing is required just at the first time.

Tests

After the bluetooth has been paired with the phone, just open HScope app, be sure in the settings to have enabled the Bluetooth, and it should detect it automatically and start to show the signal.

Performances

– Refresh rate: 7-12 FPS (20-25 FPS with some Bluetooth Module, see under)
– No. samples each scan: 1024
– Real time continous acquisition: 10KSa/s
Note: Reat time continous acquisition is critical to get with Bluetooth. It has been found that some phone could have issue with Bluetooth fast communication, this create corruption of data. To verify if your device has this issue enable FPS/SPS visualization. It should show always 9-10FPS for rates equal or less than 10KSa/s.

Battery Performances

You can use the HS101 Bluetooth with a standard USB battery pack connected to the micro-USB or you can implement your own power with one 3.7V Lithium battery and a small battery charger with 5V UPS circuit like here.
In case you use a 18650 type battery you can connect it directly to the 5V pin since it maximum voltage is around 4.2V. Tests on this kind of battery (2000mA capacity) with HS101 PRO showed continous bluetooth transmission up to 16 hours without problems (see graph on the right). When the battery voltage is around 3.6V some noise start to show up in the acquired data but the bluetooth comunication does not get interrupted.

Noise Considerations

It has been found that no additional noise is generated by the bluetooth module. Bluetooth + Battery configuration provide less overall noise than the standard USB connection.

Deep Insight the Bluetooth Modules

Major issue of this project is in the HC-05 or HC-06 module sourcing. The market is full of different PCB versions with different firmware versions, working with different commands and with different specifications.

HC-06 Bluetooth Modules

Are those usually with 4 pins and no button. They may install the firmware with HC-06 protocol and the firmware with HC-05 protocol. In the second case you have a very fast module (it can send data up to 20-25fps in HScope).

HS101 Bluetooth Firmware in the STM32 allow the setup procedure to work with both HC-06 and HC-05 protocols.

HC-05 Bluetooth Module

Since Firmware v.10.1 you can configure the HC-05 module with the Wire Setup procedure but before powering on the STM32 and HC-05 you must keep pressed the button on the HC-05 (this will allow the module to enter in AT mode).

You can see the result on the Debug serial port, if the automatic configuration doesn’t work here is the manual procedure.

  • Enter AT mode by pressing the button on HC-05 and then power the module
  • Connect an USB-TTL cable to it to communicate, set the serial terminal to 38400 baud
  • Send these AT commands (these are firmware depending, consider as reference):
  • AT+NAME=HS-10X_ABCD (ABCD can be arbitrary)
  • AT+PSWD=”0000″
  • AT+UART=1382400,0,0
  • Connect the HC05 to the STM32

Possible issues

It has been reported that some module cannot communicate at 1.3Mbaud. Some modules won’t allow configuration of serial port to 1382400 baud, other modules just stop to communicate after this configuration.

For testing this, after setting up the Bluetooth serial port to work at 1.3Mbaud just shortcut RXD and TXD at the HC-06 Module and with this app check if the commands you send echoes back.

Phones with issue

Has been reported that with some phone Hscope cannot see the Bluetooth module. Here the list of phones with issues:

  • Xiaomi Mi9SE (Android 10)
  • Huawei Mate 10 PRO (Android 10)

Applications

– CAN Bus Dongle
– Relative Compression Test Dongle

Built by Users

Built by Denis (2019)

Built by Bruno (2020)

Built by Mikael (2020)