本教程专为初学者设计,即使你对 Linux 或 LoRaWAN 完全不了解,也能一步步完成搭建。我们将使用常见的硬件(如 Raspberry Pi)和开源软件(如 ChirpStack),在 Linux 环境下部署一个完整的 LoRaWAN 网关系统。
第一步:准备 Linux 系统
确保你的 Linux 系统已更新:
sudo apt update && sudo apt upgrade -y
安装必要依赖:
sudo apt install mosquitto mosquitto-clients redis-server postgresql git curl -y
第二步:安装 ChirpStack
ChirpStack 是一个功能强大且开源的 LoRaWAN 网络服务器,支持 Linux 平台。我们通过官方仓库安装:
# 添加 GPG 密钥 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1CE2AFD36DBCCA00 # 添加仓库 echo "deb https://artifacts.chirpstack.io/packages/4.x/deb stable main" | sudo tee /etc/apt/sources.list.d/chirpstack.list # 安装 ChirpStack 组件 sudo apt update sudo apt install chirpstack chirpstack-gateway-bridge -y
第三步:配置数据库
ChirpStack 使用 PostgreSQL 存储设备和应用数据:
sudo -u postgres psql -c "create database chirpstack;" sudo -u postgres psql -c "create user chirpstack with password 'chirpstack';" sudo -u postgres psql -c "grant all privileges on database chirpstack to chirpstack;"
然后导入初始 SQL 结构:
sudo -u postgres psql chirpstack -f /usr/share/chirpstack/database/postgresql/schema.sql
第四步:配置网关桥接器(Gateway Bridge)
编辑配置文件 /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml,设置 MQTT 服务器地址(默认 localhost 即可)。
启动服务:
sudo systemctl start chirpstack-gateway-bridge sudo systemctl enable chirpstack-gateway-bridge
第五步:启动 ChirpStack 网络服务器
编辑主配置文件 /etc/chirpstack/chirpstack.toml,确认数据库和 Redis 配置正确。
sudo systemctl start chirpstack sudo systemctl enable chirpstack
现在,打开浏览器访问 http://你的Linux设备IP:8080,首次登录使用默认账号:
用户名:admin
密码:admin
第六步:注册网关与设备
在 Web 界面中:
- 创建一个“组织”(Organization)
- 添加你的 LoRaWAN 网关(填写网关 EUI 和描述)
- 创建应用(Application)
- 在应用中添加终端设备(Device),填写 DevEUI、AppKey 等信息
当你的物理 LoRa 设备上电后,如果配置正确,它会自动加入网络,并开始上报数据!
常见问题排查
- 检查网关是否通电并与 Linux 主机正确连接(通常通过 SPI 或 USB)
- 查看服务日志:
journalctl -u chirpstack -f - 确保防火墙允许 1700(UDP)、8080(HTTP)、1883(MQTT)端口
结语
通过本教程,你已经成功在 Linux 上搭建了一个完整的 LoRaWAN 网络。这不仅节省了商业网关的成本,还为你提供了完全的控制权和扩展能力。无论是用于学习、实验还是小型项目部署,这套 开源LoRaWAN 方案都非常实用。
记住我们的四个核心关键词:Linux LoRaWAN、LoRaWAN网关配置、开源LoRaWAN 和 Linux物联网通信,它们将帮助你在后续搜索相关资料时更高效。
现在,就去连接你的第一个 LoRa 传感器吧!