Machine learning (ML) applications in Internet of Things (IoT) scenarios face the issue that labeled data is expen- sive and hard to obtain. In addition, the performance of the trained models usually depends on a specific context: (1) lo- cation, (2) time and (3) data quality. In this work, we propose a weak-supervision approach for the IoT domain to auto- generate labels based on external knowledge (e.g., domain knowledge) through simple labeling functions. Our approach enables quick re-training of ML models for new contexts by removing the labeling bottleneck. We evaluate our approach in a smart transportation scenario, where we classify trans- port modes using mobile sensor data. Our weakly-supervised model achieves a micro-F1 score of 80.2%, with only seven labeling functions. This is close to the 81% of a fully super- vised model, which requires manually labeled data.