Jens Willmer

Tutorials, projects, dissertations and more..

Independent IoT System (1) BoM and 3D models

This project creates a system that can run an ARM Linux server 24/7 without any external power. The system will run on batteries that are charged by a solar panel. A remote monitoring solution will track the system and collect sensor data.

The initial data collection will focus on the system performance:

  • solar power output
  • battery levels
  • system power consumption
  • temperature and moisture inside the case

Bill of materials

Most of the parts were already present from other projects. In case all the parts need to be ordered the bill will be around 150€ (without shipping). But it can also be much cheaper if you do not use the convenient prototype boards and shields.

Electrical Junction Box IP67 Waterproof
Solar Panel 5V, 840mA
2x 10000mAh Lipo cells
Raspberry Pi Zero
Screw terminal
WIFI Antenna 2.4Ghz, 5dbi
SMA Pigtail
Current/Voltage/Power Monitor
E-Ink display module
UPS mobile power board
Temperature/humidity sensor
Hex spacers screws
Ribbon cable 40 pin
40 pin plug
40 pin socket
Foam insulator

3D Model

The 3D models are made in Fusion 360. The source file1 as well as the STL files of the battery level2 and the electronics level3 can be found at the bottom of the post. The latest versions can be found in the GitHub repository that will be published with the second part of the series.

The 3D model of the battery grill has a spacer in the middle to allow air ventilation from below. This is not necessary when mounting the two batteries with Velcro (instead of zip ties) since the Velcro tape will already create enough space between battery and the battery grill. In this case the insolation can be placed closer to the battery grill.

The 3D model of the electronics level has holes for the 40-pin sockets. The modules (hats) will be connected by a 40-pin ribbon cable that will be mounted at the bottom of the plate. The two standoffs in the picture are supporting the modules since the 40-pin sockets are preventing mounting screws. The rest of the wholes are for fasteners and cable outlets.

The Raspberry Pi as well as the modules will be fastened by hex spacer screws. One spacer screw will be mounted at the bottom of the electronics level to increase steadiness.

Since some components can be scavenged from other projects (button and sensors) it is hard to add specific mounting holes that are flexible enough to accommodate the different dimensions. For this reason, the model does not include holes for all components. These components will be mounted with the use of a glue gun.

Enclosure slice
Battery grill
Electronics level
Box dimensions (the small holes are not on the same level as the big holes!)
Box dimensions (not 100% accurate!)


In the next part of the series we will assemble the parts, take care of the wiring and setup the scripts.