5/09/2020

Ubiquiti loco m5 ตั้งค่า AP และ Station

Ubiquiti loco m5 ตั้งค่า AP และ Station
รูป AP to Station
การต่อสาย

ตั้งค่า IP และ User : Password Default
IP : 192.168.1.20
User : ubnt
Pass : ubnt
Set IP เครื่องไปวง 1 เพื่อตั้งค่าเริ่มต้น

ตั้งค่า AP
1. Tab Mani จดค่า Mac ไว้สำหรับ Connect

2. Tab Wireless ตั้งค่า Wireless Mode

3. Tab Network ตั้งค่า

4. Tab Advanced
Distance : ปรับระยะทางให้เหมาะสมกับการใช้งาน กี่กิโลระยะที่ติดตั้งกับ Station

5. Tab System ตั้งค่ารหัส Admin ใหม่

ตั้งค่า Station
1. Tab Network ตั้งค่า

2. Tab Advance ตั้งค่า

3. Tab Wireless ตั้งค่า Wireless Mode

แล้ว Select AP เพื่อให้ Connect ระหว่าง AP และ Station

4. Tab System ตั้งค่ารหัส Admin ใหม่ และชื่อ


นำ Notebook มาต่อ Port Lan ที่ POE ของ Station
Set IP แล้วลอง Ping หา AP ดู

http://sys2u.com/xpert/viewtopic.php?f=37&t=3277

onoff 4CH : Sonoff4CH flash program Tasmota-8.2.0

Sonoff 4CH : Sonoff4CH flash program Tasmota-8.2.0 สำหรับรดน้ำที่สวน
1. Program Tasmota download
https://github.com/arendst/Tasmota/releases/tag/v8.2.0

2. Flash ผ่าน Program Atom ที่ลง platformio ด้วย
https://intranet.sci.com/blog.php?u=281&b=1598

3. เวลา Flash ก่อน เสียบต้องกดปุ่ม IO0 แช่ไว้ก่อนเสียถึงจะ Flash ผ่าน
การต่อสาย
https://intranet.sci.com/blog.php?u=281&b=1685
รูป


4. แตกไฟล์ที่โหลดได้จากข้อ 1 แล้ว Add Project เข้า Atom
แก้ platformio.ini
เอา ; ออก จะเขียนใส่อุปกรณ์ไหนให้เลือกให้ตรง
env_default = tasmota


ใส่ port ที่จะ Upload เดิมเป็น COM5
upload_port = /dev/ttyUSB0


**** สำคัญบางครั้ง Flash แล้ว Config Wifi ไม่เปลี่ยนจำ IP เดิม WIFI เดิม ต้องแก้ที่ข้อ 6 ****
5. แก้ เข้าไปที่ sonoff --> my_user_config.h

// If not selected the default will be SONOFF_BASIC
#define MODULE SONOFF_4CH // [Module] Select default model from tasmota_template.h

// -- Wifi ----------------------------------------
#define WIFI_IP_ADDRESS "192.168.2.7" // [IpAddress1] Set to 0.0.0.0 for using DHCP or enter a static IP address
#define WIFI_GATEWAY "192.168.2.2" // [IpAddress2] If not using DHCP set Gateway IP address
#define WIFI_SUBNETMASK "255.255.255.0" // [IpAddress3] If not using DHCP set Network mask
#define WIFI_DNS "192.168.0.253" // [IpAddress4] If not using DHCP set DNS IP address (might be equal to WIFI_GATEWAY)

#define STA_SSID1 "SCI_GARDEN" // [Ssid1] Wifi SSID
#define STA_PASS1 "PASSWORD" // [Password1] Wifi password

#define NTP_SERVER1 "192.168.0.2"


