IoT-3_Mentoring Pertemuan 11
Understanding Domain and Hosting Registration
Introduction to Domain and Hosting
- The speaker introduces the topic of domain and hosting, questioning if everyone is familiar with these concepts.
- It is mentioned that participants will receive a domain and hosting from "Arama," emphasizing that they do not need to purchase it individually.
What is a Domain?
- A domain is explained using examples, such as "jagoanhosting.com" and "arkatama.id," illustrating how domains are structured.
- The speaker provides an example of a domain format, indicating that it should end with ".web.id."
Steps for Registration
- Participants are instructed to register on the website jaguanhosting.com before checking for available domains.
- The process begins with logging into the website and filling out personal information accurately.
Completing the Registration Form
- Participants must ensure their billing address matches their registration details; optional fields can be left blank.
- Questions regarding the registration process are welcomed, allowing for clarification among participants.
Checking Domain Availability
- After registering, users should check if their desired domain name is available; if it shows as available, they can proceed.
- Emphasis is placed on using Gmail accounts for registration in Google Forms to avoid issues.
Troubleshooting Domain Issues
- If a chosen domain name is unavailable, participants are encouraged to try different names until they find one that works.
Discussion on Google Form and Task Management
Filling Out the Google Form
- The speaker reminds participants to refill their forms, confirming that they can do so if needed.
- Clarification is provided regarding filling out addresses correctly in the form, emphasizing the importance of accurate information.
- Participants are informed that certain fields cannot be changed once submitted; if changes are necessary, a new form must be filled out.
Address and Contact Information
- There is a distinction made between address and contact information; both need to be accurately represented in the form.
- The speaker reiterates that address details differ from contact details, highlighting the necessity for precision.
Personal Information Requirements
- Participants are prompted to provide personal information such as date of birth and profession, with options available for students or non-students.
Upcoming Tasks and Responsibilities
- A reminder is given about checking tasks assigned previously, with instructions on how to register a new domain after logging in.
- Discussion about upcoming tasks indicates that there may still be outstanding assignments from previous sessions.
Mentoring Session Follow-Up
Addressing Previous Assignments
- The speaker opens the floor for questions regarding past assignments, encouraging those who faced issues to speak up.
Class Attendance Concerns
- Acknowledgment of irregular class attendance due to breaks; clarification on whether physical attendance at campus is required.
Technical Guidance on Documentation
Utilizing Resources Effectively
- Participants are encouraged to refer back to documentation available online for assistance with their tasks.
Collaboration Among Peers
- Emphasis on collaboration among peers is highlighted; participants should feel free to ask questions within their group.
Project Development Insights
Progress Check on Coding Tasks
- Participants who have not yet started coding are urged to begin working on their projects promptly due to time constraints before deadlines.
Understanding API Development
- Discussion includes insights into API development processes, stressing that front-end concerns may not be necessary for current tasks.
Final Thoughts on Project Execution
Focused Approach Towards Models
Project Instructions and Component Setup
Overview of the Task
- The task involves using real devices instead of Wi-Fi for project implementation, as hosting has yet to be set up.
- The focus is on creating a schematic diagram; actual components will be used for implementation.
Required Components
- Participants need to prepare two main components: a potentiometer and an ESP32 module.
- The potentiometer should be connected correctly to the jumper wires, ensuring proper alignment with the ESP32.
Functionality of Components
- The potentiometer outputs an analog value ranging from 0 to 4095.
- This range corresponds to temperature values that need conversion into Celsius, specifically from 0°C to 100°C.
Conversion Process and Deadlines
Temperature Conversion
- Participants are tasked with mathematically converting the potentiometer's output (0–4095) into a temperature scale (0–100°C).
Submission Guidelines
- Late submissions will still receive credit, but those who do not submit at all will not receive any points.
Clarifications on Toolkit Availability
Potentiometer Availability
- There was confusion regarding the availability of potentiometers in the toolkit; participants were encouraged to check or purchase if necessary.
Description of Potentiometers
- A specific type of potentiometer (10k ohm), commonly used in sound systems for volume control, was discussed.
Hosting and Domain Registration
Importance of Hosting
- Participants were instructed on registering with Jagoan Hosting for domain selection and hosting services.
Domain Selection Process
- Each participant can choose their own domain name, which is essential for accessing their IoT applications online.
IoT Application Development
Setting Up IoT Applications
- The goal is to transition local IoT panels onto the internet via hosting services so data can be sent and processed online.
Final Remarks on Project Execution
Understanding ESP32 Communication with IoT Server
Setting Up the Environment
- The process begins with running a command using PHP artisan to set up the network.
- Emphasis on utilizing PHP for executing tasks related to the project.
Importance of Network Connectivity
- Establishing communication between the ESP32 and laptop is crucial, requiring both devices to connect to the same Wi-Fi network.
- Once connected, data from the ESP32 will be sent to an IoT server via HTTP CLI.
Data Transmission Protocol
- The communication between ESP32 and server will utilize HTTP protocol for data transmission.
- Questions are encouraged regarding front-end aspects before delving into technical details.
Project Specifications and Requirements
- The project involves using a potentiometer sensor to measure temperature, converting voltage readings into Celsius.
- Successful completion of Task 5 is essential for progressing to Task 6, as they are interconnected.
Troubleshooting and Testing
- A reminder that missing any previous task could hinder progress in subsequent tasks due to their sequential nature.
- Testing involves checking database entries through GET methods to confirm if data from ESP32 has been successfully transmitted.
Engaging with Participants
- Encouragement for participants to ask questions; lack of inquiries may indicate understanding of prior discussions.
- An invitation for additional input or demonstrations from participants regarding their experiences or challenges faced during implementation.
Demonstration of Functionality
- A demonstration shows how new data appears in the database when received from the temperature sensor.
- Participants are reminded not to forget running necessary scripts or programs related to their setup.
Final Checks Before Execution
- Verification of IP settings is highlighted as a critical step before proceeding with uploads or tests.
Uploading Programs and Real-time Testing
- The speaker prepares to upload code onto the microcontroller (ESP32), sharing screen access for visibility on program execution.
- Live testing demonstrates real-time changes in temperature readings based on potentiometer adjustments, showcasing successful integration.
Q&A Session on IoT and GitHub
Introduction to the Q&A
- The speaker invites questions from participants regarding tasks, IoT, and project-related queries, emphasizing that all tasks are feasible as they have been personally tested.
Clarifications on Previous Tasks
- Participants can ask about previous assignments or current tasks related to IoT. The speaker encourages open communication for any uncertainties.
Technical Insights on SP32
- The speaker explains the functionality of an LED indicator on the SP32 device, which signals when it is powered on.
Encouragement for Questions
- The speaker expresses mixed feelings about a lack of questions; while happy to provide answers, they feel lonely discussing topics without engagement from participants.
Discussion on GitHub and GitLab Usage
- A participant inquires about using GitHub and GitLab for projects. The speaker clarifies that both platforms can be used interchangeably depending on user preference.
Understanding GitHub Functionality
Overview of GitHub as a Platform
- GitHub is described as a platform for storing programming projects that can be shared with others. It allows users to manage their code collaboratively.
Repository Options: Public vs Private
- Users have the option to create either public or private repositories. Public repositories allow anyone access, while private ones restrict visibility to selected users.
Accessing Libraries from GitHub
- If libraries are available publicly on GitHub, programmers can utilize them freely in their own projects, similar to how social media platforms share content but focused on code.
Technical Guidance for Project Execution
Domain Registration Issues
- A participant mentions issues with network connectivity affecting domain registration. The speaker reassures them about successful registration after troubleshooting.
API Routing Explanation
- The speaker discusses routing APIs and emphasizes the importance of accessing specific endpoints correctly within local host settings for data retrieval.
Step-by-Step Project Instructions
- Clear instructions are provided for completing project tasks sequentially by following steps outlined in previously shared documents. This includes creating models and controllers systematically.
Final Thoughts and Support Offer
Availability for Further Questions
- The speaker reiterates their willingness to assist participants who may encounter difficulties during project execution or coding challenges related to microcontroller programming.
Understanding Microcontroller Programming with Visual Studio Code
Overview of Programming Environments
- The speaker discusses the limitations of a specific website for microcontroller programming, emphasizing that DM is focused on creating code for microcontrollers.
- Visual Studio Code (VS Code) is introduced as a general-purpose Integrated Development Environment (IDE), supporting multiple programming languages like Python, PHP, JavaScript, and .NET.
- The need for additional configuration in VS Code is highlighted due to its broad focus compared to more specialized IDEs.
Uploading Programs to Microcontrollers
- A clarification is made regarding the terminology; uploading code to microcontrollers is akin to using Arduino IDE.
- The speaker prepares to share their screen and demonstrate coding practices while introducing the audience to the process.
Required Extensions for VS Code
- To upload code successfully, several extensions are necessary: Platform.io, Arduino for VS Code, C++ extension pack, and CMake tools.
- After installing these extensions, users can create new projects within VS Code and begin coding.
Project Management and Coding Practices
- Once coding is complete in VS Code, users can upload their programs directly to the microcontroller.
- The speaker encourages questions from participants about the uploading process or any related topics.
Discussion on IoT Projects
- Participants are invited to discuss ongoing IoT projects; one project mentioned has been operational continuously since its completion.
- A humorous exchange occurs regarding group projects where students pool resources for final assignments.
Examples of Student Projects
- An example project discussed involves an automatic plant watering system controlled by a microcontroller.
- Another project includes a joystick-controlled robot utilizing an ISP controller.
Domain and Hosting Insights
- The conversation shifts towards domain names and hosting services; free options are praised as beneficial compared to costly alternatives.
- Pricing details are shared about purchasing domains, highlighting how students can save money by utilizing free services provided during their course.
Questions About Course Material
- Participants are encouraged to ask questions about previous lessons or materials covered earlier in the day.
- A discussion arises comparing different teaching sessions on HTTP protocols and RESTful APIs.
Mentoring Session Overview
Introduction to Mentoring and Task Submission
- The session begins with a reminder that theoretical explanations will be provided by Pak Agung during the mentoring.
- Participants are instructed to submit their mentoring tasks in PDF format, emphasizing the importance of proper submission methods.
- Acknowledgment of task submissions; participants are encouraged to continue working on their assignments if they haven't submitted yet.
Addressing Questions and Errors
- Participants are invited to ask questions about their tasks during the mentoring session for immediate assistance.
- Challenges of addressing errors via chat are discussed; sharing screens on Zoom is preferred for better error visibility.
- The speaker compares troubleshooting programming errors to a fortune teller's ability, highlighting the need for visual aids like screenshots or videos for effective problem-solving.
Preparing for Upcoming Events
- Reminder about recording sessions for those who miss them, ensuring everyone has access to materials post-session.
- Discussion about the upcoming holiday (Lebaran), with light-hearted comments on shopping and preparation among participants.
Shopping and Community Engagement
- Humorously discusses the urgency of buying new clothes before Lebaran, warning against last-minute shopping.
- Promotion of an online store (Arkatama), encouraging participants to purchase items such as clothing and notebooks in preparation for Lebaran celebrations.
Closing Remarks and Encouragement
- Emphasis on community engagement through shared experiences during Lebaran, including potential encounters with others wearing similar attire from Arkatama.
- Open floor for questions; humorously addresses a participant's confusion regarding bathroom breaks instead of asking questions.
Final Thoughts on Tasks and Responsibilities
- Encouragement to seek out free food options (takjil) during Ramadan as part of community spirit while also discussing digital transformation initiatives within the group (DTS).