<feed xmlns='http://www.w3.org/2005/Atom'>
<title>iot-contact, branch debug-network-issue</title>
<subtitle>IoT device to check if doors and windows are closed or open</subtitle>
<id>https://cgit.xengineering.eu/iot-contact/atom?h=debug-network-issue</id>
<link rel='self' href='https://cgit.xengineering.eu/iot-contact/atom?h=debug-network-issue'/>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/'/>
<updated>2024-08-30T07:52:41Z</updated>
<entry>
<title>firmware: Add default IP for debug-network-issue.py</title>
<updated>2024-08-30T07:52:41Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-30T07:52:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=0820760bc556ddef7af5c7cd75565abbd3102698'/>
<id>urn:sha1:0820760bc556ddef7af5c7cd75565abbd3102698</id>
<content type='text'>
That way the script works without any command line options which is
convenient. The selected IP is the default IPv4 address used by Zephyr.
</content>
</entry>
<entry>
<title>firmware: Add tools/debug-network-issue.py</title>
<updated>2024-08-30T07:49:07Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-30T07:41:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=3b976f78160c3acca82fc2da53207cd85b548cdd'/>
<id>urn:sha1:3b976f78160c3acca82fc2da53207cd85b548cdd</id>
<content type='text'>
This script can be used to analyze an issue which causes that the
microcontroller is not able to communicate via the network after roughly
every second boot.
</content>
</entry>
<entry>
<title>firmware: Add minimal README</title>
<updated>2024-08-29T16:01:53Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-29T15:56:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=0ff8c7370ad87ac450b32955210a1ec366413d61'/>
<id>urn:sha1:0ff8c7370ad87ac450b32955210a1ec366413d61</id>
<content type='text'>
This adds instructions for:

- Python environment setup
- building the firmware
- flashing the firmware
- get output from the Zephyr shell
- removing the firmware from the device
</content>
</entry>
<entry>
<title>firmware: zephyrproject: Add requirements.txt</title>
<updated>2024-08-29T15:46:51Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-29T15:46:51Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=f60daa445ff4daf4aa40d2d5b35197b4e5eadd0d'/>
<id>urn:sha1:f60daa445ff4daf4aa40d2d5b35197b4e5eadd0d</id>
<content type='text'>
This is (hopefully) the minimal set of Python dependencies required to
execute the firmware build.

It is meant to be installed inside a Python virtual environment (venv).
To add one which is not accidentally tracked by Git a .gitignore files
is added too.
</content>
</entry>
<entry>
<title>firmware: Adapt CMakeLists.txt to Git submodules</title>
<updated>2024-08-29T15:39:27Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-29T15:39:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=04f4abae5822fe166c9100e36e4631bbb82744e5'/>
<id>urn:sha1:04f4abae5822fe166c9100e36e4631bbb82744e5</id>
<content type='text'>
The following properties are now set in CMakeLists.txt:

- Zephyr kernel path
- required Zephyr module paths
- selected board

This makes the command line call for CMake trivial:

    cmake -Bbuild -GNinja

The user does not have to specify these options on the command line.
</content>
</entry>
<entry>
<title>firmware: Add Zephyr sources as Git submodules</title>
<updated>2024-08-29T14:31:35Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-29T12:17:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=22d914b78ece2e67d4bd2c6829f716b5760594c1'/>
<id>urn:sha1:22d914b78ece2e67d4bd2c6829f716b5760594c1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tools: Remove last tool download.sh</title>
<updated>2024-08-24T19:26:28Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-24T19:26:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=6bb372e0ca443bda11f05d19ba96742f5de2027a'/>
<id>urn:sha1:6bb372e0ca443bda11f05d19ba96742f5de2027a</id>
<content type='text'>
The provided documentation download is not useful anymore. It might be
re-introduced later if required.
</content>
</entry>
<entry>
<title>firmware: Implement printk output on button press</title>
<updated>2024-08-23T16:47:48Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-23T16:47:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=73ecc1b734d4ea1102f9aa1057782a381e2768e2'/>
<id>urn:sha1:73ecc1b734d4ea1102f9aa1057782a381e2768e2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>firmware: Implement minimal IPv6 firmware</title>
<updated>2024-08-23T15:33:46Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-23T15:24:37Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=fa22728ea19c81202899305fc118176ca3f7042b'/>
<id>urn:sha1:fa22728ea19c81202899305fc118176ca3f7042b</id>
<content type='text'>
This firmware enables as much as required for the device to be reachable
by ICMP via an link-local IPv6 address. The address can be looked up via
the Zephyr shell with `net ipv6`.

