Skip to content

Commit 8a95c8d

Browse files
authored
Update README.md
1 parent 56686fd commit 8a95c8d

File tree

1 file changed

+46
-55
lines changed

1 file changed

+46
-55
lines changed

README.md

Lines changed: 46 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
SparkFun BlueSMiRF v2 Firmware
1+
SparkFun BlueSMiRF v2
22
===========================================================
33

44
<table class="table table-hover table-striped table-bordered">
@@ -12,21 +12,54 @@ SparkFun BlueSMiRF v2 Firmware
1212
</tr>
1313
</table>
1414

15-
The [SparkFun BlueSMiRF v2](https://www.sparkfun.com/products/24113) and [SparkFun BlueSMiRF v2 - Headers](https://www.sparkfun.com/products/23287) are point to point serial cable replacements using Bluetooth. Simply throw serial characters at a BlueSMiRF and the data will arrive at the other radio, with guaranteed packet delivery. Baud rates supported up to 921600bps!
15+
The [SparkFun BlueSMiRF v2](https://www.sparkfun.com/products/24113) and [SparkFun BlueSMiRF v2 - Headers](https://www.sparkfun.com/products/23287) are wireless Bluetooth® serial links. These boards work as a wireless serial UART pipe and are a great wireless replacement for serial cables. Simply pair, connect, and transmit serial data between your TX/RX lines! Any serial stream from 2400 to 921600 baud can be passed seamlessly between two devices.
1616

17-
This repo houses the [BlueSMiRF Product Manual](https://docs.sparkfun.com/SparkFun_BlueSMiRF-v2) and the firmware that runs on the SparkFun BlueSMiRF ESP32 product line including:
17+
Duplex transmissions up to 921600bps are supported. What does this mean? You can throw a book at each BlueSMiRF, which will correctly buffer, transmit, and deliver the data streams, byte perfect, to both radios.
18+
19+
BlueSMiRF v2 has a multitude of exciting improvements over the original. The BlueSMiRF pinout is the same as previous Bluetooth Mates and USB-to-serial converters (i.e., FTDI, CH340, etc.), making it extremely easy to hook up to many common Arduino development boards and GNSS breakout boards. The board can be connected directly with an Arduino Pro, Pro Mini, or any board with a standard 6-pin serial connector. We broke out the pins to the 1x6 header for this version of the board. You'll need to either solder a 1x6 female header or striped wires to the PTHs before being able to connect to another device. The SparkFun BlueSMiRF v2 is perfect for short-range applications up to 100ft (33m) indoors that require easy to setup, point-to-point communication.
20+
21+
A BlueSMiRF can be connected to a phone or computer to view data or remote control easily. Two BlueSMiRFs can also be easily connected using the onboard PAIR button. If needed, this button can be disabled by cutting the jumper on the back of the board.
22+
23+
We've designed the BlueSMiRF to be remotely configured from a phone using a serial terminal app. Changing the settings, such as the baud rate, flow control, and LED mode, is easily done using the simple AT command set. Additionally, Over The Air (OTA) updates using WiFi allow easy in-field firmware updates as new features are released.
24+
25+
The BlueSMiRF v2 has an on-board voltage regulator to power between 3.3V and 5V. Logic level shifting circuitry is included on all pins to be 3.3V to 5V tolerant. Note that you will need an RS232 to TTL converter for higher voltages. A jumper on the top of the board is also included to bypass the voltage regulator. Two built-in LEDs indicate when the BlueSMiRF is connected and when there is serial UART traffic.
26+
27+
**Note:** Bluetooth® classic (Serial Port Profile or SPP) is primarily supported. This Bluetooth protocol is supported on Android phones, most desktops, and laptops. BlueSMiRF also supports the BLE protocol, available on all Apple phones.
28+
29+
This repo houses the [BlueSMiRF v2 Hookup Guide](https://docs.sparkfun.com/SparkFun_BlueSMiRF-v2) and the firmware that runs on the SparkFun BlueSMiRF V2 product line including:
1830

1931
* [SparkFun BlueSMiRF v2](https://www.sparkfun.com/products/24113)
2032
* [SparkFun BlueSMiRF v2 - Headers](https://www.sparkfun.com/products/23287)
2133

2234
For compiled binaries of the firmware, please see [SparkFun BlueSMiRF ESP32 Firmware Binaries](https://github.com/sparkfun/SparkFun_BlueSMiRF-v2_Binaries).
2335

36+
37+
2438
Repository Contents
2539
-------------------
2640

41+
* **.github/workflows** - YAML files used for GitHub Actions and GitHub Pages/mkdocs
2742
* **/Firmware** - Source code for SparkFun BlueSMiRF firmware as well as various feature unit tests
28-
* **/Documents** - Datasheets for various components.
29-
* **/docs** - Markdown pages for the [BlueSMiRF Product Manual](https://docs.sparkfun.com/SparkFun_BlueSMiRF-v2/)
43+
* **/Hardware** - Eagle design files (.brd, .sch)
44+
* **/Production** - Production panel files (.brd)
45+
* **/docs** - Online documentation files
46+
* **/assets** - Folder containing all the file assets used for product documentation
47+
* **/board_files** - Files for the product design
48+
* **/component_documentation** - Datasheets and manuals for hardware components
49+
* **/img** - Images for the product documentation
50+
* **/github** - Files stating how to contribute and filing issues for product
51+
* **/javascript** - Folder containing custom javascript used for product documentation
52+
* **/stylesheet** - Folder containing CSS files
53+
* **/overrides** - Customization files for GitHub Pages product documentation
54+
55+
56+
57+
Documentation
58+
--------------
59+
60+
* **[Firmware Binaries](https://github.com/sparkfun/SparkFun_BlueSMiRF-v2_Binaries)** - Compiled binaries of the firmware.
61+
* **[Hookup Guide](http://docs.sparkfun.com/SparkFun_BlueSMiRF-v2/)** - Basic hookup guide for the BlueSMiRF v2 PTH and header versions.
62+
3063

3164
Repository Branch Structure
3265
---------------------------
@@ -39,6 +72,8 @@ In contrast, `release_candidate` is where new code is added as it is developed.
3972

4073
The documentation source code is in docs/ on `main`. It is built automatically on push and stored in the branch `gh-pages`, from which it is served at the above URL. Documentation changes are pushed directly to main.
4174

75+
76+
4277
Release Process
4378
---------------
4479

@@ -48,64 +83,20 @@ A pre-release is often created using the latest stable release candidate. These
4883

4984
The command-line interface is also available. You’ll need to download the [RTK Firmware Binaries](https://github.com/sparkfun/SparkFun_RTK_Firmware_Binaries) repo. This repo contains the binaries but also various supporting tools including esptool.exe and the three binaries required along with the firmware (bootloader, partitions, and app0).
5085

51-
## Updating Firmware From CLI
52-
53-
Because it's much easier to use, we recommend the OTA firmware update process. If that fails for some reason, the following CLI method can be used.
5486

55-
### Entering Bootload Mode
5687

57-
Hold the **Pair** button while powering the BlueSMiRF. This will cause the ESP32 to enter bootload mode. Once the BlueSMiRF is in bootloader mode, the **Status** LED will be dimly lit, the **Connect** LED will be off.
58-
59-
We recommend using a breadboard or jumper wires to connect the BlueSMiRF to a USB-to-Serial connection. The TX and RX connections must be crossed over:
60-
61-
* VCC of USB-to-Serial -> VCC of BlueSMiRF
62-
* TX of USB-to-Serial -> **RX** of BlueSMiRF
63-
* RX of USB-to-Serial -> **TX** of BlueSMiRF
64-
* GND of USB-to-Serial -> GND of BlueSMiRF
65-
66-
### Windows
67-
68-
Identify the COM port the USB-to-Serial device enumerated at. The easiest way to do this is to open the Device Manager:
69-
70-
![CH340 is on COM6 as shown in Device Manager](img/Serial/RTK_Surveyor_-_Firmware_Update_COM_Port.jpg)
71-
72-
*CH340 is on COM6 as shown in Device Manager*
73-
74-
If the COM port is not showing be sure the unit is turned **On**. If an unknown device is appearing, you’ll need to [install drivers for the CH340](https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/all). Once you know the COM port, open a command prompt (Windows button + r then type ‘cmd’).
75-
76-
![batch_program.bat running esptool](img/Terminal/SparkFun%20RTK%20Firmware%20Update%20CLI.png)
77-
78-
*batch_program.bat running esptool*
79-
80-
Once the correct COM is identified, run 'batch_program.bat' along with the binary file name and COM port. For example *batch_program.bat BlueSMiRF_Firmware_v1_0.bin COM6*. COM6 should be replaced by the COM port you identified earlier.
81-
82-
The batch file runs the following commands:
83-
84-
```
85-
esptool.exe --chip esp32 --port COM3 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 8MB 0x1000 bins/bootloader.bin 0x8000 bins/partitions.bin 0xe000 bins/boot_app0.bin 0x10000 BlueSMiRF_Firmware_v1_0.bin
86-
```
87-
88-
Where *COM3* is replaced with the COM port that the RTK product enumerated at and *BlueSMiRF_Firmware_vx_x.bin* is the firmware you would like to load.
89-
90-
**Note:** Some users have reported the 921600bps baud rate does not work. Decrease this to 115200 as needed.
91-
92-
Upon completion, the BlueSMiRF must be power cycled to exit bootload mode. Once power cycled, the BlueSMiRF will start running the new firmware.
93-
94-
### macOS / Linux
88+
## Updating Firmware From CLI
9589

96-
Get [esptool.py](https://github.com/espressif/esptool). Connect a USB A to C cable from your computer to the USB-to-Serial. Now identify the COM port the RTK enumerated at.
90+
Because it's much easier to use, we recommend the OTA firmware update process. If that fails for some reason, you can use the CLI method. For more information, check out the tutorial under the section [firmware Update](https://docs.sparkfun.com/SparkFun_BlueSMiRF-v2/firmware_update/).
9791

98-
If an unknown device is appearing, you’ll need to [install drivers for the CH340](https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/all). Once you know the COM port, run the following command:
9992

100-
```
101-
py esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 8MB 0x1000 bins/bootloader.bin 0x8000 bins/partitions.bin 0xe000 bins/boot_app0.bin 0x10000 BlueSMiRF_Firmware_vx_x.bin
102-
```
10393

104-
Where */dev/ttyUSB0* is replaced with the port that the USB-to-Serial board enumerated at and *BlueSMiRF_Firmware_vx_x.bin* is the firmware you would like to load.
94+
Product Versions
95+
----------------
96+
* [WRL-24113](https://www.sparkfun.com/products/24113) - Initial release, PTH version
97+
* [WRL-23287](https://www.sparkfun.com/products/23287) - Initial release, Header version
10598

106-
**Note:** Some users have reported the 921600bps baud rate does not work. Decrease this to 115200 as needed.
10799

108-
Upon completion, the BlueSMiRF must be power cycled to exit bootload mode. Once power cycled, the BlueSMiRF will start running the new firmware.
109100

110101
License Information
111102
-------------------

0 commit comments

Comments
 (0)