├── .gitattributes ├── getting_started ├── init.jpg ├── IMG_3950.jpeg ├── IMG_3952.jpeg └── README.md ├── schematic ├── hand-1200.jpg ├── topview-1200.jpg ├── frontview-formaat-1200.jpg ├── Schematic_esp32-s3 + c6 v1.3_2023-09-02.png └── Schematic_esp32-s3 + c6 2 - v1.4_2023-11-17.png └── README.md /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /getting_started/init.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nlimper/Mini-AP-v3/HEAD/getting_started/init.jpg -------------------------------------------------------------------------------- /schematic/hand-1200.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nlimper/Mini-AP-v3/HEAD/schematic/hand-1200.jpg -------------------------------------------------------------------------------- /schematic/topview-1200.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nlimper/Mini-AP-v3/HEAD/schematic/topview-1200.jpg -------------------------------------------------------------------------------- /getting_started/IMG_3950.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nlimper/Mini-AP-v3/HEAD/getting_started/IMG_3950.jpeg -------------------------------------------------------------------------------- /getting_started/IMG_3952.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nlimper/Mini-AP-v3/HEAD/getting_started/IMG_3952.jpeg -------------------------------------------------------------------------------- /schematic/frontview-formaat-1200.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nlimper/Mini-AP-v3/HEAD/schematic/frontview-formaat-1200.jpg -------------------------------------------------------------------------------- /schematic/Schematic_esp32-s3 + c6 v1.3_2023-09-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nlimper/Mini-AP-v3/HEAD/schematic/Schematic_esp32-s3 + c6 v1.3_2023-09-02.png -------------------------------------------------------------------------------- /schematic/Schematic_esp32-s3 + c6 2 - v1.4_2023-11-17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nlimper/Mini-AP-v3/HEAD/schematic/Schematic_esp32-s3 + c6 2 - v1.4_2023-11-17.png -------------------------------------------------------------------------------- /getting_started/README.md: -------------------------------------------------------------------------------- 1 | # Getting started 2 | 3 | ## Where to start? 4 | 5 | - If you still need to build the kit, go to [/building_instructions](/building_instructions) first. 6 | 7 | - Did you purchage an fully assembled access point, you can skip the steps about flashing, because it already contains the right firmware. 8 | 9 | ## Flashing the ESP32-S3 10 | 11 | So, you have an empty access point. First we flash the ESP32-S3, and from there on, it is capable to flash the ESP32-C6 by itself. 12 | 13 | To flash the ESP32-S3, you have a few options: 14 | 15 | 1. Use PlatformIO and VSCode and compile the firmware yourself. Although it's a bit more complicated to get this running, this is the best choice if you want to tinker with the code yourself, or want to make additions to the software. Choose the `ESP32_S3_16_8_YELLOW_AP` environment, which is compatible with the Mini AP v3. 16 | 17 | 2. The easy method: use https://install.openepaperlink.de to use the web flasher. Connect the access point to your computer with an USB-C cable. On the web flasher page, choose 'Mini AP v3', blick 'connect', and choose the right COM-port. If you click 'install openepaperlink', the ESP32-S3 gets flashed. After flashing, you can select your wifi network/password, to connect the AP with your WiFi network. When that's successfull, choose 'visit device' to redirect to the OpenEpaperLink main screen and skip the next step. 18 | 19 | ## Connect to WiFi 20 | 21 | Once the firmware is there, you can update the firmware over the air. By choosing 'AP config' -> 'update', you can see if there is a newer release, and apply the new firmware from there without a connection to your computer. From now on, you can simple connect the Access Point to any USB charger. 22 | 23 |
24 | 25 | If all went well, you will see this screen. Now, to configure the WiFi settings, connect to the OpenEpaperLink WiFi network with your phone or notebook, and visit http://192.168.4.1/setup 26 | 27 |
28 | 29 | Enter your SSID and password and save the settings. 30 | 31 |
32 | 33 | Success! You can go to the Access Point main screen by visiting the ip-adres shown on the tft with your browser. 34 | 35 | ## Flashing the ESP32-C6 36 | 37 | We still need to flash the ESP32-C6. For that, from the Access Point main screen, go to 'AP config' -> 'update' -> 'advanced options' -> 'Update ESP32-C6'. 38 | Finished? Congratulations, you have a running Access Point! 39 | 40 | ## Connecting the tags 41 | 42 | Take a (programmed) tag, and insert the batteries. This may sound easier than it is, in reality. See, these tags are cheap. They don't reset automatically when the voltage drops; if you replace batteries, you'll sometimes need to reset them (by shortening out the contacts), and you want to insert the batteries in a swift motion, so that they make contact and stay connected. You can use the battery cover to pop the batteries in. 43 | 44 | If you want to make sure you'll reset the tag properly, the easiest way to drain the internal capacitors is to shorten the them using a battery. A battery inserted in reverse will shorten the contacts. On tags with multiple batteries: don't keep batteries in the bay with one battery shorting out the contacts; they're wired in parallel. 45 | 46 | Now that you've successfully powered on your tag, it's time to see if it's showing up on the AP-webinterface. A few seconds after the 'Waiting for data...' screen is shown on a tag, it should show up on the accesspoint. 47 | Select the tag in the webinterface, choose some content, and the tag should update the next time it checks in! 48 | 49 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Mini-AP-v3 2 | 3 |
4 | 5 | Universal ESP32-C6 and ESP32-S3 based device, usable as WiFi <-> IEEE 802.15.4 gateway or as OpenEpaperlink Access Point 6 | You can [buy it as a kit or fully assembled on Tindie](https://www.tindie.com/products/electronics-by-nic/openepaperlink-mini-ap-v3-zigbee-wifi-gateway/) 7 | 8 | ## What the heck can I do with this? 9 | 10 | Basicly, this is a universal WiFi <-> IEEE 802.15.4 gateway, with a size smaller than a credit card. 11 | 12 | You can use this set to setup your own E-Paper display system at home. The displays can display nearly anything. Just send a jpg file to the AP, and it can be displayed on one of the displays. The AP can generate all kinds of content itself too! Stuff like weather forecasts and the date can be shown on a tag, making for a nice dynamic little screen. It's also possible to use the OpenEpaperLink AP with HomeAssistant thanks to an integration. 13 | 14 | All details can be found here: [OpenEPaperLink](https://github.com/jjwbruijn/OpenEPaperLink/wiki). 15 | With this Access Point and some displays, you have a fully working system. 16 | 17 | If you just want to tinker with Zigbee instead, you can make this as a WiFi to Zigbee gateway, possibly use it together with Zigbee2mqtt. But no software is written for it yet, if you want to use it that way. Looking forward to see some nice implementations! 18 | 19 | ### Background info 20 | 21 | The AP is based on an ESP32-S3 and uses a ESP32-C6 as a radio interface. With the OpenEpaperLink software, the system uses unencrypted, Zigbee-like (IEEE 802.15.4) packets on 2.4Ghz. Thanks to a web-interface on the ESP32-S3, the accesspoint is fully self-contained to works together with electronic shelf labels that run the OpenEpaperLink firmware. 22 | 23 | ## What you will receive 24 | 25 | On my [Tindie shop](https://www.tindie.com/products/electronics-by-nic/openepaperlink-mini-ap-v3-zigbee-wifi-gateway/) you will find multiple options: buy a kit, or completely assembled. 26 | 27 | #### **Kit:** 28 | 29 | To build it, you need to mount the ESP32-S3 and -C6 module, the TFT, and the leds. You need some soldering experience to do this. You can solder them by hand, but you need a good soldering iron with a very fine tip and steady hands. The 0603 components are really tiny. If you're not sure if you're able to handle the tiny parts in the kit, it's better to order this assembled version. After building, You'll need to program the ESP32-S3 and the ESP32-C6 using the [OpenEPaperLink Web Flasher](https://openepaperlink.de/) or PlatformIO. 30 | 31 | You will find the building instruction in [/building_instructions](/building_instructions). 32 | 33 | #### **Assembled:** 34 | 35 | As above, but completely assembled, programmed, and fully tested Mini-AP v3. No soldering needed. Connect a USB-C cable (not included), enter your wifi details, and it's running. By the way, it's fully self-contained and doesn't use any cloud based service to work. 36 | 37 | #### **Optional price tags:** 38 | 39 | The pricetags are recycled Solum electronic shelf labels that were used in stores, and run on a custom firmware called OpenEPaperLink. The pricetags themselves run on a undocumented SOC, the ZBS243. 40 | There are 2.9" and/or 1.54" tags. They have 296x128 / 152x152 pixels, Black-White-Red. 41 | 42 | If you want to get the tags, order them here: [2.9" tags](https://www.tindie.com/products/electronics-by-nic/5-pcs-29-epaper-tags-for-openepaperlink/), [1.54" tags](https://www.tindie.com/products/electronics-by-nic/5-pcs-154-epaper-tags-for-openepaperlink/). They are preprogrammed with the OpenEPaperLink firmware. The tags include batteries (only when ordered for shipping inside the EU), but as they are not new, I cannot estimate the life span of them. They take CR2450 batteries, which can be found online. The 2.9" tags take two of them. 43 | 44 |
45 | 46 | ## Things you should know: 47 | 48 | This is hobby-DIY-maker stuff, made by a hobbyist. Please don't use this where its functioning or malfunctioning may cause, or lead to, directly or indirectly, damage to property, damage to life or limb, or psychological distress. I'm no lawyer, but I basically don't want to get sued over providing people with some nice toys to tinker with. 49 | 50 | The OpenEPaperLink software is open-source. Contributions to the project are very welcome! 51 | I invest a significant amount of time in software development for the OpenEpaperLink project. The software is free, but when you [purchase this hardware](https://www.tindie.com/products/electronics-by-nic), you directly contribute to making this possible. Thank you for your support! 52 | 53 |
54 | --------------------------------------------------------------------------------