6. ถ้ามีปัญหาเรื่อง Wifi ไม่จับกับ Wifi ตัวใหม่ต้องแก้แบบนี้
6.1. กดปุ่ม IO0 4 ครั้งติด ๆ กัน ตัวเครื่อง Sonoff จะปล่อย Hostsport Wifi
6.2. นำ Note book มาต่อ wifi เข้า IP 192.168.4.1 จะพบหน้าตั้งค่า Wifi หรือกด Scan for wifi network เพื่อหา wifi ที่จะต่อแล้วใส่รหัส
จึงจะ connect ได้ซึ่ง Flash บังคับไปในไฟล์ Rom ไม่มีผล

7. ตั้งค่า MQTT เพิ่มเติม จะได้ไม่ต้องแก้ Home Assistant ใหม่ 2 ที่
7.1. MQTT

7.2. รหัส Login Sonoff และชื่อที่เรียกใช้ เพื่อให้ HA เดิมสั่งงานได้ โดยไม่ต้องแก้ที่ HA

Next Cloud : Next Cloud Update แล้วเปิดไฟลื PDF ไม่แสดงข้อมูลใน PDF

Next Cloud : Next Cloud Update แล้วเปิดไฟลื PDF ไม่แสดงข้อมูลใน PDF ต้อง Download แล้วมาเปิดข้างนอกถึงจะดูข้อมูลได้
วิธีแก้
แก้ที่ apache
  1. nano /etc/apache2/conf-enabled/ssl-params.conf

ใส่ # หน้าแถว
#Header always set X-Frame-Options DENY

แล้ว Restart apache

https://help.nextcloud.com/t/new-nextcloud-15-installation-pdf-viewing-does-not-work/43767

Code PHPBB3 Post Reply Topic.

Code PHPBB3 Post Reply Topic.
ถ้า Submit Post Action ไปไฟล์อื่น ต้องใส่ enctype="multipart/form-data" ด้วย
แต่กรณีนี้จะส่งผ่าน Java ไม่ต้อง Reload หน้า Web Code ดังนี้
HTML
  1. <div id="dialog-edit-upload" title="Upload รายงานความคืบหน้า Project หรือ PMC" style="display:none;">
  2.     <form method="POST" enctype="multipart/form-data" id="myform">
  3.         <div>Upload pdf ไฟล์ เพื่อแนบรายงานความคืบหน้าแต่ละเดือน</div>
  4.         <table width='100%' border='0'>
  5.         <tr>
  6.             <td nowrap>ประจำเดือน : </td>
  7.             <td><input name='P_Month' id='P_Month_field' size='3' readonly="readonly"><input type="hidden" name='PHPBBID' id='PHPBBID_field'></td>
  8.         </tr>      
  9.         <tr>
  10.             <td nowrap>Upload PDF ไฟล์ : </td>
  11.             <td align='left' class='default'><input type="file" name="P_FILE_MONTH" id="P_FILE_MONTH_ID"></td>
  12.         </tr>                                                  
  13.         </table>   
  14.     </form>
  15. </div>


