A screw-propelled vehicle is a type of land or amphibious vehicle that uses one or more auger-like cylinders fitted with a helical flange to move. The cylinders are rotated by an engine, and the flange engages with the ground or water to propel the vehicle forward. Screw-propelled vehicles are often used in areas with difficult terrain, such as snow, ice, mud, and swamps. They are also used in some military applications.
Supplies

Parts
- 2*N20 motor 3v 50 rpm
- 25mm 5v fan
- TP4056 BMS
- 2*Red LED
- Heat sink for camera
- Heat sink for Xiao
- DRV8833 motor controller
- Slide ON-OFF switch
- Seeed Studio XIAO ESP32S3 Sense
- 2*18650 battery ( I am using a battery from an old laptop )
- 12*CSK Allen M3 x 10mm
- 2*Socket Botton Head Cap Screw M3 x 20 mm
- heat sink compound
- connecting wires kit
- Kapton tape
Tools
- Allen key
- Sandpaper
- 3d printer
- Soldering kit
- Glue gun
History of Screw-Propelled Vehicles
The concept of a screw-propelled vehicle (SPV) was first proposed by Leonardo da Vinci in the early 1500s. However, it was not until the 19th century that the first practical SPVs were built. These early SPVs were used for a variety of purposes, including agriculture, transportation, and military applications. In 1868, Jacob Morath, a Swiss immigrant to the United States, patented a twin-screw plowing machine. This machine was one of the first examples of a practical SPV. In 1899, the Peavey brothers of Maine built one of the first screw-propelled vehicles that was used for transportation. Their vehicle was used to transport goods between their farm and a nearby railroad station. In the early 1900s, SPVs began to be used for military applications. The British Army used SPVs to transport troops and supplies during the Boer War. The German Army used SPVs to transport troops and supplies during World War I. Today, SPVs are used for a variety of specialized applications, such as search and rescue, oil and gas exploration, and military applications.
(Source Wikipedia)
Modeling in Autodesk Fusion 360
I used Fusion 360 for planning and designing this robot, but I am not fully getting into how I modeled it, but we will look at how I designed the screw wheels of this robot, and we will discuss it in the next step, you can skip this step if you need. all design files are given below
let's start with creating a cylinder
- make a coil from the top side of the cylinder we are going to choose a diameter of 20mm, and I choose these parameters
- Revolution: 2
- Height : -120mm
- Section: Triangular
- Section size: 9mm
- Operation: Join
you can play with this parameter as you like
- Rotate the cylinder to 180° and again create a coil in it and use the same parameter that was used previously
- Now we need to make the cylinder sides pointy for that I created a sketch and used the Revolve tool with cut operation
yep, we made it.
3D Printing
I used my Anet a8 for 3d printing these parts, it is like 6 years old, sorry for the print quality, I will update to Anyubic Karbo 2 Neo soon !!. 3d printing screw wheels were hard because of the difficulty of removing the supports,
Uploading Code to XIAO
I always like to upload the code to the microcontroller before assembly. Here we are using a tiny Xiao esp32s3 sense from the Seeedstudio. It is a highly integrated, Xtensa processor ESP32-S3R8 SoC, which supports 2.4GHz WiFi and low-power Bluetooth BLE 5.0, As the advanced version of Seeed Studio XIAO ESP32S3, this board comes with a plug-in OV2640 camera sensor for displaying full 1600*1200 resolution.
I am using Arduino IDE for flashing the code follow these tutorials for setting up IDE for XIAO ESP32S3 and learn more about this board
https://www.youtube.com/watch?v=qNzlytUdB_Q&t=944s
and thanks techiesms for the code and inspiration for this project
Testing the Xiao
After flashing the Xiao will start a wifi hotspot
SSID : ROBO
Password: PASSPASS
const char* ssid = "ROBO"; //Enter SSID WIFI Nameconst char* password = "PASSPASS"; //Enter WIFI Password
you can change this if you need from Code.ino
After Xiao has created a hotspot successfully it will show an IP address in the serial monitor
AP IP address: http://192.168.4.1Starting web server on port: '80'Starting stream server on port: '81'
after connecting wifi with your smartphone open your browser and enter this 192.168.4.1 IP address, wait for the connection establishment. if everything works you can see your face in it 😅
Wiring Diagram
The brain of this robot is Xiao, there are signal 4 wires from the Xiao going to the DRV8833 motor controller, and the main power source is two 3.7v 18650 batteries connected in parallel, we are using a TP4056 Battery Charging Module for recharging the batteries. we have a small 5v fan for cooling the xiao, We have two N20 3v 50rpm motors which are controlled by the DRV8833, We also have two LEDs for the illumination, all of which can be switched on with an ON/OFF slide switch
Assembly and Wiring
I tried my best to make the assembly simple, most of the components are fixed with a hot glue
now we can start with led
Step 1
After cutting the terminals of led, I connected two LEDs in parallel,
Step 2
I attached the lead to the main with a glue gun
Step 3
I solder all GPIO pins with a long wire and also tagged all the wires with corresponding GPIO numbers
Step 4
I covered all exposed copper pads under the xaio with kapton tape , I am including a heat sink behind it for dissipating heat from the xiao , Kapton tape will help to prevent copper pads from touching the aluminum heat-sink
Step 5
I put some heat sink compound to the big heat sink
Step 6
Put that heat sink to the back of Xiao
Step 7
I glued Xiao to the main body and also put the small heat sink to the camera module
Step 8
Make sure that camera module is visible through the fro hole
Step 9
Remove the sticker on the back of the antenna and past it to the main body
Step 10
I connected two batteries in parallel. and connected bms to it , Everything is attached with hot glue
Step 11
Glued the battery to the main body
Step 12
Attached is the ON-OFF switch to the main body
Step 13
Attached is the small fan for the main body
Step 14
Glued the DRV8833 on top the battery and connected all wires according to the circuit diagram
Step 15
Run the motor wires through two small holes in the back of the main body and connect the wires to two motors
Step 16
Insert the motors in the square holes in the motor holder
Step 17
Attach the back support with four M3 10mm screws
Step 18
Attach the motor holder to the back support two M3 10mm screws
Step 19
Attach the left and right wheels to the motor shaft
Step 20
Attach the font wheel support to the main body with two M3 10mm screws, and attach the left and right wheels with M3 20mm screws to the front wheel support
Step 21
Attach the top plate with four M3 10mm screws
Assembly completed
Connect the robot with the smartphone wifi ( step 6)
flip the robot upside down and observe the motor rotation direction, make sure it is rotating as shown below when you press the left and right button
forward and backward test
thanks for going along with this project, i still like to improve this project I am planning for a second version of this robot, a more powerful full motor and fully weather-sealed body, i still couldn't test this on snow because of the geographical limitations, there is still room for improvement, let me know your suggestions
My special thanks to seeedstudio Fusion team for providing Xiao esp32s3 sense board for this project