Skip to content

Makerfabs/Makerfabs-ESP32-UWB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Makerfabs ESP32 UWB & Display

/*
Version:		V4.3
Author:			Vincent
Create Date:	2021/11/6
Note:
	2021/12/9 	V2.0:Add a Indoor Positioning demo.
	2022/6/29 	V2.1:Add DW3000 library.
	2022/8/1  	V3.0:Provides a library available for high-power versions. Move DW3000 to other 		  					     repositories.
	2022/9/6	V3.1:Added changes to the high-power version.
	2022/10/26 	V4.0:Add new version with SSD1306
	2022/11/15	V4.1:Change library name to mf_DW1000.zip
	2022/12/29	V4.2: Change wiki link
	2023/1/3	V4.3: Change directory name.
*/

[toc]

Makerfabs

Makerfabs home page

Makerfabs Wiki

Makerfabs ESP32 UWB Serials

Intruduce

ESP32 UWB : esp32-uwb-ultra-wideband

ESP32 UWB Pro : esp32-uwb-high-power

ESP32 UWB Pro with Display : ESP32 UWB Pro with Display

Wiki Link : ESP32 UWB Pro with Display

Ultra-wideband (UWB) is a short-range, wireless communication protocol that operates through radio waves, enables secure reliable ranging and precision sensing, creating a new dimension of spatial context for wireless devices.

This new ESP32 UWB pro with display is the updated version of ESP32 UWB Pro, with the following new spec:

  • On-board OLED, 1.3” 128*64, so the distance results can be directly displayed
  • Lipo battery charger& connector, so this module can work separately with batteries
  • Update UWB position, so the module can be directly installed into a case
UWB Basic UWB Pro UWB Pro with Display UWB DW3000
CPU ESP32-WROOM/WROVER ESP32-WROVER ESP32-WROVER ESP32-WROOM/WROVER
Core UWB DW1000 DW1000 DW1000 DW3000
Screen N N Y N
Measuring distance(m) 45 200 200 20
Battery Socket N N Y N
UWB Channel 2/5 2/5 2/5 5/9
Apple Interoperable N N N Y
Suitable for Normal Testing Long distance needed Long distance needed Product development

UWB Basic

front

UWB Pro

front

UWB Pro with Display

front

Example

Compiler Options

If you have any questions,such as how to install the development board, how to download the code, how to install the library. Please refer to :Makerfabs_FAQ

  • Install board : ESP32 .
  • Rename mf_DW1000.zip to DW1000.zip and install it.
  • Install library : Adafruit_SSD1306
  • Upload code, select board "ESP32 DEV"

**This library was modified from the DW1000 library to work with the Makerfabs hardware. **

Please download the latest version from our Github.

Example List

uwb_tag

For ESP32 UWB and ESP32 UWB Pro

Distance to the receiving end of the test. You need an anchor point to receive data.

uwb_tag_display

For ESP32 UWB Pro with display

Distance to the receiving end of the test. You need an anchor point to receive data.

anchor

For ESP32 UWB and ESP32 UWB Pro

Distance test anchor point.

anchor_display

For ESP32 UWB Pro with display

Distance test anchor point.

Indoor positioning

For ESP32 UWB and ESP32 UWB Pro

Three UWB modules were used for indoor plane positioning. Data is transmitted through UDP protocol and graphically displayed in Python.

The law of cosines is used to calculate tag coordinates.

def tag_pos(a, b, c):
    # p = (a + b + c) / 2.0
    # s = cmath.sqrt(p * (p - a) * (p - b) * (p - c))
    # y = 2.0 * s / c
    # x = cmath.sqrt(b * b - y * y)
    cos_a = (b * b + c*c - a * a) / (2 * b * c)
    x = b * cos_a
    y = b * cmath.sqrt(1 - cos_a * cos_a)

    return round(x.real, 1), round(y.real, 1)

Pin Define

ESP32 UWB and ESP32 UWB Pro

#define SPI_SCK 18
#define SPI_MISO 19
#define SPI_MOSI 23

#define DW_CS 4
#define PIN_RST 27
#define PIN_IRQ 34

ESP32 Pro with display

#define SPI_SCK 18
#define SPI_MISO 19
#define SPI_MOSI 23

#define UWB_SS 21   // spi select pin
#define UWB_RST 27  // reset pin
#define UWB_IRQ 34  // irq pin

#define I2C_SDA 4	//I2C screen ssd1306
#define I2C_SCL 5

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published