Java
  1. function editUpload(ACTION){
  2.     var str = ACTION;
  3.     var ActionArray = str.split(',');
  4.    
  5.     $('#P_Month_field').val('');
  6.     $('#P_FILE_MONTH_ID').val('');
  7.     $('#PHPBBID_field').val('');
  8.    
  9.     $('#PHPBBID_field').val(ActionArray[0]);
  10.     $('#P_Month_field').val(ActionArray[1]);
  11.    
  12.     //var target = "project_upload.php?ACTION=" + ActionArray[0] + ',' + ActionArray[1];
  13.     var target = "project_upload.php";
  14.     $( "#dialog-edit-upload" ).dialog({
  15.         resizable: false,
  16.         width:420,
  17.         height:250,
  18.         modal: true,   
  19.         buttons: {
  20.             "Yes": function() {            
  21.             //$('#PHPBBID_field').val() ;
  22.             // Get form
  23.             var form = $('#myform')[0];
  24.      
  25.            // Create an FormData object
  26.             var data = new FormData(form);
  27.      
  28.            // If you want to add an extra field for the FormData
  29.            //data.append("CustomField", "This is some extra data, testing");
  30.      
  31.            // disabled the submit button
  32.             //$("#btnSubmit").prop("disabled", true);
  33.      
  34.             $.ajax({
  35.                 type: "POST",
  36.                 enctype: 'multipart/form-data',
  37.                 url: target,
  38.                 data: data,
  39.                 processData: false,
  40.                 contentType: false,
  41.                 cache: false,
  42.                 timeout: 800000,
  43.                     success: function(ret) {
  44.                         //alert("บันทึกข้อมูลสำเร็จ !");
  45.                         if(ret == 'OK'){
  46.                             alert("บันทึกข้อมูลสำเร็จ ");                      
  47.                         } else {
  48.                             alert("บันทึกข้อมูลไม่สำเร็จ กรุณาตรวจสอบ ! ");   
  49.                         }
  50.                         $('#P_Month_field').val('');
  51.                         $('#P_FILE_MONTH_ID').val('');
  52.                         $('#PHPBBID_field').val('');
  53.                     },
  54.                 });
  55.                 $( this ).dialog( "close" );
  56.           },
  57.             Cancel: function() {
  58.                 $( this ).dialog( "close" );
  59.             }
  60.         }   
  61.     });
  62. }


PHP
  1. if(!empty($PHPBBID)){      
  2.         include($phpbb_root_path . 'includes/functions_posting.' . $phpEx);
  3.         include($phpbb_root_path . 'includes/message_parser.' . $phpEx);
  4.                
  5.         $message_parser = new parse_message();
  6.         $message_parser->parse_attachments('P_FILE_MONTH', 'post', 139, true, false, false);
  7.         //$message_parser->parse_attachments('P_FILE_MONTH', 'post', $NumberForum, true, false, false);
  8.        
  9.         //function upload_attachment($form_name, $forum_id, $local = false, $local_storage = '', $is_message = false, $local_filedata = false);
  10.         //$upload_parser = new parse_upload();
  11.         //$upload_parser -> upload_attachment('P_FILE_MONTH', 18429, $local = false, $local_storage = '', $is_message = false, $local_filedata = false);
  12.        
  13.         $my_subject = "รายงานความคืบหน้าเดือน $P_Month";
  14.         $my_text = "รายงานความคืบหน้าเดือน $P_Month";
  15.         $poll = $uid = $bitfield = $options = '';
  16.         generate_text_for_storage($my_subject, $uid, $bitfield, $options, false, false, false);
  17.         generate_text_for_storage($my_text, $uid, $bitfield, $options, true, true, true);      
  18.        
  19.         $data = array(
  20.             'forum_id'      => 139,
  21.             'topic_id'      => $PHPBBID,
  22.             //'topic_id'      => 18429,
  23.  
  24.             'icon_id'       => false,
  25.  
  26.             'enable_bbcode'     => true,
  27.             'enable_smilies'    => true,
  28.             'enable_urls'       => true,
  29.             'enable_sig'        => true,
  30.  
  31.             'message'       => $my_text,
  32.             'message_md5'   => md5($my_text),
  33.                        
  34.             'bbcode_bitfield'   => $bitfield,
  35.             'bbcode_uid'        => $uid,
  36.  
  37.             'post_edit_locked'  => 0,
  38.             'topic_title'       => $my_subject,
  39.             'notify_set'        => false,
  40.             'notify'            => false,
  41.             'post_time'         => 0,
  42.             'forum_name'        => '',
  43.             'enable_indexing'   => true,
  44.            
  45.             'attachment_data' => $message_parser->attachment_data,
  46.             'filename_data' => $message_parser->filename_data
  47.                
  48.         );
  49.        
  50.         submit_post('reply', $my_subject, '', POST_NORMAL, $poll, $data);      
  51.        
  52.         echo "OK";
  53.     } else {
  54.         echo "ERROR";   
  55.     }