Module Changelog

Module Changelog

This changelog documents the evolution of the Internet of Things Class learning module, including major milestones, content updates, and technical improvements.


Version 1.0.0 - January 2025 (Current Release)

Status: βœ… Production Ready - Digital HTML Edition

Major Milestone: Complete LaTeX to Quarto Migration

This release represents the complete transformation of the original LaTeX-based IoT textbook into a modern, interactive Quarto learning module with significant content enhancements.

πŸ“Š Content Statistics

  • Total Lines: 256,310 (enhanced 6.9x from original 36,956 LaTeX lines)
  • Chapters: 114 sections organized into 8 major parts
  • Images: 903 references (896 unique images)
  • Protocols Covered: 30+ IoT protocols and standards
  • Code Examples: Hundreds of executable Python snippets

✨ New Features

Interactive Digital Edition

  • βœ… Executable Python Code - All code examples can be run directly
  • βœ… Full-Text Search - Find any topic instantly across all chapters
  • βœ… Cross-Referenced Navigation - Clickable links between related concepts
  • βœ… Responsive Design - Works on desktop, tablet, and mobile
  • βœ… Syntax Highlighting - Color-coded code in multiple languages
  • βœ… Margin Notes - Citations and references in page margins
  • βœ… Reader Mode - Distraction-free reading experience
  • βœ… Back-to-Top Navigation - Easy page navigation

GitHub Integration

  • βœ… Edit This Page - Direct links to GitHub source
  • βœ… Report Issues - Built-in feedback mechanism
  • βœ… Version Control - All changes tracked in Git
  • βœ… Automated Deployment - GitHub Actions CI/CD pipeline

Content Enhancements

  • βœ… Learning Objectives - Clear goals for each chapter
  • βœ… Callout Boxes - Notes, warnings, tips highlighted
  • βœ… Modern Examples - Updated for 2025 technologies
  • βœ… Expanded Explanations - Deeper coverage of complex topics
  • βœ… Structured Tables - Comparison tables and specifications
  • βœ… Professional Diagrams - 900+ high-quality illustrations

πŸ“š Content Coverage

Part 1: Applications and Use Cases (5 Chapters)

  • IoT overview and fundamentals
  • Application domains across industries
  • Real-world use cases
  • Business models and monetization strategies
  • Interactive Python examples for cost analysis

Part 2: Architecture (17 Chapters)

  • Architectural enablers and components
  • Wireless sensor networks (WSN)
  • Multi-hop ad-hoc networks
  • Cloud, fog, and edge computing
  • UAV networks and M2M communication
  • Software-defined networking (SDN)
  • Sensing-as-a-Service models

Part 3: Sensing and Actuation (7 Chapters)

  • Sensors and actuators overview
  • Mobile phones as sensors
  • Electricity and electronics fundamentals
  • Analog and digital electronics
  • Practical circuit examples

Part 4: Communication Networks (34 Chapters)

  • Networking basics and layered models
  • Short-range protocols: Bluetooth, Zigbee, Thread, Z-Wave, NFC
  • LPWAN protocols: LoRaWAN, Sigfox, NB-IoT, Weightless
  • Application protocols: MQTT, CoAP, AMQP, XMPP
  • Network protocols: 6LoWPAN, RPL, IPv6
  • Physical layer: IEEE 802.15.4, WiFi, RFID
  • Routing algorithms and topologies
  • Design implications and trade-offs

Part 5: Data Analytics (7 Chapters)

  • Big data in IoT context
  • Data storage and databases
  • Multi-sensor data fusion
  • Interoperability and standards
  • Edge vs. cloud processing
  • Machine learning and inferencing
  • Interactive ML code examples

Part 6: Privacy and Security (11 Chapters)

  • Security and privacy overview
  • Cyber-security methods
  • Threats, attacks, and vulnerabilities
  • Threat modeling and mitigation
  • Privacy-by-design principles
  • Encryption and safeguards
  • Device and network security
  • Mobile privacy
  • Secure software practices

Part 7: Human Factors and Interaction (8 Chapters)

  • User experience design
  • Design models for IoT
  • Connected device interaction
  • Location awareness
  • Interface and interaction design
  • Understanding people and context

Part 8: Design Strategies and Prototyping (13 Chapters)

  • Hardware prototyping
  • Software prototyping
  • Simulation tools
  • Programming paradigms
  • Network design and simulation
  • Traffic analysis
  • Software platforms and frameworks
  • Specialized prototyping kits
  • Energy-aware design
  • Context-aware energy management
  • Hardware/software optimization
  • Reading spec sheets
  • Design thinking and planning

πŸ”§ Technical Infrastructure

