|Product Performed to Expectations:||8|
|Specifications were sufficient to design with:||8|
|Demo Software was of good quality:||10|
|Product was easy to use:||8|
|Support materials were available:||9|
|The price to performance ratio was good:||10|
|TotalScore:||53 / 60|
I tested this board using Makecode, Micropython and Arduino IDE.
Using Microsoft Makecode
In order to install the extensions for this board, select "Advanced" -> "Extensions" -> type in "Kitronik". The two extensions are: kitronik-klimate and kitronic-rtc.
Kitronik Klimate has only three blocks: read temperature (in C and F), read pressure (in Pa and mBar), read humidity. They are pretty easy to use.
Kitronik RTC has blocks that set and read year, month, day, hour, minute, seconds. Again, very easy to use. The only issue that I had was setting the year: only the last two digits of the year should be used, not all four of them (the slider has values between 0 and 99)
A simple code to test the functionality of the board:
Conclusion: it is really intuitive to use the Klimate board with Makecode. I highly recommend this approach!
I wanted to recreate the same program using Micropython.
For the RTC, there is a Micropython library at https://github.com/KitronikLtd/micropython-microbit-kitronik-rtc. I tested the code using the online Python editor for microbit. I had an error at line 56, but changing the code from tens = decNumber / 10 to tens = decNumber//10 , I was able to run the code.
For the BME280 - Initially, when I looked on the Kitronik page for the Klimate board (https://www.kitronik.co.uk/5636-klimate-board-for-the-bbc-microbit.html) at the Questions section, the official answer was that there was not going to be a Python library for the BME280, as the code it is too large for the microbit. However, it seems that Kitronik did post the code at
https://github.com/KitronikLtd/micropython-microbit-kitronik-klimate. I tested it in the online Python editor and it is working, but I doubt some more functionality could be added to it.
Conclusion: I was able to set and read the date and time from the MCP7940 RTC and read the BME280 sensor, but not at the same time. There isn't enough space for both programs.
Using Arduino IDE
I connected an OLED display to the Klimate board. Now I have the following connections:
- I2C - BME280 Environmental Sensor (I2C address: 0x76)
- I2C - MCP7940 RTC (I2C address: 0x6F)
- I2C - SSD1306 OLED display (I2C address: 0x3C)
I used the following libraries:
Adafruit_SSD1306, Adafruit_GFX - for the display
MCP7940 (https://github.com/SV-Zanshin/MCP7940) - for the RTC
I also used the example at Micro:bit and bme280 environmental sensor example | Microbit learning for the BME280.
I was able to display the date, time, temperature and relative humidity (I am also reading the barometric pressure, but there was not enough space to display it on the 128x64 display). The whole program fits into 22% of the program memory - plenty of space left for extra functionality!
Conclusion: all functions of the board can be accessed with Arduino IDE. Moreover, a multitude of options might be added (different outputs etc), as the memory is less than a quarter full.