This is useful to check if the network stack basics work.
</content>
</entry>
<entry>
<title>pcb: Remove folder</title>
<updated>2024-08-23T14:58:30Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-08-23T14:58:30Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=0db3f05ade565c23bc1654b5a88af4a06c71e17e'/>
<id>urn:sha1:0db3f05ade565c23bc1654b5a88af4a06c71e17e</id>
<content type='text'>
It is planned to switch to Ethernet instead of LoRa for communication.
Thus the custom PCB with the STM32WL MCU does not make sense anymore. To
get started the Ethernet variant will use a ST NUCLEO board to avoid
creating a custom PCB first.
</content>
</entry>
<entry>
<title>pcb: Add TLV70233 voltage converter</title>
<updated>2024-06-08T13:49:59Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-08T13:49:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=63b35a95cf6f29b867e27f9bb99fa03a4b5c4fa3'/>
<id>urn:sha1:63b35a95cf6f29b867e27f9bb99fa03a4b5c4fa3</id>
<content type='text'>
This IC has a small footprint and will provide the 3.3 V for the
microcontroller.
</content>
</entry>
<entry>
<title>tools: Print doc path after executing download.sh</title>
<updated>2024-06-07T19:25:38Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-07T19:25:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=4d4cb2a8fd79ffd6e65c7a7546dc9aba4e867656'/>
<id>urn:sha1:4d4cb2a8fd79ffd6e65c7a7546dc9aba4e867656</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tools: Add checksum check to download.sh</title>
<updated>2024-06-07T19:24:39Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-07T19:24:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=60784a9ebaa6168b03851f359a83478c70c7dbeb'/>
<id>urn:sha1:60784a9ebaa6168b03851f359a83478c70c7dbeb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tools: Add download.sh to get external doc files</title>
<updated>2024-06-07T15:40:14Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-07T15:40:14Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=d8f8de953044328932836a450cbb4157736ba2d2'/>
<id>urn:sha1:d8f8de953044328932836a450cbb4157736ba2d2</id>
<content type='text'>
It is unknown if it would be legal to include those external documents
like datasheets inside this Git repository. Thus the added script
provides the ability to get them directly from the vendor.
</content>
</entry>
<entry>
<title>pcb: Split into a hierarchy of schematics</title>
<updated>2024-06-05T19:38:47Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-05T19:38:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=2b38114643b68670092d6c389c51a0ae01d50e04'/>
<id>urn:sha1:2b38114643b68670092d6c389c51a0ae01d50e04</id>
<content type='text'>
</content>
</entry>
<entry>
<title>pcb: Add 10-pin ARM Cortex debug connector</title>
<updated>2024-06-05T19:20:48Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-05T19:20:22Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=ba97734a2cbfff1b73581fd275bbd26583fdda89'/>
<id>urn:sha1:ba97734a2cbfff1b73581fd275bbd26583fdda89</id>
<content type='text'>
</content>
</entry>
<entry>
<title>pcb: Add USB-C connector to schematic</title>
<updated>2024-06-05T19:09:50Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-05T19:08:22Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=0bcd66f32c6fcd24b01fc87b0d02c9ac4431b938'/>
<id>urn:sha1:0bcd66f32c6fcd24b01fc87b0d02c9ac4431b938</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tools: build.sh: Export PCB drawing as PDF</title>
<updated>2024-06-05T18:03:34Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-05T18:03:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=98d0231116b51f2945bed8b0c9336fb3e048dea3'/>
<id>urn:sha1:98d0231116b51f2945bed8b0c9336fb3e048dea3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tools: Add clean.sh</title>
<updated>2024-06-05T17:48:43Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-05T17:48:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=869792d4b9030e0153ae882fd2e4cb6ecab7e159'/>
<id>urn:sha1:869792d4b9030e0153ae882fd2e4cb6ecab7e159</id>
<content type='text'>
This allows to conveniently remove files which are not tracked in
version control.
</content>
</entry>
<entry>
<title>tools: Add build.sh to export PDF schematics</title>
<updated>2024-06-05T17:45:11Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-05T17:45:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=e6fc87d14aa2fcf30812b6b7bccd35dd3026631e'/>
<id>urn:sha1:e6fc87d14aa2fcf30812b6b7bccd35dd3026631e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>pcb: Add outline to PCB</title>
<updated>2024-06-03T19:23:05Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-03T19:23:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=69d66f534ca25bce98ee1984325149891f27f76c'/>
<id>urn:sha1:69d66f534ca25bce98ee1984325149891f27f76c</id>
<content type='text'>
This makes the KiCad project a valid PCB as a minimal starting point.
</content>
</entry>
<entry>
<title>pcb: Place MCU in PCB editor</title>
<updated>2024-06-03T19:10:40Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-03T19:10:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=618ba4fa7b6da3695dca35a49b2b3beb5c695a53'/>
<id>urn:sha1:618ba4fa7b6da3695dca35a49b2b3beb5c695a53</id>
<content type='text'>
</content>
</entry>
<entry>
<title>pcb: Add STM32WL55JCIx microcontroller</title>
<updated>2024-06-03T19:04:28Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-03T19:04:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=11cb5dc9e86a92314d78999674fe675ea3d52b78'/>
<id>urn:sha1:11cb5dc9e86a92314d78999674fe675ea3d52b78</id>
<content type='text'>
Based on UM2592 the development kit Nucleo WL55JC which is used for
firmware development is based on the STM32WL55JCI7 microcontroller.