Publishing Platform

  • Framework: Quarto 1.8.24
  • Pandoc: 3.6.3
  • Python: 3.11 (for code execution)
  • Format: HTML (primary), PDF (planned)
  • Output Directory: docs/
  • Repository: https://github.com/ngcharithperera/iotclass

Deployment

  • Platform: GitHub Pages
  • URL: https://ngcharithperera.github.io/iotclass/
  • CI/CD: GitHub Actions
  • Automatic: Builds on every push to main branch

Quality Assurance

  • βœ… 100% Content Transfer - All substantial LaTeX content migrated
  • βœ… 100% Image Availability - All 903 image references working
  • βœ… 100% Link Validity - All 13,696 internal links validated
  • βœ… Code Syntax Highlighting - Verified across all examples
  • βœ… Cross-Browser Testing - Compatible with modern browsers
  • βœ… Mobile Responsive - Tested on multiple device sizes

πŸ“– Documentation Added

This release includes comprehensive documentation:

  • DEPLOYMENT_GUIDE.md - Complete deployment instructions
  • QA_SUMMARY_REPORT.md - Quality assurance results
  • PDF_BUILD_ISSUE.md - Known limitations and workarounds
  • README.md - Repository overview and quick start

⚠️ Known Limitations

PDF Build Issue

  • Status: Non-Critical
  • Issue: Python kernel cleanup error during PDF generation
  • Impact: PDF format not currently available
  • Workaround: HTML edition provides superior features (interactive code, search)
  • Planned: Future resolution via alternative rendering approaches
  • Documentation: See PDF_BUILD_ISSUE.md for details

Minor Warnings

  • ~60 non-critical div warnings in HTML build
  • Does not affect rendering or functionality
  • No impact on user experience

🎯 What’s Next

🧭 Structural Reorganization

  • Split large chapters into focused subchapters across Architecture, Communication Networks, Sensing, Data, and Security to improve navigation and readability.
  • Updated _quarto.yml navigation to reflect the new structure while preserving existing URLs where possible.
  • Refreshed Learning Hubs (Quizzes, Videos, Simulations) to point to the new subchapters and correct anchors.
  • Ran a repo‑wide div/callout sweep; resolved unclosed/stray fenced‑divs introduced during splitting for clean HTML builds.

Short-term (Planned for v1.1)

  • Resolve PDF build issue
  • Add end-of-chapter quizzes
  • Include video content where appropriate
  • Create instructor resource package
  • Add lab assignment templates

Medium-term (Future Versions)

  • Interactive code execution in browser
  • Student progress tracking
  • Discussion forum integration
  • Multi-language support
  • Accessibility improvements (WCAG 2.1 AA)

Long-term Vision

  • IoT device integration for live demos
  • Virtual lab environment
  • Auto-grading system for assignments
  • Adaptive learning paths
  • Community-contributed content

Pre-Release History

Beta Version - October 2025

  • LaTeX to Quarto migration completed
  • Image migration (903 images)
  • Content enhancement (6.9x expansion)
  • Quality assurance testing
  • GitHub Actions deployment setup

Alpha Version - September 2025

  • Initial Quarto framework setup
  • Chapter structure defined
  • First content conversions
  • Image organization system

Original LaTeX Version - 2020-2024

  • Comprehensive LaTeX textbook
  • 8 chapters, 123 files
  • 36,956 lines of content
  • 896 images and diagrams
  • Used in multiple university courses

Version Numbering

This project uses semantic versioning (MAJOR.MINOR.PATCH):

  • MAJOR: Significant content restructuring or major feature additions
  • MINOR: New chapters, substantial content updates, feature enhancements
  • PATCH: Bug fixes, typo corrections, minor content improvements

Current Version: 1.0.0


How to Stay Updated

For Students and Instructors

The HTML edition is automatically updated with each improvement. Simply refresh your browser to see the latest version. Check this changelog for details on what’s new.

For Contributors

See the GitHub repository for: - Recent commits: https://github.com/ngcharithperera/iotclass/commits/main - Open issues: https://github.com/ngcharithperera/iotclass/issues - Pull requests: https://github.com/ngcharithperera/iotclass/pulls

Reporting Issues

Found a bug or typo? Have a suggestion?

  • GitHub Issues: https://github.com/ngcharithperera/iotclass/issues
  • Edit This Page: Use the link at the top of any chapter
  • Report Issue: Use the built-in issue reporting link

License and Usage

For Educational Use: Free to use for teaching and learning

Version History: All versions tracked in Git - View history: git log --oneline - Tag releases: Major versions tagged (e.g., v1.0.0)


Changelog Maintenance

This changelog is maintained as part of the module’s front matter and updated with each significant release. For detailed change history, see the Git commit log.

Last Updated: January 2025 Current Version: 1.0.0 Status: Production Ready (HTML Edition)


For the complete version history including all commits, see the GitHub repository.

Back to top