Folkrace 187


In Swedish Robot Championship there’s a tournament that is called Folkrace where autonomous cars is racing around a track. A sub class of this is a miniature race in scale 1:87.


So I started out on a Fuller Car system truck in scale 1:87. It have some really nice suspension and drivetrain but is made for following a iron track.


A NodeMCU development kit (ESP8266) almost fitted the truck bed, if i filed of 0.5mm of it i fitted perfectly.


I solved the steering by cutting a hole, big enough for a small servo, in the trucks chassis.
Then i glued on a small magnet that aligned with the already existing magnet in the steering system.


I then mounted 3 VL53L0X ToF (Time of FLight) distance sensors inside the cab of the truck. The sensors is pointing out from the same holes the windows are located.
The sensors will be used to locate walls and other trucks, it’s gives a pretty low resolution, but should be enough.


The space inside the truck bed is cramped, and I mean it. After fitting a small H-bridge, a couple of batteries and some cables together with a start module nothing more can fit.

As if the cramped space inside the truck bed was not a challenge big enough I choose to run Micro Python on the MCU.
It’s pretty nice and all, I could remotly upload new Python code to the flash and run my test scripts inside a Python interactive terminal.
You can find the code here: https://github.com/TimGremalm/Folkrace187

I found the challenges of the small form factor thrilling, it was a really fun adventure puzzling everything together and make it look pretty stock.
But there is room for many improvements! The Fuller Car system have a very nice steering system, and it’s very useful for a future design.
But Fullers drive train is a worm gear, it makes it strong but gives the drive train some momentum that makes the car slow in response when braking och switching between going forward and backwards. For future builds I would have to build my own drive train.

The cramped space inside the truck bed is due to a lot of premade modules and a lot of cables. A more effective way of doing it would be to make a PCB with a ESP8266, H-bridge and sensor bus built in.

Also I think I would abandon Micro Python for C and Free RTOS. The VL53L0X driver is very slow in Micro Python and it takes too long to read 3 sensors. The whole driver thing is pretty hard to fault find and gives great me a great hazzle.

Prop for Downton Abbey larp


For the larp 1912 we wanted to have servant bells like in Downton Abbey.


Carl Nordblom made a nice looking construction for the bells using leaf springs.


An ESP8266 is listening on some bell topics for messages. If a message is received it will swing the corresponding servo with a bell hooked up.


To trigger the bells we built a box with a auto returning string to pull. The strings is hooked up to a micro switch witch triggers the reset pin on a ESP8266.
When the ESP8266 starts it sends a message on the corresponding MQTT topic to ring, then enter heavy sleep mode.

Flashbar for festival using sACN over WiFi with ESP8266

IMG_7393
This flashbar, aka blinder, was used under a concert to give a blinding effect for the audience.

IMG_7345IMG_7347IMG_7350
A mosfet driver is enabling the LED’s. The LED’s is 10W element, and there is 8 elements on the flashbar giving 80W of power.
It’s powered from an PC power supply.

The ESP8226 is running a small UDP server and listens for sACN packets. sACN is like DMX512, but over UDP instead of RS-485.
You can find the firmware here https://github.com/TimGremalm/FlashBar.

IMG_7353IMG_7360
The LED’s are screwed down on top of a steel bar to transfer the heat.

IMG_7396IMG_7378IMG_7383IMG_7391IMG_7395

Orkide Random – A IoT flower with pretty random power

A video posted by Tim Gremalm (@timgremalm) on


Probably the most random plant in the world, it fetches a “true” random signal and display pretty colors on a WS2812 addressable LED strip.
The seed is based on one of the best randomization generators; cosmic background radiation from random.org. Yet another Internet of Things device made out of the ESP8266, the dirt cheap powerful WiFi enabled microcontroller.
IMG_6704
IMG_6705IMG_6706IMG_6707

IMG_6708IMG_6709IMG_6710IMG_6712IMG_6713IMG_6714IMG_6711

IoT Nalle dances to Twitter feed

IMG_6683
An Internet of Things enabled teddy bear that dances at filtered Twitter statuses.

IMG_6684
IMG_6685IMG_6688IMG_6686IMG_6687
To move the teddy bears arms servos is used. It’s a pretty simple setup, some extenders for the arms that is going through the real arms of the teddy bear.
The servos is quite weak, so they bearly move the arms at all.

IMG_6689
IMG_6690
Mounting of the servos.

IMG_6691
IMG_6692
The electronic setups contains of a small cheap microprocessor called ESP8266. The ESP8266 have a small WiFI-antenna integrated in the breakout board and can hook up to any access point, or even create one.
I’m running the firmware NodeMCU , it’s a real time LUA interpreter. So the firmware is only programmed once on the flash. To write your own program you just transfer them over serial UART, and the firmware will save the script on flash.
The processor is running at 80MHz so it’s pretty fast.

IMG_6693
I’m using Twitters API to fetch the latest post on a specific search term. The API gives me a detailed formated JSON file containing the time and date of the post, as well as the post.
The Twitter API is quite messy to work with, a lot of headers and authentication is required. The ESP would likly handle both the SSL and the big JSON format, but it will steal some CPU-time and it’s hard to work with. I made a PHP-proxy for the twitter feed, parsing the time and date and presenting it in unix timecode. The message of the post is stored as an MD5 hash sum.
On the IoT Nalle i keep track of the already “danced” Twitter posts and only dnaces to new posts.

IMG_6695
IMG_6694IMG_6696IMG_6697
Final assembly, a lot of hot glue and screws was used.