Thus this MCU should be a good starting point for now.
</content>
</entry>
<entry>
<title>pcb: Save *.kicad_pro file after first KiCad run</title>
<updated>2024-06-03T18:49:48Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-03T18:49:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=c0c3baed554830a8990f99da888db87beb38edc1'/>
<id>urn:sha1:c0c3baed554830a8990f99da888db87beb38edc1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>pcb: Create empty KiCad 8.0 project</title>
<updated>2024-06-03T18:45:41Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-03T18:45:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=6053827028a6590196baea8a3928fa10c1f2ddc6'/>
<id>urn:sha1:6053827028a6590196baea8a3928fa10c1f2ddc6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add KiCad documentation link to README</title>
<updated>2024-06-03T18:22:06Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-06-03T18:22:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=064934874c84ca0ed7c59076972b7031ade4a375'/>
<id>urn:sha1:064934874c84ca0ed7c59076972b7031ade4a375</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fw: Customize shell prompt</title>
<updated>2024-04-14T17:56:23Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-04-14T17:56:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=9ac3df7349f04733a1807d1ab5d0819d6bf08fdf'/>
<id>urn:sha1:9ac3df7349f04733a1807d1ab5d0819d6bf08fdf</id>
<content type='text'>
The shell prompt was changed from the default 'uart:~$ ' to
'[iot-contact] ' so that it is more visible which kind of firmware is
running on the device.
</content>
</entry>
<entry>
<title>fw: Add basic Zephyr application firmware</title>
<updated>2024-04-14T15:13:52Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-04-14T15:13:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=c852c3e4047b0a31910bf89436d620281a508029'/>
<id>urn:sha1:c852c3e4047b0a31910bf89436d620281a508029</id>
<content type='text'>
This is enough to validate that the firmware is running by using the
integrated Zephyr shell.
</content>
</entry>
<entry>
<title>Add README.md</title>
<updated>2024-04-14T15:12:25Z</updated>
<author>
<name>xengineering</name>
<email>me@xengineering.eu</email>
</author>
<published>2024-04-14T15:12:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit.xengineering.eu/iot-contact/commit/?id=f950daa67777b79037cf545111d4348cfeba3c0e'/>
<id>urn:sha1:f950daa67777b79037cf545111d4348cfeba3c0e</id>
<content type='text'>
</content>
</entry>
</feed>
