project: SLAB1

2019-07-22 - ongoing
a picture of SLAB1 running envClock at 13:17:21.080 with a temperature of 22.41 and humidity of 70.08

the first ARM based impetuOS devboard.
this features

on boot SLAB1 currently runs a programme from the SD card. this programme shows the current time, temperature and humidity on the display, it stops when a switch on the red PCB is pressed. the programme can be configured to transmit the temperature and humidity over LoRa but currently doesnt. if no environment sensor is found the programme will enter receiver mode where it will use temperature and humidity values from LoRa.

blog

date: 2024-04-02 23:38:25 other projects: impetuOS PILE1
work is being done to enable an i2c environment sensor(SCC30-DB) on PILE1

electronically it all seems reasonable but there have been some issues with the existing i2c and sensor drivers as used in SLAB1, these are:

the I2C mcs register does not always assert the busy flag fast enough to not miss when waited on, leading to missed errors

the environment sensor was either never polled particularly fast on SLAB1 or read errors were ignored; this led to a hang in reads on the PILE1 test code

a sequence of failed I2C repeated start were observed, this is either because of a (potentially long standing) driver issue or a misunderstanding. old pull requests and issues relating to the tivaC_I2C driver did not make any mention of repeated start not working; in fact there was an issue with a lack of stop conditions leading to everything being a repeated start, this makes it more likely that this is a bad oobservation where there was some other behaviour involved...

the environment sensor output revealed a humidity of around 70% which matched the humidity on the day((taken from the met office) this test was performed many times on different days and was always within reasonable bounds of error