The Ultimate Bike Odometer
The most goated bike tracker / bike speed teller you've ever seen. Built in GPS, LTE (Cellular), microSD card interface, 2x LCD, 1x E-ink, and all-round coolness. (ik this is glaze but trust. more detailed description here: https://github.com/roc-ket-cod-er/Cpeedo-mk5)
Created by
Madhav 🚀
Tier 1
53 views
5 followers
Madhav 🚀
added to the journal ago
Some Basic Routing Fixes & STM32
So firstly I spent like a bajillion years on trying to figure out how the STM32 should be set, and just ended up adding a debug header, alongside a pull up on the NRST pin. The debug header made really good use of the mostly empty 4th Layer.

In addition, I also cleaned up the area around here:

So that there are only 3 layers being used, to make it so that the fourth layer is as much ground as possible to make sure the antenna is really, really happy.
Madhav 🚀
submitted The Ultimate Bike Odometer for review ago
Madhav 🚀
added to the journal ago
Finished Everything Up: Made it Submission Ready
Worked On the BOM, got all the prices, simulated checkout.

Also got the Github Repo looking nice. I have the CAD, with the F3Z file and the STEP file. I also have the Production PCB stuff with the gerbers, BOM, pickandplace and the .EPRO for the easyeda project.
I also worked on the Firmware, which took FOREVER as it is like impossible to figure out how the STM32 stuff works. I think I have the basic code in the repo, but idk.
the VAST majority of time went towards the firmware and BOM. Checking everything out take a bunch of time...
Madhav 🚀
added to the journal ago
3D animation
I got this fire animation to render! it took over 21 hours! that was absolutely crazy and actually cost me a significant amount of electricity.
Here's the render!
You can also see the PCB now.

Madhav 🚀
added to the journal ago
Photo Realistic Renders.
As anyone with any blender knowledge will tell you, blendering is crazy time intensive. Especially if it's your first time. After about 8 hours of work, here it is:
A photorealistic shot:

But of course, i have more for you!
So in class, we had an animation unit, and I got the basic hang of how animation works, and I implemented that into a setup on blender. Here's the stuff! (I did mess around with the lighting, animation, and background so it looks better. First, some shots:



And here's the video if you can access it. It has no sound btw.
Madhav 🚀
added to the journal ago
Finished the Case!
Ok firstly, I did this work yesterday, but i grinded too late so i couldn't journal
Screws
screws, screws, screws.

Basically, I just added a bajillion screw holes with counter-sink. took me way too long, but hey.

Bike mount
I went outside and measured the size of my bike bar, and modeled around it!



in all:

Madhav 🚀
added to the journal ago
3D modeling
I finished the base stuff!
I just have to add some screws so that the main truss can connect to the other parts, and so that the top plate can do so too.

Finished case:



Some inside shots







It was pretty simple of a thing ngl, but I still had to figure out how to split stuff. Next up, the screws & mounting to my bike. After that I'm going to speedrun some software, and try to submit this!
Madhav 🚀
added to the journal ago
Vias, IMU, and Costs, and Impedance Matching
I don't really know how much I talked about Impedance matching before, but that's first up!
Impedance Matching
So like I sort of messed up the previous impedance matching, as it was accidentally set to the signalling on layer 2, not the top one. That was a relatively quick fix, but I had to double-triple check that it was correct, and then double-triple check that the stackup wouldn't mess with anything else.

I also had to re-place a bunch of vias around the line, as making it slightly thicker made it so that the vias were now too close for DRC to like.
Suture Vias
Y'know how before I talked about via spacing, right? Well screw that I'm not going to be putting a via every 0.6mm. Instead, only in the GPS area, I will have some 0.7mm spacing,

and everywhere else I'll settle for just 0.2MM spacing. 
Again, this was with the help of @tty7
IMU
For whatever reason, JLCPCB chose to make the IMU I was using into a standard assembly part,

But lucky enough for me, my friend @tty7 was able to point me to the ICM42 series IMUs, in which by random chance I picked one with very similar functions, and the exact same layout. All I had to change was a single capacitor from 10nf to 100nf.
Cost
I know all of this because I just so happened to have been checking the total cost. All IMU mess was just a byproduct.

Here's the picture before taxes and everything. You should note that the PCB is $42, and assembly is $160.
Assembly.
Out of assembly, you can see that about 42% are one time setup fees, about 40% are the components' fee, and the rest 18% are just for soldering and double checking the solder is good.
note.
It should also be noted that the fee is without any coupon being applied and without shipping and taxes
Lora
Yep. I spent some time contemplating whether or not putting on lora is a good idea, especially as a low-operational-cost alternative to cellular, if it even works.
But I sort of came to the conclusion that it wouldn't be worth the cost, as I would also need a receiver.
Cell RF.
Well yeah that was close. So mainly that that came out of my conversation with @mpk was that I needed to change my trace widths, but not by a ridiculous amount. For the coplanar part, that is.
So basically I had to change this wire to 3x its size, ~0.11mm to 0.35. Well that is absolutely huge, but other than that, I only really had to move the matching circuit and all of its vias in line,
and also put vias all around the board by hand to limit the board doing funny stuff, and I also had to recalculate the coplanar wire parts, several times, because it wasn't matching Max's calculations, and then I had to look up the prepregs' dielectric constant to see if that was the problem, and then I just ended up seeing the difference with my calculations and his, but all in all it was a small 5%.
Yeah by the way that was sarcasm. It was a metric tonne of work. AND i also forgot to do any work for my other duties...
Madhav 🚀
added to the journal ago
Stuckification
I'm sort of stuck rn.
Like i don't really know how to build the other part of the enclosure, especially because I don't really know the dimensions.
Let me explain.
So basically, here's what I have so far.
BACK:

FRONT:

The thing is, for strength reasons, it makes most sense to machine the plates, however the machined items should be just that: plates. I want to make this entire thing as cheap as possible, so I am sort of confused.
So here's the thing:
I have a plate.

But I don't know the size of the E-INK. that's ok, i can put that in once I get it.
The problem is here:

I need a way to basically just attach the bottom, the middle plate, and the top plate together.
I am thinking that I could just extend the plastic cover further, however that would end up making the vast majority of this out of a weaker material.
I guess that really is my only good option...
Yeah. After some thinking, I think I can actually make this work.
hmm...
Yeah I think that I can make it so that the plate will attach to the PCB shell as it is, and from further on top it will just be a shell thingy, as its only a bit taller, about a CM. Once the main part ends, then the top plate will be attached to the top.
I still don't like this...
Madhav 🚀
added to the journal ago
Added Screw Holes to the Top Mount
Yep. Here they are!

(just in silver instead of black to make them easier to see.)
Because they are designed for M2.5 screws, how it works is that the very top is 2.6mm, and as the screw is rotated, it ends up being able to tap itself in the plastic. To keep the grip, the hole becomes smaller as it goes, all the way to 2.4mm.


But yeah it took me like forever to confirm that this is ok, and I might have to redo this all anyways...
Madhav 🚀
added to the journal ago
Standoffs, etc.
I 3D modelled in some mounting points for the PCB, so that y'know it can be mounted. I am going to add some holes, and well yeah.


