User Tools

Site Tools


3d_print_wx_station

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
3d_print_wx_station [2021/01/29 18:19] – [Passive thermometer sun shield] ok1hra3d_print_wx_station [2023/09/14 11:31] (current) ok1hra
Line 1: Line 1:
-====== 3D print WX station [ethernet+poe] ====== +====== 3D print APRS WX station (release 2023) ====== 
-[[https://remoteqth.com/3d-wx-station.php|Web page]] \\ +{{ https://remoteqth.com/img/wiki-wx-station2-78.jpg?300}} 
-\\ +Ethernet PoE weather station 
-**With propagation to APRS** - [[https://aprs.fi/weather/a/OK1HRA-6|OK1HRA-6]] [[https://aprs.fi/weather/a/ok1kpa-6|OK1KPA-6]]\\ +  * **[[https://remoteqth.com/order.php#wx|Order]]** 
-\\ +  [[https://remoteqth.com/3d-wx-station.php|Previous version web]] 
-{{youtube>6wNjkw3fjq8?large}} +  [[https://remoteqth.com/w/doku.php?id=3d_print_wx_station_obsolete|Previous version wiki]] 
----- + 
-===== Electronics ===== + 
-{{https://remoteqth.com/img/3d-wx-station-01.png?1000}} \\ +===== Source ====== 
-\\ +  * **Firmware** 
-[[https://remoteqth.com/hw/3d-wx-station-ibom-04.html|Interactive BOM]] \\ +    [[https://github.com/ok1hra/3D-print-WX-station/blob/master/wx.ino|Arduino source]] 
-[[https://remoteqth.com/hw/3d-wx-station-KiCad-04.pdf|Schematics]] \\ +  * **3D print model** 
-\\ +    * [[https://github.com/ok1hra/3D-print-WX-station/blob/master/3d-print/wx-station.scad|OpenScad source]] 
-**For incomplete PCB, need ** \\ +    * **[[https://github.com/ok1hra/3D-print-WX-station/tree/master/3d-print/stl-output|.STL and .3mf files]]** 
-  - U10, U12, U15 soldered from side of PCB - [[https://www.tme.eu/cz/details/ss349rt/hallova-cidla/honeywell/|order]]\\ +    * **[[https://remoteqth.com/download-count.php?Down=hw/SimpleRotatorInterfaceV-POE.stl|.STL for POE]]** injector 
-  - soldered U14 [[https://cz.mouser.com/ProductDetail/Measurement-Specialties/HTU21D?qs=sGAEpiMZZMvi6wO7nhr1L0KnnbEyJ5ILgeMTWxTrZsM%3D|order]] \\ +  * **Electronics** 
-  //rev 0.4 issue -// change [[https://remoteqth.com/img/3d-wx-station-rev04-issue.png|resistors]] to 100R or soldered over existing +    * [[https://remoteqth.com/download-count.php?Down=hw/wx-08b.pdf|.PDF]] schematics rev 8. 
-  - soldered P1 [[https://www.tme.eu/cz/details/ds1065-14-2x3s8br/konektory-hrebinky/connfly/ds1065-14-2-3s8br/|order]] \\ +    [[https://remoteqth.com/download-count.php?Down=hw/wx-08b-ibom.html|iBOM.html]] rev 8. 
-  - soldered P2 [[https://www.tme.eu/cz/details/zl320-2x3p/konektory-hrebinky/connfly/ds1031-06-2-3p8bv-4-1/|order]] \\ +  * Optional **e-ink display** 
-  - soldered EXT1, EXT2 [[https://www.tme.eu/cz/details/zl262-10sg/konektory-hrebinky/connfly/ds1023-1-10s21/|order]] \\ +    * [[https://github.com/ok1hra/esp32-e-ink|GitHub]]
-  - connect ESP32-POE [[https://www.olimex.com/Products/IoT/ESP32/ESP32-POE/open-source-hardware|order]] \\ +
-  - POE injector [[https://www.alza.cz/tp-link-tl-poe150s-d185018.htm|order]] \\ +
-    - **Warning: do not connect POE and USB cable in same time!** \\+
  
-**After PCB assembly ** \\ 
-  - Test if works 
-    - [[3d_print_wx_station#firmware_upload|Upload firmware]] to ESP32-POE, [[3d_print_wx_station#first_step_need_get_ip_addres_and_telnet_acces_key|connect usb terminal]] and test sensor with neodyme magnet. 
-    - hall efect sensor detect only **north** pole of neodyme magnets, therefore try to attach for find north pole and sign it with permanent pen. The output of the closed sensor can be monitored in the CLI on line (1 is open){{https://remoteqth.com/img/wiki-wx-station-03.jpg}}<code> RpmPin 0 | Rain1Pin 1 | Rain2Pin 1</code> 
-  - Mask all connectors and sensors (U13, U14) and appply **protective acrylic** \\ {{https://remoteqth.com/img/wiki-wx-station-04.jpg?375}}{{https://remoteqth.com/img/wiki-wx-station-05.jpg?437}} 
-\\ 
 ---- ----
  
-===== Hardware ===== +===== Measures values ====== 
-^ part      ^ pieces       ^ order URL          ^ +  - **Temperature** (inside not exactly), external in sunshield 
-| M3x10mm    | 7x     | https://www.tme.eu/cz/details/m3x10_d912-a2/srouby/kraftberg/        | +  **Relative humidity** 
-| M2x10mm    | 4x | https://www.tme.eu/cz/details/m2x10_d912-a2/srouby/kraftberg/ | +  **Dew point** calculated 
-| brass threaded rod M6x250mm    | 1x             | +  - **Pressure** 
-| brass M6 nut   | 2x  |    | +  - **Wind speed** - with three blades 
-| bearings 61802   | 2x   | https://www.zkl-loziska.cz/vyhledavani/?string=61802 \\ https://www.tme.eu/cz/details/bb-6802-b180-30-es/valiva-loziska/igus/   | +  **Wind direction** 
-| neodymium magnet 12x6x2mm   | 4x   | https://www.unimagnet.cz/kv-12-06-02-n_z401/   | +  - **Rain** with a resolution of 0.14 mm 
-| neodymium magnet 5x3x1mm for rain sensor (NOT TESTED  | 2x   | https://www.unimagnet.cz/kv-05-03-01-nh_z375/   | + 
-| magnet glue (or another)   | 1x   https://www.unimagnet.cz/499-lepidlo-UHU-plus-endfest-300.html   | +===== Features ====== 
-| cable tie with a metal clasp   | >2x   https://www.tme.eu/cz/details/bt2s-c0/stahovaci-pasky/panduit/   | +  - **Ethernet** RJ45 connection 
-| PCB protective acrylic (optional)   | 1x   | https://www.tme.eu/cz/details/70_400/ochranne-a-stinici-povlaky/kontakt-chemie/74313-004  | +  - Powered via passive **POE** with own adapter 
-| stainless steel threaded rod M6x+-125mm   | 1x   | for balacing wind azimuth  | +  - Single mounting point installation with simple mounting with two plastic binding tapes 
-| External outdoor DS18B20 temperature sensor | 1x | optional | +    - Design supports an **easy change** of the **diameter mounting tube,** by replacing one 3D printed part (number 2). 
-\\+  **Simply replace** the vanes of the anemometer (if they are damaged) without disassembly 
 +  **Simply replace** the paddle of wind direction (if they are damaged) without disassembly 
 +  **No wiring,** just fit two PCBs 
 +  **Open** design 
 +  **Completely 3D printed** 
 +  - Publish data to **MQTT** 
 +  - Stores the maximum historically measured wind speed value with a time stamp to the eeprom 
 +  - Direct sending data to **aprs.fi** (if you have a radio amateur license) 
 +  **Setup via IP Telnet,** with security using a hundred character security key 
 +    Display of raw values of all internal sensors 
 +    **USB-C** connector for read security key 
 +  - **OTA update** via web interface 
 +  - Web **MQTT wall,** for simple debugging 
 +  - Hardware expandable by (they are not implemented in firmware) 
 +    **RFM96W-433S2 LoRa** module (PCB antenna designed on main board), or other pin compatible module 
 +    **SHT30** sensor 
 +    MS563702BA03 sensor 
 +    - ICP-10111 sensor 
 +  - Optional **external SD18B20 thermistor** with **[[Double sun shield for thermometer]]** - also 3D printed \\ {{https://remoteqth.com/img/wiki-wx-station2-12.jpg?100}} 
 +    **Automatic detection** of connection of external thermometer DS18B20 and switch to its values 
 +  Optional **[[https://github.com/ok1hra/esp32-e-ink|WiFi e-ink display]]** \\ {{https://remoteqth.com/img/wiki-wx-station2-19.jpg?100}} {{https://remoteqth.com/img/wiki-wx-station2-19.png?163}} 
 + 
 ---- ----
-===== 3D print ===== 
-{{https://remoteqth.com/img/3d-wx-station-03.png?900}} \\ 
  
-^ part      ^ filament       ^ weight          ^ 
-| 1,3,4,5,6.stl   | WHITE PETG   | 100g   | 
-| 0,2,7-14.stl   | NO-WHITE PETG   | 350g   | \\ 
-[[https://remoteqth.com/3d-wx-station.php#download|Download 3d models]] \\ 
-**Part #2 designed for mounting tube with 58 mm diameter \\ 
-For another diameter change value in OpenScad and export new .stl** 
-<code>        MountDia               58;   // tube size for mounting</code> 
  
-\\+===== BOM ===== 
 +| {{https://remoteqth.com/img/wiki-wx-station2-20.png?100}} | **[[3d_print_wx_station#source|Printed parts]]** \\ **200g White PETG** filament \\ White due to reduced overheating from the sun light \\ \\ //After printing, remove the supports and remove the strings using hot air// | 4 pieces | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-21.png?100}} | **[[3d_print_wx_station#source|Printed parts]]** \\ **250g Black PETG** filament \\ Black due to the absorption of sunlight, it melts the winter ice as soon as possible \\ **Number 14** is an optional stand for the chair \\ **Number 16** is a necessary part for pressing the bearings \\ **Number 17** is optionally scaled internal parts of the bearings to find the optimal tolerance, if necessary \\ **Number 18** part for formatting bearings  \\ \\ //After printing, remove the supports and remove the strings using hot air// | 12 pieces | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-22.png?100}} | **[[3d_print_wx_station#source|Printed parts]]** \\ **25g Transparent PETG** filament \\ due to the show of the LED in the POE module  \\ \\ //After printing, remove the supports and remove the string using hot air// | 1 piece | 
 +| {{https://remoteqth.com/img/wiki-3d-rot1-57.jpg?100}} | M3 x 10mm, allen head, stainless steel | 6 pieces | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-22.jpg?100}} | M2 x 10mm, allen head, stainless steel | 6 pieces | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-23.jpg?100}} | Brass threaded rod M6 x 250mm | 1 piece | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-24.jpg?100}} | Stainless steel threaded rod M6 x 105mm | 1 piece | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-79.jpg?100}} | Screw M4 x50mm | 1 piece | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-26.jpg?100}} | Nut M4 | 1 piece | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-25.jpg?100}} | Brass nut M6 | 3 pieces | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-26.jpg?100}} | Stainless steel nut M6 | 1 piece | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-27.jpg?100}} | Ball bearing 61802 (15/24x5mm) | 2 pieces | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-28.jpg?100}} | Neodymium magnet with dimensions 6 x 12 x 2 mm | 2 pieces | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-29.jpg?100}} | Neodymium magnet, cylinder with a diameter of 5 mm and a height of 3 mm | 1 piece | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-30.jpg?100}} | PCB board | 1 piece | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-04.jpg?100}} | Plastic binding belt, about 30 cm long | 2 pieces | 
 +| {{https://remoteqth.com/img/wiki-3d-rot1-68.png?100}} | Universal transparent silicone sealant | 50g | 
 +===== Tools ===== 
 +| {{https://remoteqth.com/img/wiki-3d-rot1-69.png?100}} | Allen key 1,5mm | 
 +| {{https://remoteqth.com/img/wiki-3d-rot1-69.png?100}} | Allen key 2,5mm | 
 +| {{https://remoteqth.com/img/wiki-3d-rot1-70.png?100}} | Key 10mm | 
 +| {{https://remoteqth.com/img/wiki-wx-station2-21b.png?100}} | 3D printed part number 16, for pressing bearings | 
 ---- ----
-===== Firmware upload ===== 
  
-  Install [[https://www.arduino.cc/en/Main/Software|Arduino IDE]] +====== Assembly manual, step by step ====== 
-  - Install ESP32 support from [[https://github.com/espressif/arduino-esp32|GitHub]] + 
-    prefered via **[[https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md|board manager]]** +  **Carefully break** off the two parts connected to the main PCB board via the bridge \\ {{https://remoteqth.com/img/wiki-wx-station2-31.jpg?250}} \\ 
-  - Install [[https://www.arduino.cc/en/guide/libraries|Arduino libraries]] +  - Break off the bridge with the help of pliers \\ {{https://remoteqth.com/img/wiki-wx-station2-32.jpg?250}} \\ 
-    PubSubClient +  - **Place the 3D printed part number 3** on the main PCB and seal the upper gap with silicone sealant \\ {{https://remoteqth.com/img/wiki-wx-station2-33.jpg?250}} \\ 
-    Adafruit_BMP280_Library +  - **Place the 3D printed part number 4,** push it downwards (to the left in the picture) and screw together with two M2 x10mm screws \\ **Be careful** not to tighten too much, the screws are tightened into the conical holes in the plastic \\ {{https://remoteqth.com/img/wiki-wx-station2-34.jpg?250}} \\ 
-    - Adafruit_HTU21DF_Library +  - Now it will be necessary to press the bearing. \\ **First, screw** a nut on a brass threaded rod about 50mm from the edge. \\ {{https://remoteqth.com/img/wiki-wx-station2-35.jpg?250}} \\ 
-    - Adafruit_Unified_Sensor +  - Then **put the smaller part** of the 3D printed part number 16 on it. \\ {{https://remoteqth.com/img/wiki-wx-station2-36.jpg?250}} \\ 
-    - OneWire (optional if use external DS18B20 temperature sensor+  - You **thread the bearing** \\ {{https://remoteqth.com/img/wiki-wx-station2-37.jpg?250}} \\ 
-    - DallasTemperature (optional if use external DS18B20 temperature sensor) +  - **Put** on the 3D printed **part number 5** according to the picture \\ {{https://remoteqth.com/img/wiki-wx-station2-38.jpg?250}} \\ 
-  - Download firmware from [[https://github.com/ok1hra/3D-print-WX-station|GitGub]] +  - You thread the second (larger) 3d printed part number 16 \\ {{https://remoteqth.com/img/wiki-wx-station2-39.jpg?250}} \\ 
-  - Select menu Tools/Board:"OLIMEX ESP32-POE" +  Screw in the brass nut \\ {{https://remoteqth.com/img/wiki-wx-station2-40.jpg?250}} \\ 
-  - Connect micro USB between ESP32-POE and PC +  **Lightly tighten with a number 10 wrench** until resistance begins to rise \\ {{https://remoteqth.com/img/wiki-wx-station2-41.jpg?250}} \\ 
-    - **WARNING: not connect USB cable and POE in same time!** +  - Disassemble the entire tool, the bearing should be pressed inside the part. \\ The new bearings have considerable resistance. Over time, it will decrease during rotation. \\ **This process can be accelerated with a simple tool,** with which we spin the bearing for a few minutes with a drill. \\ {{https://remoteqth.com/img/wiki-wx-station2-42.jpg?250}} \\  
-  - Select menu Tools/Port/YOUR-CONNECTED-PORT +    - Insert the M4 x50mm screw into the 3D printed part 18 and tighten from the other side with a nut \\ {{https://remoteqth.com/img/wiki-wx-station2-80.jpg?250}} \\ 
-  - Upload firmware +    - Then clamp the screw in the chuck. Put a bearing on the plastic cone and let it spin at high speed for a few minutes. \\ **Attention, be careful and use gloves!**  \\ {{https://remoteqth.com/img/wiki-wx-station2-81.jpg?250}} \\ 
-  - After firmware upload you can upload next version of the firmware via IPif you computer in same networkIn Arduino IDE shows another choice Network ports \\ {{https://remoteqth.com/img/3d-wx-station-10.png?200}} +  - **Describe all magnets** with north and south fields \\ Field detection can be done in two ways\\ {{https://remoteqth.com/img/wiki-wx-station2-43.jpg?250}}  
-  - password for OTA upload is //remoteqth//+    - **Using the compass,** or {{https://www.google.com/search?q=how+to+find+north+pole+of+a+magnet|with other methods}} (hanging on a thread, floating on water...
 +    - **By attaching a magnet to the hall probe** on the main PCB WX of the station, the probe responds to the N pole 
 +      - Connect to the weather station [[#telnet_connect|using telnet]] 
 +      - By default, the sensor is in the **RpmPin 1** state 
 +      - After attaching the magnet in the North direction to the sensor (see picture), it will switch to the state **RpmPin 0**. \\ Note that you must press Enter in telnet to refresh the values \\ {{https://remoteqth.com/img/wiki-wx-station2-83.png?150}} 
 +  - We **insert the rectangular magnet** into the gap in the 3d printed part number 5 so that the **N pole points towards the center** \\ {{https://remoteqth.com/img/wiki-wx-station2-44.jpg?250}} \\ 
 +  - We press the magnet so that it does not stick out \\ {{https://remoteqth.com/img/wiki-wx-station2-45.jpg?250}} \\ 
 +  - **Place part number 5** with bearing and pagnet on the main board and push it downwards (to the left in the picture) \\ {{https://remoteqth.com/img/wiki-wx-station2-46.jpg?250}} \\ 
 +  - **Place** the 3D printed **part number 7** and fasten with two M2 x10mm screws \\ {{https://remoteqth.com/img/wiki-wx-station2-47.jpg?250}} \\ 
 +  - **Press the bearing** into the 3d printed part number 9 according to the **instructions in point 5** \\ {{https://remoteqth.com/img/wiki-wx-station2-48.jpg?250}} \\ 
 +  - After removing the supports, **insert the magnet** into part 9 so that it is **oriented with the North field up** \\ {{https://remoteqth.com/img/wiki-wx-station2-49.jpg?250}} \\ 
 +  - Place the part on the main board and gently push it so that the bearing fits onto the prepared cone \\ {{https://remoteqth.com/img/wiki-wx-station2-51.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-50.jpg?250}} \\ 
 +  - **Be very careful** not to damage the hall probes at the end of the main board. \\ Fit the round PCB and **insert it into the connector** in the main board. \\ {{https://remoteqth.com/img/wiki-wx-station2-52.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-53.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-54.jpg?250}} \\ 
 +  - **Insert a brass threaded rod** with a nut on the end into the 3D printed part. \\ {{https://remoteqth.com/img/wiki-wx-station2-55.jpg?250}} \\ 
 +  - Push the threaded rod through the entire weather station and carefully **slide the 3D printed part number 2** onto the main board. \\ {{https://remoteqth.com/img/wiki-wx-station2-56.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-57.jpg?250}} \\ 
 +  - **Seal** the top end with a **small amount of silicone** sealant. Larger amounts could be pushed under the plate and prevent the part from turning underneath. \\ {{https://remoteqth.com/img/wiki-wx-station2-58.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-59.jpg?250}} \\ 
 +  - **Put** on the 3D printed **part number 10** and screw on the brass nut so that the screw does not protrude from the nut. \\ {{https://remoteqth.com/img/wiki-wx-station2-60.jpg?250}} \\ 
 +  - **Put** on the 3d printed **part number 12** and insulate the joints with silicone sealant. \\ {{https://remoteqth.com/img/wiki-wx-station2-61.jpg?250}} \\ 
 +  - **Gently tighten** the nut on the underside of the weather station. Attention, strong tighten can deform the plastic parts. \\ {{https://remoteqth.com/img/wiki-wx-station2-62.jpg?250}} \\ 
 +  - **Press** the **cylindrical neodymium magnet** into the 3D printed part number 11 so that it is oriented **with the South field facing outwards.** \\ {{https://remoteqth.com/img/wiki-wx-station2-63.jpg?250}} \\ 
 +  - **Using two M2 x10mm screws, attach the cradle** to the main plate and plastic bracket number 12. The screws must remain loose so that the cradle can rotate freely. The ideal situation is when, by moving the cradle in the axis of rotation, the cradle does not touch either side (the PCB or the supporting plastic part. \\ {{https://remoteqth.com/img/wiki-wx-station2-64.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-65.jpg?250}} \\ 
 +  - We **verify the correct function** of the cradle by tilting it, when the cradle always it flips over freely. \\ {{https://remoteqth.com/img/wiki-wx-station2-67.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-66.jpg?250}} \\ 
 +  - **Before** putting on the 3D printed part number 13, we **remove the strings from its inner part** with the help of hot air. Strings are thin and hard to see, but they can prevent the cradle from tipping over inside. Then we **screw the part to the main structure** using four M3 x10mm screws. Attention, we do not tighten with force, the screws are only in conical plastic holes, without metal nuts. \\ {{https://remoteqth.com/img/wiki-wx-station2-69.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-68.jpg?250}} \\ 
 +  - **Place the 3D printed part number 1** in the lower part and secure it with a brass nut. \\ {{https://remoteqth.com/img/wiki-wx-station2-70.jpg?250}} \\ 
 +  - Place the 3D-printed part number 8 in the rotating part, and insert it so that it does not protrude. \\ The accuracy of the facing of 3D printed parts is given by the accuracy of printing without overshoot at the end and excessive extrusion. \\ {{https://remoteqth.com/img/wiki-wx-station2-71.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-72.jpg?250}} \\ 
 +  - We **screw** in the stainless steel threaded rod from the opposite side until it starts to resistwhich is the end of the plastic taper hole. Then we screw the stainless steel nut onto it, by screwing it along the threaded **rod we balance it so that it remains in a horizontal position.** Finally, secure the mother with a bit of silicone sealant. \\ {{https://remoteqth.com/img/wiki-wx-station2-73.png?250}} \\ 
 +  - Place three 3D printed **anemometer vanes** (part number 6). \\ The accuracy of the facing of 3D printed parts is given by the accuracy of printing without overshoot at the end and excessive extrusion. \\ {{https://remoteqth.com/img/wiki-wx-station2-74.jpg?250}} {{https://remoteqth.com/img/wiki-wx-station2-75.jpg?250}} \\ 
 +  - **Before inserting** the plastic binding tape into the 3D printed part number 2, **bend the end of the tape twice** so that it can be inserted through the hole that is bent into the washer ring. \\ {{https://remoteqth.com/img/wiki-wx-station2-76.jpg?250}} \\ 
 +  - With the two straps, we **attach** the weather station to the mounting pipe. \\ {{https://remoteqth.com/img/wiki-wx-station2-77.jpg?250}} \\ 
 +  - In order for the weather station to show the correct wind direction, **it must be correctly oriented** North - South. Turn the weather station according to the inscription on the outside of the printed part. \\ {{https://remoteqth.com/img/wiki-wx-station2-78.jpg?250}} \\ 
 +  - The POE module is mounted in a 3d printed part made of transparent material so that the LED diode inside can be seen, which signals the interruption of the tube fuse in the power supply of the weather station. **Insert the PCB** joint into the 3d printed box according to the picture. \\ {{https://remoteqth.com/img/wiki-wx-station2-90.jpg?250}} \\ 
 +  - Then close and **screw with a two M3** x 10mm screws \\ {{https://remoteqth.com/img/wiki-wx-station2-91.jpg?250}} \\
  
 ---- ----
-===== Configure CLI ===== 
  
-==== First step need get IP addres and telnet acces key ==== +===== Connection using telnet and settings =====
-  - After first upload firmware via USB, open serial monitor in Arduino IDE (Ctrl+Shift+M) and set +
-    - baudrate to 115200 +
-    - No Line ending +
-  - write <code>?</code> and press enter show settings Command line interface \\ {{https://remoteqth.com/img/3d-wx-station-07.png?300}} \\ +
-  - Now **copy and save** +
-    * **IP** address +
-    * **Key** for telnet access (100 characters) +
-Key are generated automatically from internal pseudo random generator after start if EEPROM is clear. Therefore you can generate new key after clear EEPROM with **E** command.+
  
-==== Second step connect remotely via IP ====+==== How to connect ==== 
 +{{https://remoteqth.com/img/wiki-wx-station2-poe.png}} 
 +==== Reading the access key ====
  
 +  - You download the {{https://www.arduino.cc/en/Main/Software|Arduino IDE}}
 +  - **Connect** the weather station **to the Ethernet, including the power supply via the POE module,** see the picture above
 +  - **Connect** the weather station with the **USB-C** cable to the computer
 +  - In the Arduino IDE menu, select **Tools/Port: your port**
 +  - Select the menu **Tools/Serial monitor** (or press Ctrl+Shift+M)
 +  - In the bottom sheet of the monitor, choose the speed of **115200 baud** and (CR)
 +  - Place the cursor in the upper input line and **press Enter**
 +  - The IP address and **access key** will be displayed, which you should copy and save safely. \\ {{https://remoteqth.com/img/wiki-wx-station2-key.png?400}}
 +==== Telnet connect ====
   * Download and install [[https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html|PuTTY]]   * Download and install [[https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html|PuTTY]]
   * In menu Terminal preset CR/LF and line discipline by picture \\ {{https://remoteqth.com/img/wiki-ip-switch-esp32gateway-22.png?200}} \\   * In menu Terminal preset CR/LF and line discipline by picture \\ {{https://remoteqth.com/img/wiki-ip-switch-esp32gateway-22.png?200}} \\
Line 101: Line 160:
     * select **Telnet**     * select **Telnet**
     * port **23**     * port **23**
-    * write **IP address** (saved from first step acces)+    * write **IP address** (saved from [[#reading_the_access_key|Reading the access key]])
     * Sessions may be saved for next time     * Sessions may be saved for next time
     * for connect press **Open**     * for connect press **Open**
   * Login confirm with press <code>y</code>   * Login confirm with press <code>y</code>
-  * Now answer four times the question of what character is on random selected position, **in your key** (key saved from first step acces). Key formated in groups of ten - FOR EXAMPLE<code>Position  KEY+  * Now answer four times the question of what character is on random selected position, **in your key** (key saved from [[#reading_the_access_key|Reading the access key]]). Key formated in groups of ten - FOR EXAMPLE<code>Position  KEY
  1-10     pP75tf8qrF  1-10     pP75tf8qrF
 11-20     y4SK57dpnC 11-20     y4SK57dpnC
Line 116: Line 175:
 81-90     B68NpG7F0t 81-90     B68NpG7F0t
 91-100    5mD04pAE6s</code> 91-100    5mD04pAE6s</code>
-  * if you **enter wrong three times,** login will be **blocked for next ten minutes** +  * if you **enter wrong three times,** login will be **blocked for next ten minutes** (It can be worked around by resetting the power supply to the weather station). 
-  * After login your IP address store to EEPROM and next key will be required **only if change your IP** address  +  * After login your IP address will be stored in the EEPROM and next key not will be required **only if change your IP** address  
-  * Now logged in to CLI (command line interface) via telnet \\ {{https://remoteqth.com/img/3d-wx-station-08.png?400}}+  * Now logged in to CLI (Command Line Interface) via telnet \\ {{https://remoteqth.com/img/wiki-wx-station2-telnet.png?400}}
   * for **Logout** press **q** \\   * for **Logout** press **q** \\
  
-==== How command are available ==== +==== Setup ==== 
-| **?** | List status information and command | +Telnet's CLI (Command Line Interfaceconsists of three parts:
-| **a** | set wind speed alert, if exceed limit (not implemented+
-| **O** | set pressure ofset in hPa | +
-| ***** | enable/disable serial/telnet debug, switching between three status \\ disable, enable, enable frenetic mode | +
-| **+** | change MQTT broker IP and port - defailt value used RemoteQTH.com public MQTT broker | +
-| **L** | change location name, or callsign with ssid if enable APRS | +
-| **A** | enable/disable upload to hamradio APRS network (requires a valid license) | +
-| **s** | enable/disable external temperature sensor DS18B20 \\ connected to P4 by this schematics/picture \\ {{https://remoteqth.com/img/wiki-wx-station-01.png?x300}} \\ **NOTICE** \\ If use external temperature sensor DS18B20, \\ **must add 4k7 pull-up rezistor** \\ between +3,3V and data (pin 1 and pin3 on P4 connector) \\ {{https://remoteqth.com/img/wiki-wx-station-02.jpg?x500}} | +
-| **q** | disconect telnet, also show login verified IP address | +
-| **Q** | disconect telnet with erase verified IP addres - will be required key in the next time you log in | +
-| **e** | list EEPROM (only for debbuging) | +
-| **.** | reset half hour timer and send measure to MQTT (and APRS if enable) | +
-| **@** | restart device (causes telnet disconnection) |+
  
-==== Third step - MQTT ====+  WX station status 
 +    - **Network** interface information (IP, MAC address) 
 +    - **UTC** time read from the NTP server (indicates a functional connection to the Internet) 
 +    - **Uptime** 
 +    - **MQTT** borker IP:port/topic 
 +    - Firmware and PCB **revision** 
 +  - Sensors (raw and resulting sensor values) 
 +    - **RainPin** - analog status on the input pin and recalculated values 
 +    - **Wind direction** - bit value of parallel converter and output values 
 +    - **RpMPin** - currently read digital input value (1 without magnet) and length of the last pulse 
 +      - + statistics for the last period and the maximum historically measured value with a time stamp 
 +    - **HTU21D** - sensor values (in square brackets with added Temperature calibration shift value) 
 +    - Calculated **dew point** 
 +    - **BMP280** - sensor values (pressure in square brackets converted to sea level) 
 +    - **DS18B20** - sensor value 
 +  - Menu \\ //Used to set the necessary values. Press the letter from the left column to call up the required menu//
  
-If open IP address of WX station in web browser, load MQTT-wall. \\ 
-That propagate every half hour last measured value. \\ {{https://remoteqth.com/img/3d-wx-station-09.png?400}} 
- 
-\\ 
 ---- ----
-===== How to build ===== 
  
-  * [[3d_print_wx_station#hardware|Prepare hardware components]] +===== WiFi e-ink display connection ===== 
-  [[3d_print_wx_station#3D print|Prepare printed patrs]] +To display the values from the weather station on the WiFi e-ink display, use the tutorial on **[[https://github.com/ok1hra/esp32-e-ink|GitHub]]** \\ {{https://remoteqth.com/img/wiki-wx-station2-19.jpg?250}}
-  * [[3d_print_wx_station#electronics|Prepare electronics PCB]] +
-  [[3d_print_wx_station#passive_thermometer_sun_shield|Passive thermometer sun shield]]+
  
-<code>The screws do not need any nuts because the holes are conical.</code> 
- 
-  - Check if all parts is present{{https://remoteqth.com/img/wiki-wx-station-07.jpg?1000}} \\ \\ 
-  - Trim all soldered THT pin on back side of PCB{{https://remoteqth.com/img/wiki-wx-station-08a.jpg}} \\ \\ 
-  - Use two screw M3x10 for mount PCB to printed **parts number 2** and use two cable tie{{https://remoteqth.com/img/wiki-wx-station-08.jpg}} \\ \\ 
-  - Use two screw M3x10 for mount PCB to printed **parts number 1**{{https://remoteqth.com/img/wiki-wx-station-09.jpg}} \\ \\ 
-  - You can seal the hole on the top with silicone{{https://remoteqth.com/img/wiki-wx-station-34.jpg}} \\ \\ 
-  - Silicone top hole{{https://remoteqth.com/img/wiki-wx-station-35.jpg}} \\ \\ 
-  - Slide in brass threaded rod M6x220mm \\ Slide in printed **parts number 7** and screw in 2x M2x10{{https://remoteqth.com/img/wiki-wx-station-11.jpg}} \\ \\ 
-  - {{https://remoteqth.com/img/wiki-wx-station-36.jpg}} \\ \\ 
-  - Press the bearing into printed **parts number 8** \\ If need precise tuning outside diameter, use this value in OpenScad source<code>BearingInTuning  = +20;  // +- smooth tuning bearing inner diameter in um</code>{{https://remoteqth.com/img/wiki-wx-station-12.jpg}} \\ \\ 
-  - Slide in neodymium magnet - **magnet must be turned north side inwards**{{https://remoteqth.com/img/wiki-wx-station-13.jpg}} \\ \\ 
-  - Slide the printed part onto the assembled part{{https://remoteqth.com/img/wiki-wx-station-14.jpg}}if your printer's tolerance is different, you can generate a set with select part number 16 in openScad source<code>Part                      =    16;   // select part 0-16, -1=all, 16=variant of inner</code>{{https://remoteqth.com/img/wiki-wx-station-06.png}} 
-  - Slide in printed parts **number 10** and screw in 2x M2x10{{https://remoteqth.com/img/wiki-wx-station-15.jpg}} \\ \\ 
-  - Press the bearing into printed **parts number 11** \\ If need precise tuning outside diameter, use this value in OpenScad source<code>BearingInTuning  = +20;  // +- smooth tuning bearing inner diameter in um</code>{{https://remoteqth.com/img/wiki-wx-station-16.jpg}} \\ \\ 
-  - Slide in neodymium magnet - **magnet must be turned north side top**{{https://remoteqth.com/img/wiki-wx-station-17.jpg}} \\ \\ 
-  - Slide the printed part onto the assembled part{{https://remoteqth.com/img/wiki-wx-station-18.jpg}}{{https://remoteqth.com/img/wiki-wx-station-19.jpg}} \\ \\ 
-  - Slide in two small neodymium magnet - **must be turned bottom north side**{{https://remoteqth.com/img/wiki-wx-station-20.jpg}} \\ \\ 
-  - Screw in 2x M3x10 - after tightening, loosen by one turn{{https://remoteqth.com/img/wiki-wx-station-21.jpg}} \\ \\ 
-  - Carefully insert the PCB coin and plug in to connector{{https://remoteqth.com/img/wiki-wx-station-22.jpg}} \\ \\ 
-  - Silicone top hole{{https://remoteqth.com/img/wiki-wx-station-37.jpg}} \\ \\ 
-  - Put on printed **parts number 12** and tighten with a brass nut \\ **free hole around PCB it is necessary to seal with silicone**{{https://remoteqth.com/img/wiki-wx-station-23.jpg}} \\ \\ 
-  - The screw must not protrude beyond the nut{{https://remoteqth.com/img/wiki-wx-station-24.jpg}} \\ \\ 
-  - Silicone top hole{{https://remoteqth.com/img/wiki-wx-station-38.jpg}} \\ \\ 
-  - With press the pliers to put on{{https://remoteqth.com/img/wiki-wx-station-25.jpg}} \\ \\ 
-  - Screw in M3x10 to printed **parts number 14**{{https://remoteqth.com/img/wiki-wx-station-26.jpg}} \\ \\ 
-  - fit the azimuth blade and screw it on stainless steel threaded rod M6x125mm on, **so as to keep them horizontally balanced** - M6 nuts can be screwed in for balancing{{https://remoteqth.com/img/wiki-wx-station-27.jpg}} \\ \\ 
-  - Fit part number 14 on part number 12 so that the locking **screw is against the bottom hole**{{https://remoteqth.com/img/wiki-wx-station-28.jpg}} \\ \\ 
-  - Install the three anemometer blades{{https://remoteqth.com/img/wiki-wx-station-29.jpg}} \\ \\ 
-  - Connect ESP32-POE to PCB and fix with two lashing straps{{https://remoteqth.com/img/wiki-wx-station-30.jpg}} \\ \\ 
-  - Slide in printed **part number 0** and fasten with a screw M3x10{{https://remoteqth.com/img/wiki-wx-station-32.jpg}} \\ \\ 
-  - Pass two lashing straps to attach to the mast{{https://remoteqth.com/img/wiki-wx-station-33.jpg}} \\ \\ 
- 
-\\ 
 ---- ----
  
-===== Passive thermometer sun shield =====+===== Web interface =====
  
-This part need for acurrate measure of temperature.+If you enter the IP address of your weather station in the web browser, it will be displayed 
 +  - **MQTT wall** - client connected to MQTT broker that displays received values every 5 minutes \\ {{https://remoteqth.com/img/wiki-wx-station2-mqtt.png?150}} 
 +  - The page header displays basic information and important links 
 +    - **APRS** (if active) - link to the APRS map, where you can view the annual history of values, link to view the WX chart \\ {{https://remoteqth.com/img/wiki-wx-station2-aprs.png?150}} 
 +    - **Upload FW** - a link to the web interface of the weather station intended for updating the firmware, by uploading a .bin file \\ {{https://remoteqth.com/img/wiki-wx-station2-ota.png?150}} 
 +    - **Releases** - link to GitHub for downloading the latest version of the firmware in .bin format 
 +    - **html preview** - a simple page showing values for the last 5 min cycle \\ {{https://remoteqth.com/img/wiki-wx-station2-wx.png?150}}
  
-  * First step **measure** mouting pipe diameter \\ {{ https://remoteqth.com/img/wiki-wx-station-40.jpg?400}} \\ 
-  * Now open **source code** in OpenScad and change line <code>MOUNTDIA  =  42;</code> 
-  * Change the parameter gradually from 1 to 3 <code>Part  =  1;</code> then press F6 and F7 for .STL export this part. Other parts not depend to mounting pipe diameter. \\ 
-  * After complete all STL parts you can **start 3D printing with WHITE PETG** filament. Sun-shield part nr 4 you print four times. \\ {{https://remoteqth.com/img/wiki-wx-station-53.png}} \\ 
-  * Check all parts \\ 
-| M3 x10 mm | 18x | 
-| M3 x 20mm | 3x | 
-|  Outdoor DS18B20 temperature sensor | 1x | 
-| Plastic binder | 5x | 
-  * {{https://remoteqth.com/img/wiki-wx-station-41.jpg}} \\ 
-  * {{https://remoteqth.com/img/wiki-wx-station-42.jpg?420}} {{https://remoteqth.com/img/wiki-wx-station-43.jpg?420}} \\ 
-  * {{https://remoteqth.com/img/wiki-wx-station-44.jpg}} 
-  * {{https://remoteqth.com/img/wiki-wx-station-45.jpg}} 
-  * {{https://remoteqth.com/img/wiki-wx-station-46.jpg}} 
-  * {{https://remoteqth.com/img/wiki-wx-station-47.jpg}} 
-  * {{https://remoteqth.com/img/wiki-wx-station-48.jpg}} 
-  * {{https://remoteqth.com/img/wiki-wx-station-49.jpg}} 
-  * {{https://remoteqth.com/img/wiki-wx-station-50.jpg}} 
-  * {{https://remoteqth.com/img/wiki-wx-station-51.jpg}} 
-  *   * {{https://remoteqth.com/img/wiki-wx-station-52.jpg}} 
-  *  
- 
-\\ 
 ---- ----
  
 +===== Firmware compilation =====
  
 +  - Install [[https://www.arduino.cc/en/Main/Software|Arduino IDE]]
 +  - Install ESP32 support from [[https://github.com/espressif/arduino-esp32|GitHub]]
 +    - prefered via **[[https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md|board manager]]**
 +  - Install [[https://www.arduino.cc/en/guide/libraries|Arduino libraries]]
 +    - WiFi, rev 2.0.0
 +    - EEPROM, rev 2.0.0
 +    - Ethernet, rev 2.0.0
 +    - ESPmDNS, rev 2.0.0
 +    - ArduinoOTA, rev 2.0.0
 +    - Update, rev 2.0.0
 +    - AsyncTCP, rev 1.1.1
 +    - ESPAsyncWebServer, rev 1.2.3
 +    - FS, rev 2.0.0
 +    - AsyncElegantOTA, rev 2.2.5
 +    - PubSubClient, rev 2.8
 +    - Wire, rev 2.0.0
 +    - Adafruit_Unified_Senso, rev 1.1.2
 +    - Adafruit_BMP280_Library, rev 2.5.0
 +    - Adafruit_BusIO, rev 1.9.8
 +    - SPI, rev 2.0.0
 +    - Adafruit_HTU21DF_Library, rev 1.0.4
 +    - SD_MMC, rev 2.0.0
 +    - OneWire, rev 2.3.6
 +    - DallasTemperature, rev 3.9.0
 +    - the current list can be found in {{https://github.com/ok1hra/3D-print-WX-station/blob/master/wx.ino#L78|source code}}
 +  - Download firmware from [[https://github.com/ok1hra/3D-print-WX-station|GitHub]]
 +  - Select menu Tools/Board:"OLIMEX ESP32-POE"
 +  - Connect
 +    - USB-C between WX station and PC (Select menu Tools/Port/YOUR-CONNECTED-PORT)
 +    - or Network ports \\ {{https://remoteqth.com/img/3d-wx-station-10.png?200}}
 +  - Upload firmware
 +    - password for OTA upload is //remoteqth//
  
-===== Instalation ===== +----
-  * Three mounting type are available +
-    * Horizontal pipe need tune parts [[3d_print_wx_station#d_print|number 3]] to same diameter and 3d print +
-    * Vertical pipe need tune parts [[3d_print_wx_station#d_print|number 3]] to same diameter and 3d  +
-    * 6mm hole for vertical rod +
-  * During instalation respect orientation by down side sign to South-North orientation+
  
 +====== Running own services ======
  
-===== ToDo ===== +===== MQTT broker ===== 
-  LoRa firmware support+MQTT is a universal protocol that is used to communicate the WX station with other devices (WiFi e-ink display). The control node transmitting this information is the MQTT broker. The default settings of the WX station use the **public MQTT broker of the Internet at the address remoteqth.com.** In order to avoid dependence on an Internet connection or the availability of a public MQTT broker, **we recommend that you install your own MQTT broker** on a Raspberry PI or other device in the local network. For this you can **use some of the public instructions like [[https://www.makeuseof.com/install-mqtt-server-node-red-raspberry-pi-home-automation/|this]] one** (without installing NodeRed). \\ 
 +After installation, **change the settings** of two items (MQTT broker IP and MQTT broker port) in the Setup section, according to the IP address of your local MQTT broker.
3d_print_wx_station.1611944398.txt.gz · Last modified: 2021/01/29 18:19 by ok1hra