Basically I just sketched some holes, and made the stand offs 8mm wide. I am now going to add the holes that will allow the not-self-tapping screws to self-tap themselves. (btw I've done this before it actually works).
Ooh, yeah I also made the back side look absolutely spectacular, including some really big fillets!


Once I add the mounts, all I have to do is add the bottom cover and find a way to connect everything!

Madhav 🚀
added to the journal ago
Moved Header In by 6mm
I rewired the entire header part, and I also moved it in by 6mm, just like that that the title suggests:

It also actually simplified wiring, because now the wires could go from the right side, and thus I have to use one less vias.
This also allows, as I said earlier, for me to condense the entire thing!

(I'm sorry you're gonna have to compare it with one of the earlier images, as I really can't get fusion's timeline thingy to work with me.)
Madhav 🚀
added to the journal ago
Top Bracket.
So um yeah that's about what I worked on.
Firstly, I had to think about the dimensions I was going to set up, and here's the sketch I settled on:



Basically, it looks like a big block, except for the fact that there is a recession in the center for the PCB.

However, I then noticed that it looks quite beefy, too beefy, and saw that the biggest part, by a very significant amount, was the screw terminal:

Thus, I went back to my PCB to change the mount, but then, ofcourse, it took me like forever to find any decent part, so yippee. :(
While I was re-rendering the 3d model, I noticed a switch didn't have a model, so I went looking for a new switch, which again took so long that I realized it wasn't even important :(
Now, all I have to do is change out the PCB model for the new one, and I'll shave some ~5~10 mm.
Re-aligning the new PCB was a real easy job, and I have an updated board now! only real difference is that there is now a switch to control GPS power, and a significantly smaller header.
btw, the header is used for connecting the wheel-rotation sensor to the ESP & STM, and can act like a ultra-slow-speed back-up comms line.
5mm thickness saved!


Just one note, I am thinking that I will move the E-INK header inwards, so that I will be able to have a significantly compactor case.

Madhav 🚀
added to the journal ago
Fileting!
This is another task that should be the easiest in the world, but Fusion is being a donkey.
See, the outside fillets were easy-peasy.

But these donkeys thought it was a good idea to keep every small face you make. So, on the inside, it was a hole other story. (get it?)
At first these lines on this face don't look like a big deal, but drum-role-please ... they are!

When you zoom in, to fusions max, you get this:

Somehow, those two plates are separated by 0.002~3 mm, and I was unable to actually fix that, so I guess there's not going to be any filleting there :(( (fusion only allows me to move the sides by 0.001 mm at a time, and seeing as the difference is like 0.0024, I can't do anything about it. What a waste of time :(
Madhav 🚀
added to the journal ago
SCREWSS!!
Do you love screws? I sure don't
Like bro I would have thought someone would have designed a better way of doing all of this. I just had to resize all my holes, and then on top of that because the screws are tapered, I had to taper the holes.

That might not seem like a big ordeal, but the thing is for a noob, you have to account for all the extra work of figuring out how to make the tapered holes, and understanding whatever the heck this means:

Oh yeah also I forgot that you know, fusion is like the weirdest software, completely counterintuitive, so that doesn't help. (Not as bad as Adobe though)
Oh, and here's some pictures:



Madhav 🚀
added to the journal ago
Screw
After a (relatively) long break, I am back at it again!
My goal right now is to speedrun to protective shell around the PCB to prevent any harm. As there is sensitive RF on the board, unfortunately I will have to 3D print it, and CNC is out of question.
Ok. Its sort of time to get serious, as I am nearing the submission point of my stuff.
Screws
First up, it is really important to find screws that will, you know, actually work.
So first up, I took a look at the official datasheet for the LCD screens.

Basically, all it really shows is that the PCB to top of the screw hole is 4mm,

and the screw size is an M2.5.

I found some M2.5x8mm, M2.5x10mm and M2.5x6mm screws.
the thing is, though, that I also need a screw bit to drive the screws, as they have something like a T8 head or something, so that's that.
And even better, according to the Waveshare Docs, the E-INK also uses the same size screws too!
However, as I don't have the 3D model or anything, designing a proper size case to protect the screens in the event of theft/crash I might have to get the screens first...
All in all it took about 40 minutes to look for this information and just start the 3D modeling.
Main Truss.
Ideally, the main truss will be built from CNC aluminum, and that that you see below (in red) is what it looks like.


This side will be for the Screens:

And this side for the main board.

It is significantly higher up because of the huge batteries that will be in between the board and the screen, and thus it acts like a spacer. I am trusting that the aluminum is strong enough.

One (not at all) small thing is that I have to deal with the cost.

$40+ for the part, plus HST, plus shipping will add to quite a bit. So instead I am going to make the PCB mount to the top cover, which will mount to the main truss and the bottom cover. Only the PCB cover (the top cover) will be 3D printed for RF, but the others are all CNC.
Apparently, the fabs don't like all these weird extrusions. Who would have thought...
So I guess that all the work I did today was for absolutely nothing (not really the screws and stuff were useful but still). How terrific. I guess.
Well mounting hardware deleted!


Hey at least its colourful now!
By the way, thanks to @Raygen Rupe for helping me in getting the main mounting stuff lowered in cost and stuff. But yeah a big bummer that I have to redo this :hs:
Madhav 🚀
added to the journal ago
Minor Power Consumption
So y'know how I said last time that my MOSFET's leakage current was like 15uA, and the module's PSM (Power Save Mode) draws just 3.2uA? Well yeah so I just decided to replace it with a switch, just in case I ever want to turn it off. (I don't know why I would, but still)


Side note: I still have trouble believing this small red switch is rated for 5A...

This way my total current draw (in max sleep mode) is now at:
| Device | Power Consumption |
|---|---|
| GPS | 7uA |
| Cell | 3.2uA |
| STM32 | 640nA |
| ESP32 Bypass1 | 100nA |
| Quiescent current | 75nA |
btw this took a bunch of research for new, updated numbers.
As you can see, the biggest power consumption comes from the GPS, but it would have been the MOSFET. Whereas the current current consumption is 11.015uA, the previous one would have been about 22.8uA, which is significantly higher, and had added points of failure.
With these numbers, we get a standby life of about 21183.235 days, or about 58 years on a full charge. Which is of course, honestly, CRAZY.
Madhav 🚀
added to the journal ago
A little bit of power consumption metrics
I was just wondering about how much power the SIM7080G uses in its different modes, and a quick search gives the following: 
(Actually it was not quick because of how dog-water google has become)
Basically, when its idling it pulls 10mA, basically nothing for my on-mode, and when it's ready to shut up and sleep it draws just 3.2 uA, less than the GPS's backup mode (for its RTC) and way less than the MOSFET's leakage current of 15uA.
umm i also just forgot, when i came to do another journal i just saw that i was midway through my last journal entry so like umm...
Madhav 🚀
added to the journal ago
3D Modeling, but slowly enough you'd think I'm a sloth.
Yep, I did 3D modeling.
Yep, I was slow.
Yep, you might wanna call me a sloth.
My model

As you can see, I have some stuff done, and the biggest part is that I have the main structure that carries the screen.

As you can see, it is a little complicated, but obviously doesn't have fancy fillets or anything. Firstly we have screw holes to mount the screens to it, and we also have the main structure to support everything. It has a hole in the center to allow for the batteries to poke through.

Of course it'll be more polished, but that's how the rough outline goes.
E-INK
So yeah I got an email back from waveshare, and they said they didn't have any more accurate drawing. Well that sucks, but I found a 3D model that was a case for one of those displays, at https://www.thingiverse.com/thing:4639641 In the example pictures, they showed it looking like it was almost perfectly a container, but I think I am going to have to put on the final touches at the end, once I get the E-INK and can actually measure it.

Color & Other
Color
In other news I figured out how to add color to the objects I model, and I also spent a while trying to figure out the optimal setup.

Assembly
As of now, I have it setup that the PCB is on top, then the holder, and then the batteries and board on top of that assembly. Next up I am going to design something to go under, for the plate I designed, and then something to go on top.
As my plan is, I am going to have 3 pieces, that will probably be screwed in place or something.
Deletion
So yeah somehow a bunch of my work got deleted midway, and then when I tried undoing/redoing absolutely nothing happened, but it wasn't a huge amount of work, so not a huge deal.
Madhav 🚀
added to the journal ago
3D Modeling

Onto 3D modeling, I finally got started on it.
Basically, as it stands right now, I got everything loaded up into Fusion, and sort of got back into the hang of things.
LCD
I found an official 3D model of the LCD on waveshare's website, and here are some pictures. (It did take some digging, as I originally searched on other sites, like GrabCAD and Thingiverse. It was just random luck that I happened to go to the wiki, and that I just happened to find the model.)



PCB
I just quickly imported the 3D file from EasyEDA, and then realized I hadn't added any mounting holes, so I added those in the weirdest spots.
One is dead center-top,

And the others are on the very bottom, as you would expect.

Here's the model in Fusion

E-INK
I was sadly unable to find a 3D model of the E-INK, not from waveshare, nor online, but I have sent them an email.
Instead I found this case thingy-magig, but it's not any good :(

It's actually quite weird.
Anyways, I just made my own sketch of the suggested outlines, and well, there it is. Its not eventful or anything, but still:

All Together
Here is what it looks like as of now, with the PCB going to be on the top, then several ground planes are going to protect the GNSS antenna from the noise of the LCDs, and the screens on the underside.

I am working on a truss to hold the screens in place, and it's going to be like the blue thing and slot into the main thing. I am thinking I might get this machined so that it is ultra strong, as necessary for a theft-proof device. However for testing, just a 3D print should be alright, and then I can see if there is a future hack-club thingy in which I can design a unbreakable case. TBD.
Well yeah that sums about all that I have done in terms of the 3D models.
Madhav 🚀
added to the journal ago
Suture Vias (Stitching Vias)
I worked on the stitching vias that basically connect the layers together. It was a bunch of checking what sizes are alright. At first I tried guess and checking. I started off with 0.8mm via spacing, and for some reason everything was glitching out like crazy, but eventually they applied.

Then, I tried 0.7mm, 0.65mm and then 0.6mm. They all worked — however it sort of felt weird. Thus, I went googling what JLCPCB can produce and those clearances, and it hard core hallucinated. It said some crazy numbers, but it also gave JLCPCB's specification website.

From there, I had to go into the drill section, where it said that the via holes should be about 0.2mm apart:

But that feels like its way to close, as some existing vias I have are 0.305mm apart:

And EasyEDA doesn't allow vias to be any closer. But, sticking to what JLCPCB said, I changed the Design Rule — and thus the DRC (Design-Rule-Check) — to lower the spacing a bit, and MESSED EVERYTHING UP...
Yeah that's something I'd rather not touch again, but it still sort of works, and I just didn't bother changing the hole-to-hole spacing (needed to be >0.3mm to >0.21mm) and well yeah just figured 0.6mm spacing was alright.
So yeah, all in all my vias are about 0.6mm spaced, however near the PI network near the antenna, I have a denser grid of a basically hexigonal layout:

Madhav 🚀
added to the journal ago
Replaced Shunt
Yep, I just simply did some calculations, and my current shunt was way to small, just 10mΩ, and I replaced it with a 20mΩ one. That means the maximum power went from <8A down to <4A, and that was enough to sort of concern me, especially with capacitor inrush and stuff, so I just checked around and stuff and I eventually was just like bruh whatever. The thing is, 4A is sort of close, as the SIM7080G can peak at 2A, and the displays could probably hit 1A, but I don't think the rest of the stuff will be able to hit another 1A.


BTW the shunt has the same package, so all I had to do was find a good one.
The shunt is +- 1%, so the my accuracy is only +- 0.04A at full power, but at low power (<1mA) its the INA226's 16-bit ADC that's the limitation. Thus, I changed the shunt to a higher resistance and higher voltage drop one so it can make out the difference easier. (It effectively adds another bit)
Accuracies
first number, current consumption.
second number, accuracy (either the ADC doesn't have enough bits/resolution, or the shunt isn't accurate).
@4A -> 40 mA (1%)
@1A -> 10 mA (1%)
@100mA -> 1mA (1%)
@10mA -> 100uA (1%)
@5mA -> 61uA (1.2%)
@1mA -> 61uA (6.1%)
@250uA -> 61uA (25%) (low-power operational current)
@100uA -> 61uA (61%)
Notice that creep? +- 25% is a lot at operational current
Madhav 🚀
added to the journal ago
Just some pictures
I didn't have any good pictures last time so I am going to add them now.




I also cleaned up the layout of the huge 100uF caps and made them closer to it


Madhav 🚀
added to the journal ago
Double Checking ... A lot of double checking
Yep just as the title says, I did a bunch of double checking. The two biggest things I found were that
- The compass wasn't connected to power, and
- The main Cellular power switch wasn't hooked up right.
In more detail:
Compass
So if you look closely at my last shot of it, you'll see its hooked up to the LP_3.3V line. However, for whatever reason, it wasn't saved when I came back to it today, and well, yeah that would be bad. So, after adding the power lines, here it is.

Main Cell Switch
So remember this part of my schematic?

Yeah, as you can see, the high-side MOSFET will switch the power on and off, as long as you provide it a signal. See that? You need a signal. Well yep clearly, I thought there would just be some magic and it would just work.
So well yeah I just added a connection, to pin 6, (IO6) of the ESP32
Power Saving
So you have to think, what about power saving. What if I don't want to change my batteries out every week? Well then in that case you have Power Saving!
So yeah instead of having a main MOSFET, with leakage currents at ~15uA, a lot in this case (total low-power power consumption is ~252 uA) I am going to have the power be delivered from the GPIO of the STM32.

like this ^
One last thing, to have the STM32 in ultra sleep mode, I am going to have the set up be that the Hall-effect sensor is (for bike speed measurement) is going to be on a wake pin, so rolling the bike should wake the system up from its ~25 uA sleep setup. (BTW at this consumption it should run for a few decades!)
GPIOs

So yeah as you can see in that image, I am sort of out of GPIOs on my ESP32S3, however my STM32u575 still has 36 / 82 IOs open.
I also added a screw terminal so that I can just screw in the wires that connect to the wheel's magnetic sensor.
Feedback
Not only did I upload my entire schematic to Gemini (only useful for finding the BMM150 (compass)'s lack of power), but I also uploaded it and asked my friends who have used the STM32 also, one of whom is using almost the same chip. (STM32U575 vs STM32U585)
The biggest thing was the power consumption that @tty7 helped with, and @NotARoomba helped a bunch with helping me get started with the STM32 and looking over my schematics.
Note
I really have to get going with my 3D modeling, but I've heard that Blueprint will be extended to Jan 31st...
Madhav 🚀
added to the journal ago
Finished Designing and Routing the PCB
I get it ... the title is too long.
Pics!
So yep here is my PCB, all done!

It looks way more impressive when you take a look at this picture:

Note: I am still going to add the stitching vias at some point.
IMU
I wired it up, checked datasheets, got Gemini to check it, and got this nice guy, @tty7, to help me check it out.

Compass
For future in-built navigation, and just a cool feature to have. I had to go look through a bunch of options on JLCPCB, and this is the first one that came up that was supported by economic PCBA, and also was compatible with the STM32. It took me a while to see that it was actually compatible, as it said 0.7V, and then real small VDDIO. Basically that means that it drives high at 0.7 x VDDIO, not 0.7V. (STM32 needs ~2.3V)

Another cool thing is that it uses BGA, but because of that I had to use a tiny 0.08 mm trace, and cut-down the Design-Rule clearance, hoping nothing bad happens... (The two decoupling caps are bigger than the entire chip!!
Headers
I added two (2) headers, one for the hall effect sensor that will count the amount of times the wheel rotates, and one to hook up the E-INK display.

I know this is rushed, pls forgive me.
Madhav 🚀
added to the journal ago
Just a bunch of Finishing Touches.
I think I am going to try a new type of journaling.
Basically, I am just going to tell you what I am doing, add pictures as I work, instead of doing it afterwards.
Re-Check
I was just checking over some schematics, and voila! mistakes!
Basically I just completely forgot to add the VDDA wiring, basically the power line for the analog sense circuitry.

I have now added the 4 capacitors it wants.
I also wired up the "Power Good" pin, which basically just monitors the ESP32's power supply to see if it is overloaded (should never happen) or is giving messy power. I could temporarily turn off the backlights or something to let the power line re-stabilize.
LEDs
As the stuff is coming together, I worked a bit on LEDs, I added one on the ESP32 side, for power, and on on the STM32 side, this being just for indication and debugging. The biggest problem with adding additional stuff right now is that it makes everything much, much harder. Like to add the STM32 LED, I had to try so many different places, and eventually settled on this one:

When I added the "Power-Good" wiring, and the "Power-Enable" wiring (to control the ESP32 regulator) I had to put in many more vias, etc, because as the wires went, they broke through the invisible ground planes, on top of everything else...
Ferrite Beads
After a bunch of help from @tty7, I decided to add Ferrite beads to the USB ports to reduce their antenna-like properties. (L6 btw)


IMU
I also got help with finding an IMU to detect when the board is shaken, maybe to remove it during a theft or if the entire bike is being stolen, and it's the ICM-42670-P. (Still have to wire it up tho...)

Note:
Tomorrow i might, after finishing the IMU and Compass, go do a quick run of the 3D model. Due date is approaching quickly...
tty7
gave kudos to The Ultimate Bike Odometer ago
this thing is really complicated and I have no idea how you managed that much rf stuff without going insane
Madhav 🚀
added to the journal ago
Double checked costs.
Just a quick check.
Here's the cost of the PCB:

And including everything:

I am just really worried about clearing customs, and also paying the local GST.
Madhav 🚀
added to the journal ago
Main Display SPI & STM32 Power
Yep that's all I did. Byeeee...



Still here? Well in that case, Let me elaborate, for you my highness
Displays
It was a good idea that I started on the displays.


The fattest of these ribbons are actually there just because of the display. The green was is for the 5-point touch on both displays, and the red wires are for the (hopefully) 80 MHz SPI bus.
To run this ribbon, I had to rewire so many things to make space.


Like the slower SPI bus here. For the microSD card line, since it was also really high speed, it couldn't have any vias.

That's why this area had to be rewired to move the Power-Generation circuit over.

Even then, the slower parts had to jump under the main, high-speed, signals.

I know this doesn't seem like much, but when half the board is already done, wiring even a little more can require changing a lot of stuff.
STM32 Power.

I put it this Buck-Boost converter here. This converter, somehow, has a Iq of just 75 nA! That means that only 75nA will be used when no power is being drawn by the STM32. (That was the biggest reason I chose this setup and buck-boost, even if it was a bit more expensive.)
I also added a MOSFET to control the supply of current to the low-power electronics, like the INA226 and the (tbd) IMU

Madhav 🚀
added to the journal ago
More Routification
Again, I'm sorry its getting very late. I hard grinded...
Current Pics
Anyways, lets start with some cool pictures of my current setup. You'll notice a hole lot more stuff.


Stuff I did
Basically, I just worked on some ESP32 stuff, and the foreign language of the STM32
ESP32

Simple enough, just wired up the UART connection, and the SPI connection, both to the STM32. They are just some data communication lines.
STM32.
This was the big boy today, with a holy lot of new stuff. Before, there was just the crystal and some decoupling caps. Now:

You can see that there is the COM lines, and also a thing called an SD card. Yep, I wired that up, and that took a lot of time because apparently SD Card lines are sensitive. (Oh yeah also I had to manage vias, almost went on to the fourth (and final) signal layer, and that stuff.
SD card

Here's the SD card slot, and yeah. Last time my setup didn't work, but I hope that with the pull-ups and the 33 ohm series resistor it will be ok, even if it has to be slowed down.
The SD card did take by far the most amount of time as it has to be wired so sensitively and has 6 wires, all so special...

Final note.
I have left out the boring and repetitive stuff as I really need to get to bed and stuff, but yeah I think you should get the gist of it.
I am also going to work on the main display SPI as it is important and high-speed... (tomorow)
Madhav 🚀
added to the journal ago
More Routing & Schematics. Again.
Sorry for the rushed journaling Yesterday and Today.
Current Stuff


Power (esp32)
So yeah, I wired some POWERRRRR

Basically that entire setup took me like 3hrs to do, because that datasheet was just not being processed by my brain. It was almost like trying to get meaning out of a blank piece of paper. And then, after I finally got stuff, I had to find the proper inductor, placement, and all that good stuff. Y'know the stuff that takes you hours...

Power (Main)
So yeah, I wired some POWERRRRR
Here's the INA226 circuit, the device that will measure the battery voltage and current draw

This was the most straightforward thing I've done as I've wired this one up like 5 times before, but I still had to find the shunt resistor (10 milli ohm) AND the good wiring stuff, like Kelvin traces and stuff. All over hyped if you ask me...

Power (GNSS)
So yeah, I wired some POWERRRRR
oh i've got to stop that...
Anyways, I wired up this MOSFET:

And it will allow me to control when the GSM module is on and that good stuff, but yeah that also took like forever because I had to choose the right king of MOSFET (P-Channel was a whole lot easier) and I had to then find a suitable MOSFET, and wire it up... Takes time, I tell you.


I also added the simply boot and reset buttons for the ESP32, and its looking quite good. I just have to get some final connections between the Cell chip and the ESP32, along with wiring up the majority of the STM32, including the toggle to control the ESP32's power line. (btw it draws less then <1uA when it's EN pin is low!)
Sorry again for the rush, I've been grinding too hard clearly...
Madhav 🚀
added to the journal ago
More Routing & Schematics
UPDATE!!
Here's my most recent pictures:



STM32
After a bunch of contemplation, I have decided to but the STM32 in this little corner all by itself:

But another problem, USB lines:

y'know how it needs 90 ohm differential routing and all that good stuff? well yeah that's why those wires look so weird.
Vias?
Another big no-no I have because of how the two signals need to cross over each-other. WHYYY?!?!?!?
Crystal
One good thing though is that my crystal wiring and stuff does look pretty good... 
GPS
I also wired up the entire GPS, did all the comparing between different models and stuff, and that.

You can see it with its keep-out and stuff. It's the L80RE-M37, and I still have to do the RX/TX stuff, but that's a quick 5-minute job.
...
And yep I just finished that too.
Display connectors.

Although not wired, I have found them a place
Challenges
Coms
My biggest problem right now is that I need 3x UARTs on my esp32, but although it technically has 3, I'd rather not use UART0, as it might bug-out.
So, instead of uart to talk between the STM32 and the ESP32, I could use SPI, but the thing is there is not a thing on the internet, after 1+ hours of searching, for SPI slaves in Micropython.
Madhav 🚀
added to the journal ago
Some Display Planning.
Alright. Here's the plan:

Basically, the big green rectangles are the displays, LCDs on the edges, E-INK in the center. The other green rectangles are the 18650 battery that are going to be used. With this layout, we have the antenna kept as far as reasonably possible, but we still have a huge-ish area,

As you can see, it'll take up around 168 MM, in width, and about 110 mm in height. To make it symmetrical, it's probably going to go to ~180MM, which isn't crazy, but still.
Madhav 🚀
added to the journal ago
e.g. Routed the PCB
Did it again.
More Schematics and Routing.
GSM (Cell)
I think I might have just finished the entire schematic & wiring for the GSM. I'll double check it later, but real quick:
1 - I wired up the status LEDs

2 - I wired up some HUGE caps


3 - Wired up a header so that no matter what I have the cell stuff to test for next time I do this

4 - Wired up the connection between the voltage shifter and the ESP32

5 - Set PWRKEY, the main power controller of the SIM7080G, up.

ESP32
As for the ESP32, it was just mainly me running a program on one of my existing boards with the same chip, and I found that only GPIOs 22 - 38 don't work (38 does, 22 doesn't)
I also wired up the USB line/port

LCD
Found some FPC connectors


and these are going to be the connectors that connect to the LCDs, as the LCD comes with a 18 pin FFC (like a FPC) and the LCD has a connector. This just makes the physical wiring job a bunch easier, as I now longer have to solder some 26 thin wires that keep breaking in my face. (Speaking from experience. Looks down. :SOB:)
STM32
Well I have a bunch of capacitors...

Need to wire that stuff up.
In other news, I sort of got the SD card stuff ready, and I prepped the USB port for wiring

P.S.
I really am glad I chose a 6-layer PCB, as I am already using 3 of the wiring layers, and it is essential to have huge solid ground layers for the antenna.

There's a reason why my board is shaped like that, and why everything is so clumped up. Maybe I should spread stuff up, but I sort of have to rush ... only ~8 days left to submit.
Madhav 🚀
added to the journal ago
e.g. Routed the PCB
Always wanted to do that
Anyways, I got this level shifter part done:

Just don't mind the left side which still needs work.

But like anyways, this one was quite tricky because I wanted to keep those wired nice and tidy, and avoid vias to 1. disturb the ground plane, and 2. block the other 5 layers. As you can see, the left side still has to be done and I really do have to find a way of doing that...
BATTERIES!!

I also set it up to have the 18650 holders, as they consume the most space and block a lot of stuff, but also because they have to be relatively close to the GSM (cellular) module because they need some FATTT traces.

STM32
This to is going pretty swimmingly, as I have started on its schematic.

Just one hiccup, this STM32 requires a beefy capacitor at the VCAP port, but it is also required to have really low ESR at 3MHz, which is actually very hard to get. Thus, we have the option to trade the 4.7uF capacitor for 2x 2.2uF, as these are waaaaay easier to get in appropriate sizes, and the ESR requirement per capacitor halves or doubles or something just making it a whole lot more lenient.
Side note
I am a little concerned about how this all is going to be, as the space is there, just a little tight, but most importantly I still have to get the displays and stuff going, main power trees, and also design the case in <10 days to submit for Hack Club's Blueprint.
Madhav 🚀
added to the journal ago
Routed, Re-Routed, and Re-Re-Routed the ESD Protection
Ok. I get it, that was a long title. And also I am sorry, I don't have as many pictures as I would have liked to have. Anyways, here it is, my current version of the ESD Protection.



My Reddit Post btw (it has some pictures from my last rerouting)
Explanation Time.
So basically how it works is that it just has some 22 ohm resistors near the module, really really close, and those are there to filter out noise, just like how it was recommended in the example circuitry.

Here, we're talking about R1, R2, and R3.

My design ^
Example Design v

ESD & TVS
Then, we also have a TVS. This can be seen in the reference design, just above, and also here are some close up shots of my work.
Here is the TVS protecting not only from ESD, but also capping the voltage first, by putting it into vdd.

And routed:

Curvy Routing
In case you didn't notice, I am trying to use curved routing for this stuff, as it basically helps with making the signals clearer, even better than just 45 degree traces.
As a bonus, here's my routing so far:

Note
Again, you might be wondering how I managed to spend so much time routing, but it just is a slow task for me, especially with the curvy stuff, and also I first spent a bunch of time trying to route it all on one layer, and in affect, I have that. I just moved the data line to another layer, ground in between, so that it could be protected and not have stuff induced into it. I only have a via for ground, and one for power, VDD.
Madhav 🚀
added to the journal ago
Block Diagram!!
NOTE. I use OLED / LCD interchangeably, even though I mean this LCD
So yep as the name suggests, I am working on a block diagram to make my life easier. HERE is the block diagram's latest version, but as of now it is just this much:

It also got me thinking of how I was going to set everything up, especially in terms of power management.
Power Management
As it is right now, the esp32 consumes the following amounts of power:
| Mode | Power Consumption |
|---|---|
| Wifi Transmit | 180 000 ~ 240 000 µA |
| Active Mode | 90 000 ~ 130 000 µA |
| Modem-sleep Mode | 20 000 ~ 70 000 µA |
| Light-sleep Mode | 700 ~ 900 µA |
| Deep-sleep Mode | 10 ~ 150 µA |
| Hibernation Mode | 4 ~ 6 µA |
For reference, I am going to use 2x Molicel INR-18650-P28A.
This is a 2800MAH 18650 battery, and with two in parallel, I get 5.6 AH.
If the CPU alone is using that much power, I might be cooked. The screens will likely draw about 100 ~ 150 MAH. Alongside that you have the cellular module, GPS, IMU, and a whole other CPU, the STM32U575VGT6.
But the good news is that the STM32 uses just 19.5 µA/MHz, and if I just run it at around 16 MHz (which is about the clock speed of the Arduino uno) it will draw just 320 µA
Even at full speed, it will just draw 3200 µA or 3.2 mA
And if you were wondering how that is possible, very simply it was on purpose. I chose the most lowest power thingy magig I could find, and yippee! here we are.
So like the problem is, which devices should go with which CPU.
The ESP32 is less power efficient, however it is more powerful, has bluetooth, and a tonne of RAM.
And ofcourse, the STM32 has power efficiency on its side.
So here's my block diagram again:

Basically, my plan is to run the ESP32 when I am biking, and along with it the GPS, GSM, and the OLEDs. This way, all the higher power stuff will only turn on for shorter periods of time. Also, just because it makes more sense, I am also going to put the wheel speed & distance sensor connection to the ESP32.
On the STM32, I am going to have the lower power equipment thus the E-INK and motion sensors, but also I am going to have it be the main CPU that will always be on. This way, it will be able to control when to turn on and off the ESP32, and as the have a UART connection between them, the ESP32 will be able to signal its choice, perhaps after it is done with periodically checking if the bike has been stolen.
P.S. I accidentally added an hour last time, so I am counting one less this time.
Madhav 🚀
added to the journal ago
Started Making the Schematic and Routing! & COST ESTIMATE
Halo World!!!
Yes. It is me. I AM BACK!!!!!
Enough pleasantries.
Ok, first up,
ANTENNA!
So like a bunch of time and research later, I have chosen an Antenna! I am going with the 1462000001, a 698 MHZ - 2.7GHZ antenna!
Basically, I just datasheet dived. Datasheet dived a lot, and like it seems pretty good! Génial! And like y'know if that isn't good enough, it is most efficient at the target frequencies, the most carried frequencies around me.
And, then, I found out about antenna matching.
Antenna Matching.
Like if someone just thought. "Hmmm. I think that being an RF engineer is a really easy job. Why don't I just through ANOTHER wrench into the process.
So like they just went and messed up with the antenna's frequency efficiency chart, and just did this:

This is basically just a graph of where the antenna is most efficient, and like the yellow line is with matching, and the blue without. Lower is more efficient. As you can see, the blue line may look just fine, it is just efficient at a different frequency.
BUT
the problem just is that that doesn't do much. You need the antenna to be maximally efficient at the frequency you're going to be using it at. And guess what? The majority of people will be using it at points where the yellow line if lower. So like y'know, why can't they just make the yellow line the default!?!?!?!?
My Circuit.
So like we talked quite a bit about that stuff, now let me show you my current schematic and layout.
Firstly,
We have this thingy:

That's basically just the antenna, with its ground, and the signal line. Then, below it, we have the antenna matching circuitry.

This is basically just what the datasheet recommended for a 130mm x 60mm board. And guess what board size I have? 130mm x 60mm. Yeah I'm not about to mess up with this stuff that is adding $50 to the cost!!!!
Current cost.
Speaking of which, here's what my current cost breakdown of just the PCB(A) is looking like:

I know bro. I'm already at $100, after using the $20 coupon for a 6 layer PCB, and after a cheaper form of shipping which will inevitably be more expensive for the higher-value finalized PCB.
And all of this is not including the $70~80 for the LCDs, and ~$30 for the SIM stuff, likely lower.
All in all, I'm already at $200, and really just need to make the rest of the PCB as cheap as physically possible.
btw, me asking for confirmation that my stuff was good to ~3hrs in and of itself

Madhav 🚀
added to the journal ago
More Screeny Stuff
Yeah I sort of decided I was going to model the screens out and determine how I was going to set up the pcb. So I sort of have a few options, I can have a setup like this:

With 3 displays: 2x LCD + 1x E-INK, or
With 2 displays: 1x LCD + 1x E-INK.

3 Displays
So in the option with 3 displays, it has the pros of having a far more beautiful setup, as shown in the upper setup, and I will also have access to 1.6x more screen space, and double the colored screen space.
It would look something like this:

but like y'know, actually beautiful.
it would basically have the highlighted sections have digital dials, with numbers in the center,

And the center display would just have the battery and all the things that don't change very frequently, along with an analog clock so that I can sort of know the time, even if it only updates once every three minutes.
We could have the right display have the speed dial, but now that I think of it I don't really know what I would put on the left one.
I am thinking that I could have the speed dial maybe in the center, with the E-INK off to one side for all the static information, and I could have on the left side the other stuff that updates semi-frequently, like the distance travelled, the cellular status and all that stuff, other semi-useful GPS data, temperature, and all that other good stuff.
One last pro is that I would have more space to work with underneath the board, to try and get it as close to what the cellular system wants.
Cons
However, the main cons to this setup are the fact that the extra display costs an extra $20, and also that this larger PCB will cost more. (About $10)
All in all, this option will cost $30 more.
2 Displays
In the version with just two displays, I would have to cut back on the font sizes, and that would really reduce the readability of the entire system, and it would look a bit lopsided as it would have an unbalanced screen setup, but it would save the other $30
Conclusion.
As my STM32 chip has enough separate SPI lignes to handle the displays on individual ones, I definitely feel like the 3x display option is better.
And, as I (likely will) have 2x CPUs, I can make it so that the STM32 can control maybe the E-INK and the SD card reader/writer, while the ESP32, the one I am more confident with, will be able to drive the other 2x OLEDs.
EXTRA!!
And, as a bonus, I have this cool little surprise for you!
I finally have a rough cost estimate. We are looking at around US$130~150 for the PCBA, including the 6 layer PCB, while the extra displays will add about $80. The SIM card and data plan will be about $15, and all in all, add misc. stuff, and you get about a total of around $250~260 USD.
Madhav 🚀
added to the journal ago
Antenna and STM32
Ok well yepee good news this time
GOOD NEWS FINAAALLLLYYY!!!!!!
In case you can't read, lemme say this again. WE (i) FINALLY HAVE SOME GOOD NEWS!!!!! (and its not even a little)
Thing 1:
I found a bunch of other antennas.
Yep. I literally just Google MOLEX antennas, and i just found 5 or so antennas that JLCPCB also just happens to have, so that's good.


I am thinking of using a low frequency antenna on the board and also a higher frequency antenna, but I am sort of scared of cancelling of signals or some other thing that could do more harm than good. I guess I'll see. I found this good link to combining antennas but again I didn't have too much time to read about it after learning about the STM32
Thing 2: (the last one)
I also sort of got somewhere with the STM32 crystal and stuff, and I am thinking I might start to place some components soon, but first I am thinking of how to set up the PCB, like I don't know what sizes and stuff will look good, so I am thinking of Fusion360ing a protype, a simple thing with proper dimensions for the screen so that I can determine the PCB's size, which will then give me the dimensions I have to work with.

Madhav 🚀
added to the journal ago
More Stupidety.
So like remember how I was complaining about the previous antenna not being in spec and all of that stuff? Well I decided to find a new antenna.
The new Antenna
So of course, spending a bunch more time, I found a new antenna. It looked pretty solid, was $7.39 on Mouser, only a dollar more than my other choice, and best of all had spectacular low-frequency reception, with around 55% efficiency, and at the AWS band it had a really outstanding 75% efficiency.

Now like if you haven't detected the foreshadowing yet, it's alright. I get it.
FORESHADOWING
I think now you can easily see it.
I went down the rabbit hole of seeing if it was good and stuff, and finding out how to drive it, and then just as I was about to make it my final choice,
BANG!!
I thought of checking JLCPCB if they actually had it in stock. And of course, they didn't.

WHYYYYY
I had even calculated the impedance matching and all of that stuff :heavy-sob:

Of course I only chose to check after getting to the
th page....
Time to go see if there is another antenna i can use...
Madhav 🚀
added to the journal ago
CELLULAR!!!!!
So yeah, um, as the name suggest I worked on cellular stuff!
So yep as you would think it really is a pain.
So like after reading the first 50 or so pages of the datasheet, I came to the point at which I decided it was time to work on the antenna for the cellular module. As of now, I have chosen to use the MOLEX 2047740001, a cellular SMD antenna, and like yeah it took me like forever to see if they were matchable.

And like that's where the problem comes in. It is alright, but doesn't cover the same bands as the module. The cellular module that I am using can handle the significantly more popular band at 700 MHz, however this antenna is unable to do so, so I will have to see if I want to just rely on the higher frequency bands, like the AWS band at 1900 MHz to 2100 MHz. This will, however, result in lower reception indoors, making it much harder than it has to be to test and debug.
Cellular-Indoor-Penetration-v2-OL
And like y'know the biggest thing I am worried about is if this thing doesn't work. I REALLY want this thing to work, and the thing is I am willing to spend the extra amount of time to do extra research. There is a reason that I spent so much time researching the STM32, and I might still chose not to use it as I really want this to work and I have experience with the esp32.

Well yeah that's about it. I also did spend some time looking into different antenna types, and I really did want to try to use a SMD or patch antenna.
I had tried looking for a guide to help me design a trace antenna, a antenna that is part of the PCB itself, but I was quite unsuccessful, and I really didn't want to make it the reason that my board failed. Like y'know if I had chose to follow a half-good guide, and it turned out that I messed up on the antenna even the slightest, then bye-bye $200 (more likely $250-300)
So yeah I then Googled SMD cellular antennas, and, believe it or not, I actually found something! This was like the first thing, so yeah, but I think I will take a look at other antennas too, as this has a low-frequency problem.
Madhav 🚀
added to the journal ago
DISPLAYS!!!!
So like remember how I had sort of decided the display stuff and stuff? Well now for the decision . . . !
Display Decision!
So yeah here's my plan. I am going to use 2 displays, one LCD, and one E-INK
E-INK:

The E-INK display costs US$19
LCD:

And the LCD is for about US$17
My explanation
This is basically just so that on the most sunny days we (I) have the option to basically just rely on the (veeeery) slow updating E-ink, and on laterally every other day I can rely on the LCD. I was also considering having a heads-up display, basically attached to my helmet, so that I can also just like easily see how fast I'm going, even on a sunny day. This will add more cost thought...
Lemme just quickly draw you a drawing:
======================= . . . . . . . . . . . . . . . . ====================================
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|--------- E-INK ---------| . . . . . . . . . . . . . . . . |------------------- LCD -----------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
--------------------------- . . . . . . . . . . . . . . . . -------------------------------------------
bro that drawing alone took me 10 minutes because of markdown :(((
Anyways
basically I was thinking of maybe having some keys in the center or around it, along with buttons on the side. I am also very happy about the fact that the LCD has a touch panel, but in the winters it will be sort of useless. Don't worry, it doesn't get cold enough here for the LCD to stop working, though the E-INK might not enjoy being that cold... we'll see...
Madhav 🚀
added to the journal ago
STM32
Alright. Here we are.
MCU time
The time has come. It is time to learn the STM32!!
So I spent way too much time again and chose a chip. So last time, I basically learned of my options, and I saw that the power consumption was reeeaally low. Like 16uA/MHz low. With a 4 MHz clock, that comes to just about ... 64uA. That's it. Less than 0.1mA!!

And it's not even that expensive! Just around US$5 on JLCPCB.
But now's the hard part. Learning a completely new thingy. A completely new chip.


Like that took me 409 replies to learn. 409!!! And if you look closely it took 2.5 hours just on the conversation, not including the stuff before.
And like if that wasn't enough, it is just so confusing that I got a headache and decided to try again tomorrow.
If you want to see the conversation for yourself, you can see it here: https://hackclub.slack.com/archives/C083S537USC/p1763230254755849
TL;DR:
Basically I just tried learning a completely new kind of microcontroller that was on a whole different level, and now I have somewhat of an idea of how to wire it and set it up, thanks to its datasheet, and a veeeerrrryyyy helpful person named Nathan Alspaugh, @NotARoomba
Madhav 🚀
added to the journal ago
Display
I was wondering about what kind of display to use, and again, a low power option would be essential. I would also ideally like to use something that, y'know, can be read in the sunlight!!!!!
Thus, I have a few options. I could chose to realistically either use a TFT, AMOLED, or an E-PAPER.
It was quite a journey to find out more about power saving devices, definitely not helped by the fact that googling "OLED" gives you this:

Completely the wrong kind of thing. I had basically given up on finding OLEDs (after like 3 hours trying), when I found out that in the more niche space they were called AMOLEDs, and these things were sort of what I was looking for. What I am thinking of right now is to use an AMOLED or a really bright TFT/IPS LCD on the front side, so that I can have sunlight-readable colour text that can actually be updated at a reasonable pace, and also have an E-INK display on the back side to show battery voltage, etc.
And I got carried away again
Fell down the loophole again
And here I am, with a new idea. I was thinking of doing something like have a square(ish) display on one side, like an AMOLED, TFT, etc, and having an e-ink display on the right side for the battery gauge. I think it sort of is coming together.
I'm thinking of having an ESP32S3, with a STM32, Dual Display, and the cellular module I found, along with the simcard from simbase, if I recall correctly. This will let me basically take care of everything, and all I need is a GPS!
NOTE!!!!
Incase this feels rushed, you should know that I have spent like the past 15 days literally trying to find a good display, along with a good micro controller. I recently made a very bad example of how to save power with a previous miniature thingy-majig, and I don't want to do that again so I really am trying to be careful.
Madhav 🚀
added to the journal ago
CPU
I've spent a lot of time looking at an ideal CPU to run on the board. So far, I have a little bit of experience with the esp32s3 and the esp32, however those boards no longer support assembly by JLCPCB, so there is a chance that I might end up wrecking the entire board in me trying to solder it onto a dense board. I would also like for this to be as dense as absolutely possible, so I would ideally use something smaller, perhaps like the bare chip instead of the WROOM module:
vs 
That basically looks like this:

So yeah, that's option 1.
OPTION 2:
I could also chose to use the RP2040, a very versatile chip that I have made a simple board with, and as it is a quite easy chip to work with I do quite enjoy using it. The only caveat is that it uses a significant amount of power, and I need a chip that can either always be on or that is able to turn off into a power saving mode, again a difficult task that would require a second chip if I were to want to pursue.

Another potential problem is that the RP2040 does not natively support wifi.
OPTION 3: STM32
I also have the option of running the STM32, a chip that I have to this day never used. It is quite a new thing to me, however I have heard that it can natively support wifi, and has ultra-low power modes, so it does seem quite attractive, except for, y'know, the actual having to learn a whole new chip, and work with that kind of stuff.

I have to say this does look quite powerful ^^
CONCLUSION
So yeah, all in all I have a few options, and actually now that I think of it, I will probably have to use "standard" JLCPCB assembly as I have LGA parts, the cellular module, and as it too has a low power mode it could very well work; the STM32 is also looking quite nice, and if I wanted to I could also chose to use a RP2040 along with a 555 timer or something like that that will automatically turn off the chip every few seconds, or as the microcontroller signals. I know adafruit has a board like that...

Madhav 🚀
added to the journal ago
BRAINSTORMING pt3: An ACTUAL Idea.
Alright! I think I am going to surf off of the Wave Share Board's hard work, and I am going to try and copy some of its stuff. Firstly, I did some research, and I think that I can use this cellular chip: https://jlcpcb.com/partdetail/SIMCom_WirelessSolutions-SIM7080G/C2943992.
So then, I went through the datasheet, double checked most of the stuff, and it looks alright, though I am only on page 26/76 of the datasheet, so that's something...

Also the fact that it is an LGA concerns me a bit too...

Here's the datasheet btw: https://www.texim-europe.com/Cmsfile/SMM-SIM7080G-Hardware-Design-V1.04-DS-200525-TE.pdf
HOURS: 2.4 / 7.2
Madhav 🚀
added to the journal ago
Brainstorming pt2: Blues & Waveshare Cellular.
I went around looking for other providers of cellular service, and I came across this thing called "Blues" and they also provide cellular and stuff. The one small problem is, after looking all through there documentation, the cost is still waaay too high:

So umm. That was a waste of an hour...
I also took a look at WaveShare's cellular offerings, and they took looking pretty cool!:

Just one problem. The documentation is really hurting my brain. I am actually pretty stuck because I don't know if I should just go for using Particle IO, as that seemed to be the easiest to set up, or I could go the polar opposite and completely custom design a PCB that has build in cellular. I sort of do want it to be custom, but it would be sooo much easier to use Particle's Boron...
A bit later:
Brooooo I am still stuck :((((((
I still have no idea how I am going to do this. Ideally I'd just make a board and hope for the best...
I am sort of leaning towards using a fully custom setup...
Hours: 1.4
(Journal Re-Upload, Messed up last one...)
Madhav 🚀
added to the journal ago
BRAINSTORMING pt1
I brainstormed about how this project would go. As it stands right now, I have a few options, but I don't really know how to do it.
What I am thinking about doing is having it all in some king of enclosure, with a main board, GPS, and some kind of Cellular Module. The problem is, I need to have proper battery that has sufficient charge and stuff, and I need to find a good cellular module. I was thinking of having one PCB do it all, but I don't really know how I am going to do it.
I did some research, and I am thinking that I should use the module in this image:

But other options I have found are this thing called Simbase,

And I am sort of thinking of using it with a normal cellular module, maybe one from waveshare.
HOURS: 3.4
(this is a journal re-upload, I messed it up last time)
Madhav 🚀
started The Ultimate Bike Odometer ago
10/9/2025 8:28 AM - BRAINSTORMING pt1
I brainstormed about how this project would go. As it stands right now, I have a few options, but I don't really know how to do it.
What I am thinking about doing is having it all in some king of enclosure, with a main board, GPS, and some kind of Cellular Module. The problem is, I need to have proper battery that has sufficient charge and stuff, and I need to find a good cellular module. I was thinking of having one PCB do it all, but I don't really know how I am going to do it.
I did some research, and I am thinking that I should use the module in this image:

But other options I have found are this thing called Simbase,

And I am sort of thinking of using it with a normal cellular module, maybe one from waveshare.
HOURS: 3.4
(this is a journal re-upload, I messed it up last time)
10/9/2025 8:30 AM - Brainstorming pt2: Blues & Waveshare Cellular.
I went around looking for other providers of cellular service, and I came across this thing called "Blues" and they also provide cellular and stuff. The one small problem is, after looking all through there documentation, the cost is still waaay too high:

So umm. That was a waste of an hour...
I also took a look at WaveShare's cellular offerings, and they took looking pretty cool!:

Just one problem. The documentation is really hurting my brain. I am actually pretty stuck because I don't know if I should just go for using Particle IO, as that seemed to be the easiest to set up, or I could go the polar opposite and completely custom design a PCB that has build in cellular. I sort of do want it to be custom, but it would be sooo much easier to use Particle's Boron...
A bit later:
Brooooo I am still stuck :((((((
I still have no idea how I am going to do this. Ideally I'd just make a board and hope for the best...
I am sort of leaning towards using a fully custom setup...
Hours: 1.4
(Journal Re-Upload, Messed up last one...)
10/9/2025 2 PM - BRAINSTORMING pt3: An ACTUAL Idea.
Alright! I think I am going to surf off of the Wave Share Board's hard work, and I am going to try and copy some of its stuff. Firstly, I did some research, and I think that I can use this cellular chip: https://jlcpcb.com/partdetail/SIMCom_WirelessSolutions-SIM7080G/C2943992.
So then, I went through the datasheet, double checked most of the stuff, and it looks alright, though I am only on page 26/76 of the datasheet, so that's something...

Also the fact that it is an LGA concerns me a bit too...

Here's the datasheet btw: https://www.texim-europe.com/Cmsfile/SMM-SIM7080G-Hardware-Design-V1.04-DS-200525-TE.pdf
HOURS: 2.4 / 7.2
11/13/2025 6:01 PM - CPU
I've spent a lot of time looking at an ideal CPU to run on the board. So far, I have a little bit of experience with the esp32s3 and the esp32, however those boards no longer support assembly by JLCPCB, so there is a chance that I might end up wrecking the entire board in me trying to solder it onto a dense board. I would also like for this to be as dense as absolutely possible, so I would ideally use something smaller, perhaps like the bare chip instead of the WROOM module:
vs 
That basically looks like this:

So yeah, that's option 1.
OPTION 2:
I could also chose to use the RP2040, a very versatile chip that I have made a simple board with, and as it is a quite easy chip to work with I do quite enjoy using it. The only caveat is that it uses a significant amount of power, and I need a chip that can either always be on or that is able to turn off into a power saving mode, again a difficult task that would require a second chip if I were to want to pursue.

Another potential problem is that the RP2040 does not natively support wifi.
OPTION 3: STM32
I also have the option of running the STM32, a chip that I have to this day never used. It is quite a new thing to me, however I have heard that it can natively support wifi, and has ultra-low power modes, so it does seem quite attractive, except for, y'know, the actual having to learn a whole new chip, and work with that kind of stuff.

I have to say this does look quite powerful ^^
CONCLUSION
So yeah, all in all I have a few options, and actually now that I think of it, I will probably have to use "standard" JLCPCB assembly as I have LGA parts, the cellular module, and as it too has a low power mode it could very well work; the STM32 is also looking quite nice, and if I wanted to I could also chose to use a RP2040 along with a 555 timer or something like that that will automatically turn off the chip every few seconds, or as the microcontroller signals. I know adafruit has a board like that...

11/13/2025 6:44 PM - Display
I was wondering about what kind of display to use, and again, a low power option would be essential. I would also ideally like to use something that, y'know, can be read in the sunlight!!!!!
Thus, I have a few options. I could chose to realistically either use a TFT, AMOLED, or an E-PAPER.
It was quite a journey to find out more about power saving devices, definitely not helped by the fact that googling "OLED" gives you this:

Completely the wrong kind of thing. I had basically given up on finding OLEDs (after like 3 hours trying), when I found out that in the more niche space they were called AMOLEDs, and these things were sort of what I was looking for. What I am thinking of right now is to use an AMOLED or a really bright TFT/IPS LCD on the front side, so that I can have sunlight-readable colour text that can actually be updated at a reasonable pace, and also have an E-INK display on the back side to show battery voltage, etc.
And I got carried away again
Fell down the loophole again
And here I am, with a new idea. I was thinking of doing something like have a square(ish) display on one side, like an AMOLED, TFT, etc, and having an e-ink display on the right side for the battery gauge. I think it sort of is coming together.
I'm thinking of having an ESP32S3, with a STM32, Dual Display, and the cellular module I found, along with the simcard from simbase, if I recall correctly. This will let me basically take care of everything, and all I need is a GPS!
NOTE!!!!
Incase this feels rushed, you should know that I have spent like the past 15 days literally trying to find a good display, along with a good micro controller. I recently made a very bad example of how to save power with a previous miniature thingy-majig, and I don't want to do that again so I really am trying to be careful.
11/15/2025 - STM32
Alright. Here we are.
MCU time
The time has come. It is time to learn the STM32!!
So I spent way too much time again and chose a chip. So last time, I basically learned of my options, and I saw that the power consumption was reeeaally low. Like 16uA/MHz low. With a 4 MHz clock, that comes to just about ... 64uA. That's it. Less than 0.1mA!!

And it's not even that expensive! Just around US$5 on JLCPCB.
But now's the hard part. Learning a completely new thingy. A completely new chip.


Like that took me 409 replies to learn. 409!!! And if you look closely it took 2.5 hours just on the conversation, not including the stuff before.
And like if that wasn't enough, it is just so confusing that I got a headache and decided to try again tomorrow.
If you want to see the conversation for yourself, you can see it here: https://hackclub.slack.com/archives/C083S537USC/p1763230254755849
TL;DR:
Basically I just tried learning a completely new kind of microcontroller that was on a whole different level, and now I have somewhat of an idea of how to wire it and set it up, thanks to its datasheet, and a veeeerrrryyyy helpful person named Nathan Alspaugh, @NotARoomba
11/16/2025 - DISPLAYS!!!!
So like remember how I had sort of decided the display stuff and stuff? Well now for the decision . . . !
Display Decision!
So yeah here's my plan. I am going to use 2 displays, one LCD, and one E-INK
E-INK:

The E-INK display costs US$19
LCD:

And the LCD is for about US$17
My explanation
This is basically just so that on the most sunny days we (I) have the option to basically just rely on the (veeeery) slow updating E-ink, and on laterally every other day I can rely on the LCD. I was also considering having a heads-up display, basically attached to my helmet, so that I can also just like easily see how fast I'm going, even on a sunny day. This will add more cost thought...
Lemme just quickly draw you a drawing:
======================= . . . . . . . . . . . . . . . . ====================================
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|--------- E-INK ---------| . . . . . . . . . . . . . . . . |------------------- LCD -----------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
|-------------------------| . . . . . . . . . . . . . . . . |-----------------------------------------|
--------------------------- . . . . . . . . . . . . . . . . -------------------------------------------
bro that drawing alone took me 10 minutes because of markdown :(((
Anyways
basically I was thinking of maybe having some keys in the center or around it, along with buttons on the side. I am also very happy about the fact that the LCD has a touch panel, but in the winters it will be sort of useless. Don't worry, it doesn't get cold enough here for the LCD to stop working, though the E-INK might not enjoy being that cold... we'll see...
11/22/2025 2 PM - CELLULAR!!!!!
So yeah, um, as the name suggest I worked on cellular stuff!
So yep as you would think it really is a pain.
So like after reading the first 50 or so pages of the datasheet, I came to the point at which I decided it was time to work on the antenna for the cellular module. As of now, I have chosen to use the MOLEX 2047740001, a cellular SMD antenna, and like yeah it took me like forever to see if they were matchable.

And like that's where the problem comes in. It is alright, but doesn't cover the same bands as the module. The cellular module that I am using can handle the significantly more popular band at 700 MHz, however this antenna is unable to do so, so I will have to see if I want to just rely on the higher frequency bands, like the AWS band at 1900 MHz to 2100 MHz. This will, however, result in lower reception indoors, making it much harder than it has to be to test and debug.
Cellular-Indoor-Penetration-v2-OL
And like y'know the biggest thing I am worried about is if this thing doesn't work. I REALLY want this thing to work, and the thing is I am willing to spend the extra amount of time to do extra research. There is a reason that I spent so much time researching the STM32, and I might still chose not to use it as I really want this to work and I have experience with the esp32.

Well yeah that's about it. I also did spend some time looking into different antenna types, and I really did want to try to use a SMD or patch antenna.
I had tried looking for a guide to help me design a trace antenna, a antenna that is part of the PCB itself, but I was quite unsuccessful, and I really didn't want to make it the reason that my board failed. Like y'know if I had chose to follow a half-good guide, and it turned out that I messed up on the antenna even the slightest, then bye-bye $200 (more likely $250-300)
So yeah I then Googled SMD cellular antennas, and, believe it or not, I actually found something! This was like the first thing, so yeah, but I think I will take a look at other antennas too, as this has a low-frequency problem.
11/22/2025 4 PM - More Stupidety.
So like remember how I was complaining about the previous antenna not being in spec and all of that stuff? Well I decided to find a new antenna.
The new Antenna
So of course, spending a bunch more time, I found a new antenna. It looked pretty solid, was $7.39 on Mouser, only a dollar more than my other choice, and best of all had spectacular low-frequency reception, with around 55% efficiency, and at the AWS band it had a really outstanding 75% efficiency.

Now like if you haven't detected the foreshadowing yet, it's alright. I get it.
FORESHADOWING
I think now you can easily see it.
I went down the rabbit hole of seeing if it was good and stuff, and finding out how to drive it, and then just as I was about to make it my final choice,
BANG!!
I thought of checking JLCPCB if they actually had it in stock. And of course, they didn't.

WHYYYYY
I had even calculated the impedance matching and all of that stuff :heavy-sob:

Of course I only chose to check after getting to the
th page....
Time to go see if there is another antenna i can use...
11/23/2025 - Antenna and STM32
Ok well yepee good news this time
GOOD NEWS FINAAALLLLYYY!!!!!!
In case you can't read, lemme say this again. WE (i) FINALLY HAVE SOME GOOD NEWS!!!!! (and its not even a little)
Thing 1:
I found a bunch of other antennas.
Yep. I literally just Google MOLEX antennas, and i just found 5 or so antennas that JLCPCB also just happens to have, so that's good.


I am thinking of using a low frequency antenna on the board and also a higher frequency antenna, but I am sort of scared of cancelling of signals or some other thing that could do more harm than good. I guess I'll see. I found this good link to combining antennas but again I didn't have too much time to read about it after learning about the STM32
Thing 2: (the last one)
I also sort of got somewhere with the STM32 crystal and stuff, and I am thinking I might start to place some components soon, but first I am thinking of how to set up the PCB, like I don't know what sizes and stuff will look good, so I am thinking of Fusion360ing a protype, a simple thing with proper dimensions for the screen so that I can determine the PCB's size, which will then give me the dimensions I have to work with.

11/25/2025 - More Screeny Stuff
Yeah I sort of decided I was going to model the screens out and determine how I was going to set up the pcb. So I sort of have a few options, I can have a setup like this:

With 3 displays: 2x LCD + 1x E-INK, or
With 2 displays: 1x LCD + 1x E-INK.

3 Displays
So in the option with 3 displays, it has the pros of having a far more beautiful setup, as shown in the upper setup, and I will also have access to 1.6x more screen space, and double the colored screen space.
It would look something like this:

but like y'know, actually beautiful.
it would basically have the highlighted sections have digital dials, with numbers in the center,

And the center display would just have the battery and all the things that don't change very frequently, along with an analog clock so that I can sort of know the time, even if it only updates once every three minutes.
We could have the right display have the speed dial, but now that I think of it I don't really know what I would put on the left one.
I am thinking that I could have the speed dial maybe in the center, with the E-INK off to one side for all the static information, and I could have on the left side the other stuff that updates semi-frequently, like the distance travelled, the cellular status and all that stuff, other semi-useful GPS data, temperature, and all that other good stuff.
One last pro is that I would have more space to work with underneath the board, to try and get it as close to what the cellular system wants.
Cons
However, the main cons to this setup are the fact that the extra display costs an extra $20, and also that this larger PCB will cost more. (About $10)
All in all, this option will cost $30 more.
2 Displays
In the version with just two displays, I would have to cut back on the font sizes, and that would really reduce the readability of the entire system, and it would look a bit lopsided as it would have an unbalanced screen setup, but it would save the other $30
Conclusion.
As my STM32 chip has enough separate SPI lignes to handle the displays on individual ones, I definitely feel like the 3x display option is better.
And, as I (likely will) have 2x CPUs, I can make it so that the STM32 can control maybe the E-INK and the SD card reader/writer, while the ESP32, the one I am more confident with, will be able to drive the other 2x OLEDs.
EXTRA!!
And, as a bonus, I have this cool little surprise for you!
I finally have a rough cost estimate. We are looking at around US$130~150 for the PCBA, including the 6 layer PCB, while the extra displays will add about $80. The SIM card and data plan will be about $15, and all in all, add misc. stuff, and you get about a total of around $250~260 USD.
12/6/2025 - Started Making the Schematic and Routing! & COST ESTIMATE
Halo World!!!
Yes. It is me. I AM BACK!!!!!
Enough pleasantries.
Ok, first up,
ANTENNA!
So like a bunch of time and research later, I have chosen an Antenna! I am going with the 1462000001, a 698 MHZ - 2.7GHZ antenna!
Basically, I just datasheet dived. Datasheet dived a lot, and like it seems pretty good! Génial! And like y'know if that isn't good enough, it is most efficient at the target frequencies, the most carried frequencies around me.
And, then, I found out about antenna matching.
Antenna Matching.
Like if someone just thought. "Hmmm. I think that being an RF engineer is a really easy job. Why don't I just through ANOTHER wrench into the process.
So like they just went and messed up with the antenna's frequency efficiency chart, and just did this:

This is basically just a graph of where the antenna is most efficient, and like the yellow line is with matching, and the blue without. Lower is more efficient. As you can see, the blue line may look just fine, it is just efficient at a different frequency.
BUT
the problem just is that that doesn't do much. You need the antenna to be maximally efficient at the frequency you're going to be using it at. And guess what? The majority of people will be using it at points where the yellow line if lower. So like y'know, why can't they just make the yellow line the default!?!?!?!?
My Circuit.
So like we talked quite a bit about that stuff, now let me show you my current schematic and layout.
Firstly,
We have this thingy:

That's basically just the antenna, with its ground, and the signal line. Then, below it, we have the antenna matching circuitry.

This is basically just what the datasheet recommended for a 130mm x 60mm board. And guess what board size I have? 130mm x 60mm. Yeah I'm not about to mess up with this stuff that is adding $50 to the cost!!!!
Current cost.
Speaking of which, here's what my current cost breakdown of just the PCB(A) is looking like:

I know bro. I'm already at $100, after using the $20 coupon for a 6 layer PCB, and after a cheaper form of shipping which will inevitably be more expensive for the higher-value finalized PCB.
And all of this is not including the $70~80 for the LCDs, and ~$30 for the SIM stuff, likely lower.
All in all, I'm already at $200, and really just need to make the rest of the PCB as cheap as physically possible.
btw, me asking for confirmation that my stuff was good to ~3hrs in and of itself

12/13/2025 - Block Diagram!!
NOTE. I use OLED / LCD interchangeably, even though I mean this LCD
So yep as the name suggests, I am working on a block diagram to make my life easier. HERE is the block diagram's latest version, but as of now it is just this much:

It also got me thinking of how I was going to set everything up, especially in terms of power management.
Power Management
As it is right now, the esp32 consumes the following amounts of power:
| Mode | Power Consumption |
|---|---|
| Wifi Transmit | 180 000 ~ 240 000 µA |
| Active Mode | 90 000 ~ 130 000 µA |
| Modem-sleep Mode | 20 000 ~ 70 000 µA |
| Light-sleep Mode | 700 ~ 900 µA |
| Deep-sleep Mode | 10 ~ 150 µA |
| Hibernation Mode | 4 ~ 6 µA |
For reference, I am going to use 2x Molicel INR-18650-P28A.
This is a 2800MAH 18650 battery, and with two in parallel, I get 5.6 AH.
If the CPU alone is using that much power, I might be cooked. The screens will likely draw about 100 ~ 150 MAH. Alongside that you have the cellular module, GPS, IMU, and a whole other CPU, the STM32U575VGT6.
But the good news is that the STM32 uses just 19.5 µA/MHz, and if I just run it at around 16 MHz (which is about the clock speed of the Arduino uno) it will draw just 320 µA
Even at full speed, it will just draw 3200 µA or 3.2 mA
And if you were wondering how that is possible, very simply it was on purpose. I chose the most lowest power thingy magig I could find, and yippee! here we are.
So like the problem is, which devices should go with which CPU.
The ESP32 is less power efficient, however it is more powerful, has bluetooth, and a tonne of RAM.
And ofcourse, the STM32 has power efficiency on its side.
So here's my block diagram again:

Basically, my plan is to run the ESP32 when I am biking, and along with it the GPS, GSM, and the OLEDs. This way, all the higher power stuff will only turn on for shorter periods of time. Also, just because it makes more sense, I am also going to put the wheel speed & distance sensor connection to the ESP32.
On the STM32, I am going to have the lower power equipment thus the E-INK and motion sensors, but also I am going to have it be the main CPU that will always be on. This way, it will be able to control when to turn on and off the ESP32, and as the have a UART connection between them, the ESP32 will be able to signal its choice, perhaps after it is done with periodically checking if the bike has been stolen.
P.S. I accidentally added an hour last time, so I am counting one less this time.
12/14/2025 - Routed, Re-Routed, and Re-Re-Routed the ESD Protection
Ok. I get it, that was a long title. And also I am sorry, I don't have as many pictures as I would have liked to have. Anyways, here it is, my current version of the ESD Protection.



My Reddit Post btw (it has some pictures from my last rerouting)
Explanation Time.
So basically how it works is that it just has some 22 ohm resistors near the module, really really close, and those are there to filter out noise, just like how it was recommended in the example circuitry.

Here, we're talking about R1, R2, and R3.

My design ^
Example Design v

ESD & TVS
Then, we also have a TVS. This can be seen in the reference design, just above, and also here are some close up shots of my work.
Here is the TVS protecting not only from ESD, but also capping the voltage first, by putting it into vdd.

And routed:

Curvy Routing
In case you didn't notice, I am trying to use curved routing for this stuff, as it basically helps with making the signals clearer, even better than just 45 degree traces.
As a bonus, here's my routing so far:

Note
Again, you might be wondering how I managed to spend so much time routing, but it just is a slow task for me, especially with the curvy stuff, and also I first spent a bunch of time trying to route it all on one layer, and in affect, I have that. I just moved the data line to another layer, ground in between, so that it could be protected and not have stuff induced into it. I only have a via for ground, and one for power, VDD.
12/19/2025 - e.g. Routed the PCB
Always wanted to do that
Anyways, I got this level shifter part done:

Just don't mind the left side which still needs work.

But like anyways, this one was quite tricky because I wanted to keep those wired nice and tidy, and avoid vias to 1. disturb the ground plane, and 2. block the other 5 layers. As you can see, the left side still has to be done and I really do have to find a way of doing that...
BATTERIES!!

I also set it up to have the 18650 holders, as they consume the most space and block a lot of stuff, but also because they have to be relatively close to the GSM (cellular) module because they need some FATTT traces.

STM32
This to is going pretty swimmingly, as I have started on its schematic.

Just one hiccup, this STM32 requires a beefy capacitor at the VCAP port, but it is also required to have really low ESR at 3MHz, which is actually very hard to get. Thus, we have the option to trade the 4.7uF capacitor for 2x 2.2uF, as these are waaaaay easier to get in appropriate sizes, and the ESR requirement per capacitor halves or doubles or something just making it a whole lot more lenient.
Side note
I am a little concerned about how this all is going to be, as the space is there, just a little tight, but most importantly I still have to get the displays and stuff going, main power trees, and also design the case in <10 days to submit for Hack Club's Blueprint.
12/21/2025 - e.g. Routed the PCB
Did it again.
More Schematics and Routing.
GSM (Cell)
I think I might have just finished the entire schematic & wiring for the GSM. I'll double check it later, but real quick:
1 - I wired up the status LEDs

2 - I wired up some HUGE caps


3 - Wired up a header so that no matter what I have the cell stuff to test for next time I do this

4 - Wired up the connection between the voltage shifter and the ESP32

5 - Set PWRKEY, the main power controller of the SIM7080G, up.

ESP32
As for the ESP32, it was just mainly me running a program on one of my existing boards with the same chip, and I found that only GPIOs 22 - 38 don't work (38 does, 22 doesn't)
I also wired up the USB line/port

LCD
Found some FPC connectors


and these are going to be the connectors that connect to the LCDs, as the LCD comes with a 18 pin FFC (like a FPC) and the LCD has a connector. This just makes the physical wiring job a bunch easier, as I now longer have to solder some 26 thin wires that keep breaking in my face. (Speaking from experience. Looks down. :SOB:)
STM32
Well I have a bunch of capacitors...

Need to wire that stuff up.
In other news, I sort of got the SD card stuff ready, and I prepped the USB port for wiring

P.S.
I really am glad I chose a 6-layer PCB, as I am already using 3 of the wiring layers, and it is essential to have huge solid ground layers for the antenna.

There's a reason why my board is shaped like that, and why everything is so clumped up. Maybe I should spread stuff up, but I sort of have to rush ... only ~8 days left to submit.
12/22/2025 12 PM - Some Display Planning.
Alright. Here's the plan:

Basically, the big green rectangles are the displays, LCDs on the edges, E-INK in the center. The other green rectangles are the 18650 battery that are going to be used. With this layout, we have the antenna kept as far as reasonably possible, but we still have a huge-ish area,

As you can see, it'll take up around 168 MM, in width, and about 110 mm in height. To make it symmetrical, it's probably going to go to ~180MM, which isn't crazy, but still.
12/22/2025 5 PM - More Routing & Schematics
UPDATE!!
Here's my most recent pictures:



STM32
After a bunch of contemplation, I have decided to but the STM32 in this little corner all by itself:

But another problem, USB lines:

y'know how it needs 90 ohm differential routing and all that good stuff? well yeah that's why those wires look so weird.
Vias?
Another big no-no I have because of how the two signals need to cross over each-other. WHYYY?!?!?!?
Crystal
One good thing though is that my crystal wiring and stuff does look pretty good... 
GPS
I also wired up the entire GPS, did all the comparing between different models and stuff, and that.

You can see it with its keep-out and stuff. It's the L80RE-M37, and I still have to do the RX/TX stuff, but that's a quick 5-minute job.
...
And yep I just finished that too.
Display connectors.

Although not wired, I have found them a place
Challenges
Coms
My biggest problem right now is that I need 3x UARTs on my esp32, but although it technically has 3, I'd rather not use UART0, as it might bug-out.
So, instead of uart to talk between the STM32 and the ESP32, I could use SPI, but the thing is there is not a thing on the internet, after 1+ hours of searching, for SPI slaves in Micropython.
12/23/2025 - More Routing & Schematics. Again.
Sorry for the rushed journaling Yesterday and Today.
Current Stuff


Power (esp32)
So yeah, I wired some POWERRRRR

Basically that entire setup took me like 3hrs to do, because that datasheet was just not being processed by my brain. It was almost like trying to get meaning out of a blank piece of paper. And then, after I finally got stuff, I had to find the proper inductor, placement, and all that good stuff. Y'know the stuff that takes you hours...

Power (Main)
So yeah, I wired some POWERRRRR
Here's the INA226 circuit, the device that will measure the battery voltage and current draw

This was the most straightforward thing I've done as I've wired this one up like 5 times before, but I still had to find the shunt resistor (10 milli ohm) AND the good wiring stuff, like Kelvin traces and stuff. All over hyped if you ask me...

Power (GNSS)
So yeah, I wired some POWERRRRR
oh i've got to stop that...
Anyways, I wired up this MOSFET:

And it will allow me to control when the GSM module is on and that good stuff, but yeah that also took like forever because I had to choose the right king of MOSFET (P-Channel was a whole lot easier) and I had to then find a suitable MOSFET, and wire it up... Takes time, I tell you.


I also added the simply boot and reset buttons for the ESP32, and its looking quite good. I just have to get some final connections between the Cell chip and the ESP32, along with wiring up the majority of the STM32, including the toggle to control the ESP32's power line. (btw it draws less then <1uA when it's EN pin is low!)
Sorry again for the rush, I've been grinding too hard clearly...
12/24/2025 - More Routification
Again, I'm sorry its getting very late. I hard grinded...
Current Pics
Anyways, lets start with some cool pictures of my current setup. You'll notice a hole lot more stuff.


Stuff I did
Basically, I just worked on some ESP32 stuff, and the foreign language of the STM32
ESP32

Simple enough, just wired up the UART connection, and the SPI connection, both to the STM32. They are just some data communication lines.
STM32.
This was the big boy today, with a holy lot of new stuff. Before, there was just the crystal and some decoupling caps. Now:

You can see that there is the COM lines, and also a thing called an SD card. Yep, I wired that up, and that took a lot of time because apparently SD Card lines are sensitive. (Oh yeah also I had to manage vias, almost went on to the fourth (and final) signal layer, and that stuff.
SD card

Here's the SD card slot, and yeah. Last time my setup didn't work, but I hope that with the pull-ups and the 33 ohm series resistor it will be ok, even if it has to be slowed down.
The SD card did take by far the most amount of time as it has to be wired so sensitively and has 6 wires, all so special...

Final note.
I have left out the boring and repetitive stuff as I really need to get to bed and stuff, but yeah I think you should get the gist of it.
I am also going to work on the main display SPI as it is important and high-speed... (tomorow)
12/25/2025 8:27 PM - Main Display SPI & STM32 Power
Yep that's all I did. Byeeee...



Still here? Well in that case, Let me elaborate, for you my highness
Displays
It was a good idea that I started on the displays.


The fattest of these ribbons are actually there just because of the display. The green was is for the 5-point touch on both displays, and the red wires are for the (hopefully) 80 MHz SPI bus.
To run this ribbon, I had to rewire so many things to make space.


Like the slower SPI bus here. For the microSD card line, since it was also really high speed, it couldn't have any vias.

That's why this area had to be rewired to move the Power-Generation circuit over.

Even then, the slower parts had to jump under the main, high-speed, signals.

I know this doesn't seem like much, but when half the board is already done, wiring even a little more can require changing a lot of stuff.
STM32 Power.

I put it this Buck-Boost converter here. This converter, somehow, has a Iq of just 75 nA! That means that only 75nA will be used when no power is being drawn by the STM32. (That was the biggest reason I chose this setup and buck-boost, even if it was a bit more expensive.)
I also added a MOSFET to control the supply of current to the low-power electronics, like the INA226 and the (tbd) IMU

12/25/2025 8:38 PM - Double checked costs.
Just a quick check.
Here's the cost of the PCB:

And including everything:

I am just really worried about clearing customs, and also paying the local GST.
12/26/2025 - Just a bunch of Finishing Touches.
I think I am going to try a new type of journaling.
Basically, I am just going to tell you what I am doing, add pictures as I work, instead of doing it afterwards.
Re-Check
I was just checking over some schematics, and voila! mistakes!
Basically I just completely forgot to add the VDDA wiring, basically the power line for the analog sense circuitry.

I have now added the 4 capacitors it wants.
I also wired up the "Power Good" pin, which basically just monitors the ESP32's power supply to see if it is overloaded (should never happen) or is giving messy power. I could temporarily turn off the backlights or something to let the power line re-stabilize.
LEDs
As the stuff is coming together, I worked a bit on LEDs, I added one on the ESP32 side, for power, and on on the STM32 side, this being just for indication and debugging. The biggest problem with adding additional stuff right now is that it makes everything much, much harder. Like to add the STM32 LED, I had to try so many different places, and eventually settled on this one:

When I added the "Power-Good" wiring, and the "Power-Enable" wiring (to control the ESP32 regulator) I had to put in many more vias, etc, because as the wires went, they broke through the invisible ground planes, on top of everything else...
Ferrite Beads
After a bunch of help from @tty7, I decided to add Ferrite beads to the USB ports to reduce their antenna-like properties. (L6 btw)


IMU
I also got help with finding an IMU to detect when the board is shaken, maybe to remove it during a theft or if the entire bike is being stolen, and it's the ICM-42670-P. (Still have to wire it up tho...)

Note:
Tomorrow i might, after finishing the IMU and Compass, go do a quick run of the 3D model. Due date is approaching quickly...
12/27/2025 - Finished Designing and Routing the PCB
I get it ... the title is too long.
Pics!
So yep here is my PCB, all done!

It looks way more impressive when you take a look at this picture:

Note: I am still going to add the stitching vias at some point.
IMU
I wired it up, checked datasheets, got Gemini to check it, and got this nice guy, @tty7, to help me check it out.

Compass
For future in-built navigation, and just a cool feature to have. I had to go look through a bunch of options on JLCPCB, and this is the first one that came up that was supported by economic PCBA, and also was compatible with the STM32. It took me a while to see that it was actually compatible, as it said 0.7V, and then real small VDDIO. Basically that means that it drives high at 0.7 x VDDIO, not 0.7V. (STM32 needs ~2.3V)

Another cool thing is that it uses BGA, but because of that I had to use a tiny 0.08 mm trace, and cut-down the Design-Rule clearance, hoping nothing bad happens... (The two decoupling caps are bigger than the entire chip!!
Headers
I added two (2) headers, one for the hall effect sensor that will count the amount of times the wheel rotates, and one to hook up the E-INK display.

I know this is rushed, pls forgive me.
12/28/2025 8:09 PM - Double Checking ... A lot of double checking
Yep just as the title says, I did a bunch of double checking. The two biggest things I found were that
- The compass wasn't connected to power, and
- The main Cellular power switch wasn't hooked up right.
In more detail:
Compass
So if you look closely at my last shot of it, you'll see its hooked up to the LP_3.3V line. However, for whatever reason, it wasn't saved when I came back to it today, and well, yeah that would be bad. So, after adding the power lines, here it is.

Main Cell Switch
So remember this part of my schematic?

Yeah, as you can see, the high-side MOSFET will switch the power on and off, as long as you provide it a signal. See that? You need a signal. Well yep clearly, I thought there would just be some magic and it would just work.
So well yeah I just added a connection, to pin 6, (IO6) of the ESP32
Power Saving
So you have to think, what about power saving. What if I don't want to change my batteries out every week? Well then in that case you have Power Saving!
So yeah instead of having a main MOSFET, with leakage currents at ~15uA, a lot in this case (total low-power power consumption is ~252 uA) I am going to have the power be delivered from the GPIO of the STM32.

like this ^
One last thing, to have the STM32 in ultra sleep mode, I am going to have the set up be that the Hall-effect sensor is (for bike speed measurement) is going to be on a wake pin, so rolling the bike should wake the system up from its ~25 uA sleep setup. (BTW at this consumption it should run for a few decades!)
GPIOs

So yeah as you can see in that image, I am sort of out of GPIOs on my ESP32S3, however my STM32u575 still has 36 / 82 IOs open.
I also added a screw terminal so that I can just screw in the wires that connect to the wheel's magnetic sensor.
Feedback
Not only did I upload my entire schematic to Gemini (only useful for finding the BMM150 (compass)'s lack of power), but I also uploaded it and asked my friends who have used the STM32 also, one of whom is using almost the same chip. (STM32U575 vs STM32U585)
The biggest thing was the power consumption that @tty7 helped with, and @NotARoomba helped a bunch with helping me get started with the STM32 and looking over my schematics.
Note
I really have to get going with my 3D modeling, but I've heard that Blueprint will be extended to Jan 31st...
12/28/2025 8:13 PM - Just some pictures
I didn't have any good pictures last time so I am going to add them now.




I also cleaned up the layout of the huge 100uF caps and made them closer to it


12/28/2025 8:49 PM - Replaced Shunt
Yep, I just simply did some calculations, and my current shunt was way to small, just 10mΩ, and I replaced it with a 20mΩ one. That means the maximum power went from <8A down to <4A, and that was enough to sort of concern me, especially with capacitor inrush and stuff, so I just checked around and stuff and I eventually was just like bruh whatever. The thing is, 4A is sort of close, as the SIM7080G can peak at 2A, and the displays could probably hit 1A, but I don't think the rest of the stuff will be able to hit another 1A.


BTW the shunt has the same package, so all I had to do was find a good one.
The shunt is +- 1%, so the my accuracy is only +- 0.04A at full power, but at low power (<1mA) its the INA226's 16-bit ADC that's the limitation. Thus, I changed the shunt to a higher resistance and higher voltage drop one so it can make out the difference easier. (It effectively adds another bit)
Accuracies
first number, current consumption.
second number, accuracy (either the ADC doesn't have enough bits/resolution, or the shunt isn't accurate).
@4A -> 40 mA (1%)
@1A -> 10 mA (1%)
@100mA -> 1mA (1%)
@10mA -> 100uA (1%)
@5mA -> 61uA (1.2%)
@1mA -> 61uA (6.1%)
@250uA -> 61uA (25%) (low-power operational current)
@100uA -> 61uA (61%)
Notice that creep? +- 25% is a lot at operational current
12/29/2025 8 PM - Suture Vias (Stitching Vias)
I worked on the stitching vias that basically connect the layers together. It was a bunch of checking what sizes are alright. At first I tried guess and checking. I started off with 0.8mm via spacing, and for some reason everything was glitching out like crazy, but eventually they applied.

Then, I tried 0.7mm, 0.65mm and then 0.6mm. They all worked — however it sort of felt weird. Thus, I went googling what JLCPCB can produce and those clearances, and it hard core hallucinated. It said some crazy numbers, but it also gave JLCPCB's specification website.

From there, I had to go into the drill section, where it said that the via holes should be about 0.2mm apart:

But that feels like its way to close, as some existing vias I have are 0.305mm apart:

And EasyEDA doesn't allow vias to be any closer. But, sticking to what JLCPCB said, I changed the Design Rule — and thus the DRC (Design-Rule-Check) — to lower the spacing a bit, and MESSED EVERYTHING UP...
Yeah that's something I'd rather not touch again, but it still sort of works, and I just didn't bother changing the hole-to-hole spacing (needed to be >0.3mm to >0.21mm) and well yeah just figured 0.6mm spacing was alright.
So yeah, all in all my vias are about 0.6mm spaced, however near the PI network near the antenna, I have a denser grid of a basically hexigonal layout:

12/29/2025 9 PM - 3D Modeling

Onto 3D modeling, I finally got started on it.
Basically, as it stands right now, I got everything loaded up into Fusion, and sort of got back into the hang of things.
LCD
I found an official 3D model of the LCD on waveshare's website, and here are some pictures. (It did take some digging, as I originally searched on other sites, like GrabCAD and Thingiverse. It was just random luck that I happened to go to the wiki, and that I just happened to find the model.)



PCB
I just quickly imported the 3D file from EasyEDA, and then realized I hadn't added any mounting holes, so I added those in the weirdest spots.
One is dead center-top,

And the others are on the very bottom, as you would expect.

Here's the model in Fusion

E-INK
I was sadly unable to find a 3D model of the E-INK, not from waveshare, nor online, but I have sent them an email.
Instead I found this case thingy-magig, but it's not any good :(

It's actually quite weird.
Anyways, I just made my own sketch of the suggested outlines, and well, there it is. Its not eventful or anything, but still:

All Together
Here is what it looks like as of now, with the PCB going to be on the top, then several ground planes are going to protect the GNSS antenna from the noise of the LCDs, and the screens on the underside.

I am working on a truss to hold the screens in place, and it's going to be like the blue thing and slot into the main thing. I am thinking I might get this machined so that it is ultra strong, as necessary for a theft-proof device. However for testing, just a 3D print should be alright, and then I can see if there is a future hack-club thingy in which I can design a unbreakable case. TBD.
Well yeah that sums about all that I have done in terms of the 3D models.
12/30/2025 - 3D Modeling, but slowly enough you'd think I'm a sloth.
Yep, I did 3D modeling.
Yep, I was slow.
Yep, you might wanna call me a sloth.
My model

As you can see, I have some stuff done, and the biggest part is that I have the main structure that carries the screen.

As you can see, it is a little complicated, but obviously doesn't have fancy fillets or anything. Firstly we have screw holes to mount the screens to it, and we also have the main structure to support everything. It has a hole in the center to allow for the batteries to poke through.

Of course it'll be more polished, but that's how the rough outline goes.
E-INK
So yeah I got an email back from waveshare, and they said they didn't have any more accurate drawing. Well that sucks, but I found a 3D model that was a case for one of those displays, at https://www.thingiverse.com/thing:4639641 In the example pictures, they showed it looking like it was almost perfectly a container, but I think I am going to have to put on the final touches at the end, once I get the E-INK and can actually measure it.

Color & Other
Color
In other news I figured out how to add color to the objects I model, and I also spent a while trying to figure out the optimal setup.

Assembly
As of now, I have it setup that the PCB is on top, then the holder, and then the batteries and board on top of that assembly. Next up I am going to design something to go under, for the plate I designed, and then something to go on top.
As my plan is, I am going to have 3 pieces, that will probably be screwed in place or something.
Deletion
So yeah somehow a bunch of my work got deleted midway, and then when I tried undoing/redoing absolutely nothing happened, but it wasn't a huge amount of work, so not a huge deal.
1/3/2026 3 PM - A little bit of power consumption metrics
I was just wondering about how much power the SIM7080G uses in its different modes, and a quick search gives the following: 
(Actually it was not quick because of how dog-water google has become)
Basically, when its idling it pulls 10mA, basically nothing for my on-mode, and when it's ready to shut up and sleep it draws just 3.2 uA, less than the GPS's backup mode (for its RTC) and way less than the MOSFET's leakage current of 15uA.
umm i also just forgot, when i came to do another journal i just saw that i was midway through my last journal entry so like umm...
1/3/2026 4 PM - Minor Power Consumption
So y'know how I said last time that my MOSFET's leakage current was like 15uA, and the module's PSM (Power Save Mode) draws just 3.2uA? Well yeah so I just decided to replace it with a switch, just in case I ever want to turn it off. (I don't know why I would, but still)


Side note: I still have trouble believing this small red switch is rated for 5A...

This way my total current draw (in max sleep mode) is now at:
| Device | Power Consumption |
|---|---|
| GPS | 7uA |
| Cell | 3.2uA |
| STM32 | 640nA |
| ESP32 Bypass1 | 100nA |
| Quiescent current | 75nA |
btw this took a bunch of research for new, updated numbers.
As you can see, the biggest power consumption comes from the GPS, but it would have been the MOSFET. Whereas the current current consumption is 11.015uA, the previous one would have been about 22.8uA, which is significantly higher, and had added points of failure.
With these numbers, we get a standby life of about 21183.235 days, or about 58 years on a full charge. Which is of course, honestly, CRAZY.
1/9/2026 - Screw
After a (relatively) long break, I am back at it again!
My goal right now is to speedrun to protective shell around the PCB to prevent any harm. As there is sensitive RF on the board, unfortunately I will have to 3D print it, and CNC is out of question.
Ok. Its sort of time to get serious, as I am nearing the submission point of my stuff.
Screws
First up, it is really important to find screws that will, you know, actually work.
So first up, I took a look at the official datasheet for the LCD screens.

Basically, all it really shows is that the PCB to top of the screw hole is 4mm,

and the screw size is an M2.5.

I found some M2.5x8mm, M2.5x10mm and M2.5x6mm screws.
the thing is, though, that I also need a screw bit to drive the screws, as they have something like a T8 head or something, so that's that.
And even better, according to the Waveshare Docs, the E-INK also uses the same size screws too!
However, as I don't have the 3D model or anything, designing a proper size case to protect the screens in the event of theft/crash I might have to get the screens first...
All in all it took about 40 minutes to look for this information and just start the 3D modeling.
Main Truss.
Ideally, the main truss will be built from CNC aluminum, and that that you see below (in red) is what it looks like.


This side will be for the Screens:

And this side for the main board.

It is significantly higher up because of the huge batteries that will be in between the board and the screen, and thus it acts like a spacer. I am trusting that the aluminum is strong enough.

One (not at all) small thing is that I have to deal with the cost.

$40+ for the part, plus HST, plus shipping will add to quite a bit. So instead I am going to make the PCB mount to the top cover, which will mount to the main truss and the bottom cover. Only the PCB cover (the top cover) will be 3D printed for RF, but the others are all CNC.
Apparently, the fabs don't like all these weird extrusions. Who would have thought...
So I guess that all the work I did today was for absolutely nothing (not really the screws and stuff were useful but still). How terrific. I guess.
Well mounting hardware deleted!


Hey at least its colourful now!
By the way, thanks to @Raygen Rupe for helping me in getting the main mounting stuff lowered in cost and stuff. But yeah a big bummer that I have to redo this :hs:
1/10/2026 12:12 PM - SCREWSS!!
Do you love screws? I sure don't
Like bro I would have thought someone would have designed a better way of doing all of this. I just had to resize all my holes, and then on top of that because the screws are tapered, I had to taper the holes.

That might not seem like a big ordeal, but the thing is for a noob, you have to account for all the extra work of figuring out how to make the tapered holes, and understanding whatever the heck this means:

Oh yeah also I forgot that you know, fusion is like the weirdest software, completely counterintuitive, so that doesn't help. (Not as bad as Adobe though)
Oh, and here's some pictures:



1/10/2026 12:18 PM - Fileting!
This is another task that should be the easiest in the world, but Fusion is being a donkey.
See, the outside fillets were easy-peasy.

But these donkeys thought it was a good idea to keep every small face you make. So, on the inside, it was a hole other story. (get it?)
At first these lines on this face don't look like a big deal, but drum-role-please ... they are!

When you zoom in, to fusions max, you get this:

Somehow, those two plates are separated by 0.002~3 mm, and I was unable to actually fix that, so I guess there's not going to be any filleting there :(( (fusion only allows me to move the sides by 0.001 mm at a time, and seeing as the difference is like 0.0024, I can't do anything about it. What a waste of time :(
1/10/2026 1 PM - Top Bracket.
So um yeah that's about what I worked on.
Firstly, I had to think about the dimensions I was going to set up, and here's the sketch I settled on:



Basically, it looks like a big block, except for the fact that there is a recession in the center for the PCB.

However, I then noticed that it looks quite beefy, too beefy, and saw that the biggest part, by a very significant amount, was the screw terminal:

Thus, I went back to my PCB to change the mount, but then, ofcourse, it took me like forever to find any decent part, so yippee. :(
While I was re-rendering the 3d model, I noticed a switch didn't have a model, so I went looking for a new switch, which again took so long that I realized it wasn't even important :(
Now, all I have to do is change out the PCB model for the new one, and I'll shave some ~5~10 mm.
Re-aligning the new PCB was a real easy job, and I have an updated board now! only real difference is that there is now a switch to control GPS power, and a significantly smaller header.
btw, the header is used for connecting the wheel-rotation sensor to the ESP & STM, and can act like a ultra-slow-speed back-up comms line.
5mm thickness saved!


Just one note, I am thinking that I will move the E-INK header inwards, so that I will be able to have a significantly compactor case.

1/10/2026 2 PM - Moved Header In by 6mm
I rewired the entire header part, and I also moved it in by 6mm, just like that that the title suggests:

It also actually simplified wiring, because now the wires could go from the right side, and thus I have to use one less vias.
This also allows, as I said earlier, for me to condense the entire thing!

(I'm sorry you're gonna have to compare it with one of the earlier images, as I really can't get fusion's timeline thingy to work with me.)
1/10/2026 6:21 PM - Standoffs, etc.
I 3D modelled in some mounting points for the PCB, so that y'know it can be mounted. I am going to add some holes, and well yeah.


Basically I just sketched some holes, and made the stand offs 8mm wide. I am now going to add the holes that will allow the not-self-tapping screws to self-tap themselves. (btw I've done this before it actually works).
Ooh, yeah I also made the back side look absolutely spectacular, including some really big fillets!


Once I add the mounts, all I have to do is add the bottom cover and find a way to connect everything!

1/10/2026 6:58 PM - Added Screw Holes to the Top Mount
Yep. Here they are!

(just in silver instead of black to make them easier to see.)
Because they are designed for M2.5 screws, how it works is that the very top is 2.6mm, and as the screw is rotated, it ends up being able to tap itself in the plastic. To keep the grip, the hole becomes smaller as it goes, all the way to 2.4mm.


But yeah it took me like forever to confirm that this is ok, and I might have to redo this all anyways...
1/10/2026 8 PM - Stuckification
I'm sort of stuck rn.
Like i don't really know how to build the other part of the enclosure, especially because I don't really know the dimensions.
Let me explain.
So basically, here's what I have so far.
BACK:

FRONT:

The thing is, for strength reasons, it makes most sense to machine the plates, however the machined items should be just that: plates. I want to make this entire thing as cheap as possible, so I am sort of confused.
So here's the thing:
I have a plate.

But I don't know the size of the E-INK. that's ok, i can put that in once I get it.
The problem is here:

I need a way to basically just attach the bottom, the middle plate, and the top plate together.
I am thinking that I could just extend the plastic cover further, however that would end up making the vast majority of this out of a weaker material.
I guess that really is my only good option...
Yeah. After some thinking, I think I can actually make this work.
hmm...
Yeah I think that I can make it so that the plate will attach to the PCB shell as it is, and from further on top it will just be a shell thingy, as its only a bit taller, about a CM. Once the main part ends, then the top plate will be attached to the top.
I still don't like this...
1/11/2026 - Vias, IMU, and Costs, and Impedance Matching
I don't really know how much I talked about Impedance matching before, but that's first up!
Impedance Matching
So like I sort of messed up the previous impedance matching, as it was accidentally set to the signalling on layer 2, not the top one. That was a relatively quick fix, but I had to double-triple check that it was correct, and then double-triple check that the stackup wouldn't mess with anything else.

I also had to re-place a bunch of vias around the line, as making it slightly thicker made it so that the vias were now too close for DRC to like.
Suture Vias
Y'know how before I talked about via spacing, right? Well screw that I'm not going to be putting a via every 0.6mm. Instead, only in the GPS area, I will have some 0.7mm spacing,

and everywhere else I'll settle for just 0.2MM spacing. 
Again, this was with the help of @tty7
IMU
For whatever reason, JLCPCB chose to make the IMU I was using into a standard assembly part,

But lucky enough for me, my friend @tty7 was able to point me to the ICM42 series IMUs, in which by random chance I picked one with very similar functions, and the exact same layout. All I had to change was a single capacitor from 10nf to 100nf.
Cost
I know all of this because I just so happened to have been checking the total cost. All IMU mess was just a byproduct.

Here's the picture before taxes and everything. You should note that the PCB is $42, and assembly is $160.
Assembly.
Out of assembly, you can see that about 42% are one time setup fees, about 40% are the components' fee, and the rest 18% are just for soldering and double checking the solder is good.
note.
It should also be noted that the fee is without any coupon being applied and without shipping and taxes
Lora
Yep. I spent some time contemplating whether or not putting on lora is a good idea, especially as a low-operational-cost alternative to cellular, if it even works.
But I sort of came to the conclusion that it wouldn't be worth the cost, as I would also need a receiver.
Cell RF.
Well yeah that was close. So mainly that that came out of my conversation with @mpk was that I needed to change my trace widths, but not by a ridiculous amount. For the coplanar part, that is.
So basically I had to change this wire to 3x its size, ~0.11mm to 0.35. Well that is absolutely huge, but other than that, I only really had to move the matching circuit and all of its vias in line,
and also put vias all around the board by hand to limit the board doing funny stuff, and I also had to recalculate the coplanar wire parts, several times, because it wasn't matching Max's calculations, and then I had to look up the prepregs' dielectric constant to see if that was the problem, and then I just ended up seeing the difference with my calculations and his, but all in all it was a small 5%.
Yeah by the way that was sarcasm. It was a metric tonne of work. AND i also forgot to do any work for my other duties...
1/21/2026 - 3D modeling
I finished the base stuff!
I just have to add some screws so that the main truss can connect to the other parts, and so that the top plate can do so too.

Finished case:



Some inside shots







It was pretty simple of a thing ngl, but I still had to figure out how to split stuff. Next up, the screws & mounting to my bike. After that I'm going to speedrun some software, and try to submit this!
1/23/2026 10:38 PM - Finished the Case!
Ok firstly, I did this work yesterday, but i grinded too late so i couldn't journal
Screws
screws, screws, screws.

Basically, I just added a bajillion screw holes with counter-sink. took me way too long, but hey.

Bike mount
I went outside and measured the size of my bike bar, and modeled around it!



in all:

1/23/2026 10:47 PM - Photo Realistic Renders.
As anyone with any blender knowledge will tell you, blendering is crazy time intensive. Especially if it's your first time. After about 8 hours of work, here it is:
A photorealistic shot:

But of course, i have more for you!
So in class, we had an animation unit, and I got the basic hang of how animation works, and I implemented that into a setup on blender. Here's the stuff! (I did mess around with the lighting, animation, and background so it looks better. First, some shots:



And here's the video if you can access it. It has no sound btw.
1/24/2026 - 3D animation
I got this fire animation to render! it took over 21 hours! that was absolutely crazy and actually cost me a significant amount of electricity.
Here's the render!
You can also see the PCB now.

1/27/2026 - Finished Everything Up: Made it Submission Ready
Worked On the BOM, got all the prices, simulated checkout.

Also got the Github Repo looking nice. I have the CAD, with the F3Z file and the STEP file. I also have the Production PCB stuff with the gerbers, BOM, pickandplace and the .EPRO for the easyeda project.
I also worked on the Firmware, which took FOREVER as it is like impossible to figure out how the STM32 stuff works. I think I have the basic code in the repo, but idk.
the VAST majority of time went towards the firmware and BOM. Checking everything out take a bunch of time...
1/28/2026 - Some Basic Routing Fixes & STM32
So firstly I spent like a bajillion years on trying to figure out how the STM32 should be set, and just ended up adding a debug header, alongside a pull up on the NRST pin. The debug header made really good use of the mostly empty 4th Layer.

In addition, I also cleaned up the area around here:

So that there are only 3 layers being used, to make it so that the fourth layer is as much ground as possible to make sure the antenna is really, really happy.