If you just use a generic device then you will need to tweak things a bit depending on how you have connected the screen, buttons, etc, but it should work just fine.
really do enjoy video's like this .. i wonder if its possible to to make the same device but using the onekey firmware .. i like the onekey touch .. but $250 to just see an nft is alittle over price in imo .. i think that the more hands on with a product the better you will understand how to protect yourself in the long run.. most underrated channel on youtube ..
playing with LILYGO display at the moment (10usd the 4mbit with shell option, delivered already in a case) : I had some strange button behavior especially with greenwalet on android. I switched to the official git repo, it is fine now. I have seen they accepted your PR, good job :-)
Yea the button issues seem to be limited to Green Wallet and not an issue for those that are based on JadePy. I haven't gone in to depth to see where the specific issue is, but unfortunately it isn't something that can be easily worked around.
@@CryptoGuide strange is that buttons are ok for entering pin with green wallet for Android but not on green wallet for windows... On windows you can unlock it with electrum, then use green wallet...
I updated to the latest version of Jade (1.0.31). Everything was going fine but once it went to the "Update Successful" screen, it just froze on "Update Successful." Now the Jade will not turn on, the device is on, the Green app recognizes the Jade - it says unlock jade to continue. But the LCD 1.1.4 screen is not showing anything.
I have a locked boot loader. I updated a few weeks ago and then we saw that there was this update. And then…. You can see the screen is dimly lit when you unplug it bc it gets darker…
@@CryptoGuide I am running a Mac Pro. My daughter has it at work. I will do this later tonight if what you are stating is compatible with Mac. If not please advise thanks 🙏🏼
This is absolutely amazing! one question: If I build it using Ubuntu, will the HW work in windows or only on ubuntu? And why are you using fresh installs for Win and Ubuntu? Is that for security reasons? Thanks!
The operating system you use to flash doesn't matter, once flashed it will work on any OS. The reason I used a fresh installation is to make sure that any dependencies required are installed as part of the demo. It's easy to have a system that already has some of the prerequisites installed (eg:cmake, git) and forget that these small things can cause an issue for folk who are still learning.
Hi, I am stuck at the "idf.py flash monitor" command. I get the "/usr/bin/env: ‘python’: Not a directory" error. Have poked around the internet to get some hints, but none worked. Any suggestion? I'm using Ubuntu (through UTM virtual machine) on my MacOS. Trying to write Jade software on TTGO (Liligo) T-display.
Basically this happens via the wallet software you are using the Jade with. (Though it's encrypted end-to-end, so the wallet software can't decode or tamper with it)
Something secure on the device itself is exactly what a secure element is. (Though these are also all closed source) You can also run statelessly if you want. That said, if you want to go the open source + secure element route then something like the Bitbox02 is a good option. (I have done a review video on it)
Love the video! I could only get my hands on the regular mstickc for now, and took a stab with that just following the instructions directly. I am running into what looks to be a dependency error on idf version 5.0.2 when flashing. I guess, do you know if it would be ultimately be pretty difficult project to get this up and running on the OG mstickC? I could be wrong, but I do believe the only difference may be the resolution of the screen. All i can find online says its larger, not necessarily higher resolution.
Basically the significantly lower resolution of the screen means it won't work on the Non-Plus M5StickC without a major redesign of the gui... So unless you are prepared to do some major coding you are out of luck on that front. In terms of IDF, you can stick with 5.0.2 and just use the official Jade repo from blockstream, as all the M5StickC-Plus stuff was merged into the main repository. :)
How do I upgrade without having secure boot? Just do the same procedure? Or every time I need to update the firmware will I need to reset the wallet and reinsert the seed words?
But when re-flashing the wallet data is erased and returns to "factory settings"? In this case, will it be necessary to recover the wallet using the seed words?
Reflashing doesn't trigger a factory reset unless you force it to erase the flash as well. (Though it's always good to have your seed words handy incase something goes wrong)
Got mine working on the T-Display. Good to know I have a backup if my official Jade hardware ever fails. BTW I could not get the "sdkconfig.ttgo_tdisplay_secureboot_noradio.defaults" config to build. It is giving me a linker error. The non-"noradio" version compiled just fine. Not sure if it's and error on my end. Another issue I'm running into is Button 2 (on GPIO 0) does not seem to work when the device has a active serial usb connection. It makes navigating though the menus impossible when the ESP monitor is running or if it's connected to Green via USB. If I close Green it works again. When connected to the phone app over bluetooth it works fine. Not sure if you ran into this. Anyway, thank you for this!
Green currently has a USB compatibility issue on desktop, so just use Sparrow or Electrum of you want a USB desktop wallet client for the moment. In terms of the configuration profiles, I can't replicate, built fine from the repo. (Must be something wrong with your ESP-IDF environment)
Is Jade capable of exporting the Seedqr to an offline printer via cable or Bluetooth, so that way I don’t have to be drawing a new seedQR by hand? Or will I have to add in this feature somehow In the code?
Hi! The issue I'm having is with the flashing process. I am using my MacBook Pro 2019 to do this and was wondering if there are other options other than Ubuntu and Windows? Both are unable to download onto my computer. I am going to flash onto a Freenove ESP32-Wrover CAM. (I just completed your Trezor video, which was awesome and very helpful thanks!)
The process for installation of the ESP IDF will be different, so just follow the official mac docco for that. Once installed it will be the same as on Linux.
thank you very much for your videos and explanations about this hardwallet. But my english is not very good. Unable to add *cam to the Lilygo T-display? and it is also not possible to add battery? Am I right?
And can we use this DIY hardware gadgets as perfect and secure substitutes of the retail Blockstream Jade sold in the web page? I mean, it has the same entropy and security when it comes to generate secure seed phrases?
That's very strange, as it shouldn't matter. (I have flashed with USB C to C and never had an issue) Does any data transfer work over that USB cable? (So example, IDF.py monitor)
Do you mean use Tails for offline signing only? If you have the dicipline to do it and maintain it over the long term then sure. (But most people don't)
Any of them are fine, but 4mb of flash is all you need and if you are just looking to use it as a wallet, you can get it without the soldered pins and with a case.
Amazing stuff, many thanks for this in the name of the whole bitcoin community! I tried to pull your github repo and flash it onto a TTGO, but the Blockstream Green app never worked with any of my phones (bluetooth or usb) so I decided to try to flash the original Jade repo. This worked without any issues, the Green app is now fully working. The only thing I would ask is: 1, Is it enough if I just make these two changes (Disabling Developer & Debug Options) in Jade's original sdkconfig file? At 18:06 I was confused when you showed the difference between sdkconfig files, so I am not sure if I have to make more changes to the original sdkconfig file. I have also managed to enable secureboot, acutally CHATGPT worked brilliantly and managed to get that sorted, so it is no longer recognized as a "DEV" device in BlockStream green. I guess that is enough confirmation. Thanks again!
None of the options I look at in this video have the camera functionality, that will come in a later video. (And require some assembly) If you enable secure boot v2 then your device is as secure as a retail Jade.
Well, I flashed the secure bootloader and it just came back to a black screen. Assuming I missed a step. How long is a reasonable amount of time for it to generate the encryption keys (using the ttgo t-display)? Its too late now as its powered off but just trying to figure out where I went wrong.
It should complete in about a minute. Does it still respond if you try to run the monitor command? (Either normally or if you hold down io0 whole powering it on)
@@CryptoGuide Unfortunately not. I can see the COM Port but it fails to connect even when I try to hold the left button down on power on. Any other suggestions? Or should I just consider it bricked?
This is an amazing guide!!!!! I just have one question, should I expect Bluetooth to work? I have an M5 Stack but if I enable Bluetooth and try to pair it to my iOs device using the Green app from Blockstream I get a connection error.
after running idf.py flash monitor command i get this error: ERROR: The hash sum of the component "espressif/esp32-camera(2.0.3)" does not match the one recorded in your dependencies.lock file. This could be due to a potential spoofing of the download server, or your lock file may have become corrupted. Please review the lock file and verify the download server's authenticity to ensure the component's security and integrity. what should i do?
This will be an issue with your IDF build environment. Have you tried reinstalling it and bring sure that the version you have installed matches the repository you are building?
is there a really basic instruction sheet somewhere? Do I install ubuntu directly to the TTGO or does that occur with some commands that I saw you use in the video? Does it need a memory card?
This video is the basic instructions, the process is very doable, especially on Windows. You don't install Ubuntu or Windows on to the TTGO device, but rather build and flash the Jade firmware on to it. You don't need a memory card
@@CryptoGuide Gotcha. Just watched some videos and up to almost basic speed now. Can install and run some programs on it from watching another youtuber's videos. I obviously misunderstood what you were saying about Ubuntu.
got everything working up to the part where I need to open the diy folder to get the secure boot file. There's no secureboot config folder. Where can I find that to follow your instructions?
It's still there in my repository in the DIY folder. (Though not on the official repo) Just be sure that you have flashed the normal config templates to it and have everything working before you enable secure boot.
I have the 16mb model, but the M5Stick is actually 4mb and that is fine. (So either should be fine) The partition layout assumes 4mb of flash, so I doubt that will change with the current Jade.
is this the same level of security as the original jade? i really have to understand.. because it seems as it doesnt connect the pin to jade's servers as with the original one.. and i know theres no secure element either..
Yes it is, the hardware and software are identical. It connects to the blockstream pin server by default. (The retail Jade doesn't have a secure element either)
Great stuff, but this is only compatible with Bitcoin, right? Is there a good DIY hardware wallet for Bitcoin, Ethereum, Litecoin etc all in one device? And my second question, when I go with the Lilygo TTGO Display, there are two versions available, a 4MB and a 16MB, which one do I have to buy (don't know if they are compatible with each other)?
That's right. The simole answer is not really, though you can DIY a Trezor. (With either piTrezor which I have a video on and proper DIY Trezor hardware, which I haven't done yet)
I am stuck at the "idf.py flash monitor" command, getting the "/usr/bin/env: ‘python’: Not a directory" error. I'm trying to download the Jade software onto the TTGO (Liligo) T-Display using Ubuntu on UTM (virtual machine) on a Mac. Have looked around Internet for solution, but no success. Any suggestions?
@@CryptoGuide Yes, that's what my research basically said, and I followed the instructions, but to no avail. However, I'm a newbie and may have misinterpreted the instructions. Can you please point me to one?
Thank you so much,@@CryptoGuide . I persisted and got it to the flashing stage, but flashing fails, saying "No serial ports found. Connect a device, or use '-p PORT' option to set a specific port." I've tried all I can to find out what the port is, but my "sudo dmesg" doesn't show me the port like it does in your example. Perhaps because I'm using UTM (virtual machine) on MacOS? I did get the TTGO to connect and turn on. It currently has the LNBits hardware wallet software on it. Any further guidance would be very much appreciated.
ESP-IDF should work fine on MacOS for both x86 and ARM processors. Just follow their docco here docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html
Assuming you haven't done the secure boot part of this tutorial, how would you go about factory resetting the M5Stack so that it has the stock firmware again?
@@CryptoGuide I tried and it’s throwing all kinds of errors and not working. Seems like it may be due to Jade constantly restarting. Wondering if you’ve had any luck reverting back to factory and if so, how you went about doing it.
Hi, I have another question: I flashed a m5stickc successfully and it works rather fine by bt, on the contrary it is not recognised by usb; I would like to know if in your experience it would work by usb (desktop app only supports usb so far)
@@CryptoGuide the bluetooth sign on the top on the TTGO T-Display is crossed off (inactive) so it cannot be discovered by the app on the phone, it works on PC via USB cable though, just bluetooth didn't work on the TTGO. I tried to open Options and other menus on the device but could not find there the bluetooth switch on is located. There are very few options available and I've checked all of them. Unless there is a button or something I didn't know. I also plugged in the small cable behind the TTGO T-Display assuming that works as an antenna or something (the cable comes with the TTGO's box) , but still didn't work.
So for an initialised device, select advanced, then Bluetooth, then, just enable it from there. If you have initialised it, then just connect over usb using something like Electrum or Sparrow (green has a USB compatibility issue at the moment) and then once unlocked, just enable Bluetooth via the menu.
great video!! my question: now that m5stack fire is eol, is this project compatible with m5stack core2 which is currently available? they even have a core2 aws version with a secure element, not sure if that's useful since i think the jade doesn't have one in the first place
Yea you will need to customise the configuration profile to match how the IO is allocated on that device. You can basically follow the process that I briefly demo in my DIY Jade + Camera video.
It should work fine, but they changed the IO a bit, so it will need a different configuration profile. I actually picked up a plus2 to get it going, so will have something for that in the coming weeks.
I'm trying to install jade on m5stack and I have this problem that I can't solve, during the run of the build it doesn't find jade.elf do you know how to do it?
Hi, again! passing by to say thank you. because I managed to install and activate secure boot. Can you tell me if the version for the M5stickC Plus works on the M5stickC Plus 2?
No worries, good job. The profile for the m5stickc-plus won't work for the plus 2. I have a fork where I added support and info about it can be found here github.com/Blockstream/Jade/issues/115#issuecomment-2121639111 Have a play around with the plus2 fork if you like. It uses secure boot v2, just like the t-display, etc. (though I haven't tested this in the plus2 yet)
@@CryptoGuide thank you very much! I just tried, at first everything goes fine but after 100% this error appears: 'Multiple decode errors occurred: Try checking the baud rate and XTAL frequency setting in menuconfig' and the screen keeps blinking
@@CryptoGuide did not work. When the installation is finished, the screen flashes intermittently and does not start. I already tried the baud rate of 115200 but it didn't work.
They all do, it's part of ESP32. (Same as the retail Jade) That said, there is no wifi code in the firmware, so that part can't work and if you don't want Bluetooth, you can just do a no-radio build to remove that function from the firmware too. (Without the code to support it in firmware, the radio hardware becomes a paperweight)
My TTGO has stopped working after secure boot, I have tried everything possible, but it's no longer receiving data, I only get a "No serial data received" message, and I have tried on several computers, on windows, linux, nothing works. Can you think of a way to fix this? I haven't lost the encryption keys, but it just doesn't receive data anymore.
So did you give it time to perform the encryption step when you enabled secure boot? (Or did you get impatient and restart it while this was happening)
@@CryptoGuide That was not the problem. I followed the tutorial point by point. Everything worked fine, I checked that Green detected it as development and after installing secure boot, I got permanent black screen, and error that it did not receive data anymore. The computer still recognizes it, so I think it must be recoverable, but I don't know how, as I never touched esp32 before.
The computer will recognise the usb to serial bridge no no matter what. So if you connect it via usb and run python jade_auth.py what do you see on your PC? (It should reply with some hardware info about the Jade)
@@CryptoGuide My reply keeps getting deleted, I think because it's too long, but it starts with: Fetching jade version info over serial Connecting... Connecting to COM7 at 115200 Connected Sending: {'method': 'get_version_info', 'id': '513185'} as cbor of size 35 Exception causing JadeAPI context exit. And a bunch of errors, finishing with EOFError. Thanks.
Basically the question is whether you have Jade firmware running on there, but did something like flash the wrong configuration profile for your hardware. When you enable secure boot, it will disable being able to flash or monitor it using the IDF tools, but it should still respond to RPC requests from wallet software, python, etc.
tried lilygo display with electrum, seems there is no way to input the 24 words in an random way like trezor setup. The integrated keyboard is cumbersome... you have a better way ?
Yea they should all be back now. So does the respond if you try to run something like python jade_auth.py ? (Basically the question is whether it was able to do the encryption step successfully, but just has an issue with the screen or something from the wrong config profile, or whether it had an issue and hasn't actually enabled it)
No, the com3 is cycling printing error message on invalid header... So nothing is able to take the control (tried idk flash and jade_ota ). Not sure what happened , possibility that it worked on my seconde device and that I bricked my first : - I restarted my PC so maybe drivers was not fully installed - I ran the CMD as full administrator (run as administrator) - faulty cable that powered device down just during the reboot and encryption of the image (when you say to run idk monitor)
Powering the device down during the encryption could certainly have caused the issue, particularly if the process worked properly on another device :/ Basically if secure boot didn't enable itself then you should still be able to flash the device manually. If the software is running, just with something misconfigured config profile so that the screen doesn't come on, then it should respond to requests for things like jade_ota and jade_auth. (At least responding with the information about the device)
Bro would you suggest me to pick ledger or trezor model T? If trezor because of public code... then what steps would you suggest to do on trezor itself to secure it and not let hackers break it even if they physically access it
Most people will be better off with a Ledger. Open source isn't simply binary and doesn't help you if you can't be sure that the hardware you have is genuine. (Which you can't guarantee with a Trezor) If you go the Trezor route then you can add a BIP39 passphrase to mitigate the physical security limitations of the hardware.
@@CryptoGuide damn , thanks much for the info dear sir! What you think is it possible that ledger to collect info from you, like seed etc? I was thinking about trezor just because of that open source stuff.... but if ledger can't collect info, i think its maybe even better, cause it wasn't hacked as far as i have researched (i mean the seed leaks or to hack device itself).... and also second question so you think its not possible to be sure that the trezor i order from them is 100% genuine (cause it is possible to manipulate with the device before sending to me?)
Ledger has no ability to obtain your seed. Unless you build it yourself you can't be know whether a Trezor was tampered with. Basically both vendors are fine, it mostly comes down to whether they support the coins you need and will work with the device your intend to use.
@@CryptoGuide dear brother! sorry to disturb you, may i ask you if there is a possibility to export PRIVATE key from your ledger wallets?? i mean safe way to do that ! not inputing your seed phrase in metamask and then extracting it? thank you
Eu fiz a minha seguindo seus passos, ela funciona os aplicativos da green reconhecem a jade em securboot, mas ao criar a carteira quando pede para conectar tanto via bluetooth ou usb quando normalmente seria criado o PIN ela reinicia e não chega a pedir para criar o PIN. Tem algo que eu possa fazer?
@@CryptoGuide No smartphone via bluethoth também da erro. No video em 19:55 no canto inferior direito aparece a versão do firmware 0.1.45.1-dirty, mas no meu aparece 1586894. É assim mesmo ou isso indica algo errado que eu fiz?
Thanks its great. If you could go slower I'd appreciate it. Id rather spend another 30 minutes understand everything then feeling insecure about my Bitcoin wallet;)
So does it show that it's fully charged? Are you saying that it switched off within a few seconds of being unplugged or just goes to sleep after a while
CH9102F is the same usb to serial device on the TTGO T-display. Basically if you are using something that doesn't have an existing profile, you just need to select a "custom" board type and assign the pins with menuconfig. (I demo this a bit in my video with camera options)
@@CryptoGuide I'm getting Configuring Incomplete Error. It says there's a Cmake error with build.cmake. It also says idf version doesn't match with version solving failed. Any suggestion on how to solve this?
@@CryptoGuide Yes it is. It's a ESP32 TTGO board. I reinstalled esp and jade and was able to give it permission per the video. But now it gives me errors with cmake. It says something about, "undefined reference to 'phy_close_rf'." And also about, "function 'rtc_cntl_ll_ext1_set_wakeup_pins'." Is that an issue with the device going to sleep when it's trying to flash?
So it's exactly one of the boards in the video? Sounds like there is something wrong with either your ESP-IDF environment or you didn't one the repository properly.
This is not DIY hardware :c , this is buying hardware and installing DIY (FOSS) software. DIY hardware would be buying components and putting the device together then adding the software on top...
With the end result being a DIY hardware wallet. :) The goal is using commodity hardware that doesn't require that you disclose what you intend to use it for to anyone :) Thr next step hardware that is a bit more hands on is the video that covers making one with the camera functionality. This one makes use of development hardware, so is still easy to assemble for most normal folk. You can use the same process to build it from scratch with an ESP32 if you like.
@@CryptoGuide Wow, didn't expect a reply honestly, first time watching anything from yourself. That makes sense, I clearly misinterpreted the title 🤦♂️ and felt a bit misled 😂but thank you for clearing things up and in that case great video👌, very informative for its purpose, concise and detailed. Not quite what i was looking for but either way quality content and the informative reply, you earned a sub for sure. Cheers dude
I would never dare to use windows for any of this, randomGenerator has cost untold millions in crypto losses and broken security elsewhere, unix or nothing
Hi thank you for this diy tutorial, so I tried enabling the secure boot and got into an issue. I generate the ".pem" but I skipped the "idf.py bootloader" and proceed to "idf.py build" instead. The code finished running without any errors, but the ttgo screen is no longer showing a display. now I tried re flashing the ttgo but I always get the error "Connecting...................................... /dev/cu.usbserial-023883A6 failed to connect: Failed to connect to ESP32: No serial data received. For troubleshooting steps visit: docs.espressif.com/projects/esptool/en/latest/troubleshooting.html A fatal error occurred: Could not connect to an Espressif device on any of the 2 available serial ports." Am I looking at a bricked device? Thanks in advance.
Hello everyone, when i try to flash my ttgo, i have this problem, someone have this and find a solution? CMake Error at CMakeLists.txt:2 (project): No CMAKE_CXX_COMPILER could be found. CMake Error at CMakeLists.txt:2 (project): No CMAKE_ASM_COMPILER could be found. -- The C compiler identification is unknown -- The CXX compiler identification is unknown -- The ASM compiler identification is unknown -- Didn't find assembler
@CryptoGuide no security bootloader is not good. Retail jade had a security bootloader I suppose? so is lacking air gapped ability the only thing that doesn't make these options same as a retail jade?
All of the models I look at here can have secure boot enabled and the retail Jade has it enabled too. It's an important security feature, so certainly enable if it planning to store funds. I will have a video coming in a few weeks that looks at options with camera, but they will require some assembly. (As opposed to just working off the shelf)
This is great, this take the "hardware wallets are expensive" argument away.
Yea, it's not only cheap but also isn't crap... The fact that $10 USD can get you a some as powerful as this is amazing.
This is super cool! I never knew the Jade was this open.
Yea it's as open as it gets in a way that's directly helpful to end users.
This is gold! I've been looking for a tutorial for the game wallet a lot
Glad it helped :)
Thank you so much for doing it manually and not using the crutch that is Docker.
No worries, this way also works much better for development ;)
Very cool DIY, just ordered the T-Display with the case!
Best of luck, just be sure to make sure it's flashed and all working correctly before circling back and enabling secure boot :)
Looking forward to the camera version of this tut. Subscribed
Should have it posted some time next week
Awesome thanks for the video!! I just happen to have purchased one 10usd ESP32 for other purpose no longer in use. Will see how it goes.
If you just use a generic device then you will need to tweak things a bit depending on how you have connected the screen, buttons, etc, but it should work just fine.
@@CryptoGuide Thanks for the fast reply! No worries, my device is actually the TTGO with Case. So It should work. Thanks again.
.
Amazing work!
Glad it helped
really do enjoy video's like this .. i wonder if its possible to to make the same device but using the onekey firmware .. i like the onekey touch .. but $250 to just see an nft is alittle over price in imo .. i think that the more hands on with a product the better you will understand how to protect yourself in the long run.. most underrated channel on youtube ..
Onekey uses a totally different hardware platform, so no.
@@CryptoGuide ok thanks .. can't wait for the next video .. cheers
.
playing with LILYGO display at the moment (10usd the 4mbit with shell option, delivered already in a case) : I had some strange button behavior especially with greenwalet on android. I switched to the official git repo, it is fine now. I have seen they accepted your PR, good job :-)
Yea the button issues seem to be limited to Green Wallet and not an issue for those that are based on JadePy. I haven't gone in to depth to see where the specific issue is, but unfortunately it isn't something that can be easily worked around.
@@CryptoGuide strange is that buttons are ok for entering pin with green wallet for Android but not on green wallet for windows... On windows you can unlock it with electrum, then use green wallet...
Yea that's why I think it's an issue with green desktop itself
@@CryptoGuide someone logged issue #62 on this ...
Nice :)
Thank you!
Replied to your other thread
This is great, thank you!!
No worries
I updated to the latest version of Jade (1.0.31). Everything was going fine but once it went to the "Update Successful" screen, it just froze on "Update Successful." Now the Jade will not turn on, the device is on, the Green app recognizes the Jade - it says unlock jade to continue. But the LCD 1.1.4 screen is not showing anything.
So it's this a DIY device where you locked the bootloader or are you able to just reflash it?
I have a locked boot loader. I updated a few weeks ago and then we saw that there was this update. And then….
You can see the screen is dimly lit when you unplug it bc it gets darker…
Yes DIY WITH THE FEMALE TO MALE PLUG IN CONNECTIONS - the easiest to put together
So if you connect via usb and run the jade_auth.py script in the main repository, does the device respond at all?
@@CryptoGuide I am running a Mac Pro. My daughter has it at work. I will do this later tonight if what you are stating is compatible with Mac. If not please advise thanks 🙏🏼
This is absolutely amazing! one question: If I build it using Ubuntu, will the HW work in windows or only on ubuntu? And why are you using fresh installs for Win and Ubuntu? Is that for security reasons? Thanks!
The operating system you use to flash doesn't matter, once flashed it will work on any OS.
The reason I used a fresh installation is to make sure that any dependencies required are installed as part of the demo. It's easy to have a system that already has some of the prerequisites installed (eg:cmake, git) and forget that these small things can cause an issue for folk who are still learning.
@@CryptoGuide nice!
.
Hi, I am stuck at the "idf.py flash monitor" command. I get the "/usr/bin/env: ‘python’: Not a directory" error. Have poked around the internet to get some hints, but none worked. Any suggestion? I'm using Ubuntu (through UTM virtual machine) on my MacOS. Trying to write Jade software on TTGO (Liligo) T-display.
Replied to your other thread
thanks was looking at jade. Where did you get the neon sign?
It's the HODL light from CryptoTag
is there any advise how to create a 3D print case for the ESP32?
Do you mean for the T-display?
Hi, does this setup with the ttgo display allows a connection with blockstream's blind oracle even if it doesn't has a camera?
Basically this happens via the wallet software you are using the Jade with. (Though it's encrypted end-to-end, so the wallet software can't decode or tamper with it)
It is low cost but needs an remote server on the internet as an virtual secure element.
Yea it's very clever. You can self host the pinserver too. (On your local PC if you like)
@@CryptoGuide I would prefer no server solution at all. At first I thought it would not be a remote server but a virtual server on the device itself.
Something secure on the device itself is exactly what a secure element is. (Though these are also all closed source) You can also run statelessly if you want.
That said, if you want to go the open source + secure element route then something like the Bitbox02 is a good option. (I have done a review video on it)
@@CryptoGuide by stateless you mean I have to input the seed everytime like seedsigner?
Yep
Love the video! I could only get my hands on the regular mstickc for now, and took a stab with that just following the instructions directly. I am running into what looks to be a dependency error on idf version 5.0.2 when flashing. I guess, do you know if it would be ultimately be pretty difficult project to get this up and running on the OG mstickC? I could be wrong, but I do believe the only difference may be the resolution of the screen. All i can find online says its larger, not necessarily higher resolution.
Basically the significantly lower resolution of the screen means it won't work on the Non-Plus M5StickC without a major redesign of the gui... So unless you are prepared to do some major coding you are out of luck on that front.
In terms of IDF, you can stick with 5.0.2 and just use the official Jade repo from blockstream, as all the M5StickC-Plus stuff was merged into the main repository. :)
@@CryptoGuide thanks for clearing that up! I figured that may be the case. think I'll start with finding a way to get my hands on the plus.
.
How do I upgrade without having secure boot? Just do the same procedure? Or every time I need to update the firmware will I need to reset the wallet and reinsert the seed words?
If you don't have secure boot enabled you just flash it using esp-idf, the same as when you initially flashed it.
Thank you very much! Sorry if my English isn't the best. I'm just a Bitcoin enthusiast trying to learn a little more from your videos 😅
But when re-flashing the wallet data is erased and returns to "factory settings"? In this case, will it be necessary to recover the wallet using the seed words?
Reflashing doesn't trigger a factory reset unless you force it to erase the flash as well. (Though it's always good to have your seed words handy incase something goes wrong)
Will TTGO T-Display S3 work?
It does as of a month ago, as ESP32-S3 support was just recently added :)
Got mine working on the T-Display. Good to know I have a backup if my official Jade hardware ever fails. BTW I could not get the "sdkconfig.ttgo_tdisplay_secureboot_noradio.defaults" config to build. It is giving me a linker error. The non-"noradio" version compiled just fine. Not sure if it's and error on my end. Another issue I'm running into is Button 2 (on GPIO 0) does not seem to work when the device has a active serial usb connection. It makes navigating though the menus impossible when the ESP monitor is running or if it's connected to Green via USB. If I close Green it works again. When connected to the phone app over bluetooth it works fine. Not sure if you ran into this. Anyway, thank you for this!
Green currently has a USB compatibility issue on desktop, so just use Sparrow or Electrum of you want a USB desktop wallet client for the moment.
In terms of the configuration profiles, I can't replicate, built fine from the repo. (Must be something wrong with your ESP-IDF environment)
@@CryptoGuide Gotcha! Yup, it works great with Electrum. I rather like Electrum better than Green (for now anyway). Thanks!
.
thank you! but how to create udev rules for lilygo ttgo t-display
Do you mean for ongoing operation of the device under Linux?
Is Jade capable of exporting the Seedqr to an offline printer via cable or Bluetooth, so that way I don’t have to be drawing a new seedQR by hand? Or will I have to add in this feature somehow In the code?
It doesn't currently support that, so if you want that feature, you will need to add it.
Hi!
The issue I'm having is with the flashing process. I am using my MacBook Pro 2019 to do this and was wondering if there are other options other than Ubuntu and Windows?
Both are unable to download onto my computer. I am going to flash onto a Freenove ESP32-Wrover CAM.
(I just completed your Trezor video, which was awesome and very helpful thanks!)
The process for installation of the ESP IDF will be different, so just follow the official mac docco for that.
Once installed it will be the same as on Linux.
thank you very much for your videos and explanations about this hardwallet. But my english is not very good. Unable to add *cam to the Lilygo T-display? and it is also not possible to add battery? Am I right?
The T-display doesn't have the extra ram required for a camera, but does have a connector to add a battery.
Where did you get the B sign? It looks great!
That's a HODL light from Cryptotag.
And can we use this DIY hardware gadgets as perfect and secure substitutes of the retail Blockstream Jade sold in the web page? I mean, it has the same entropy and security when it comes to generate secure seed phrases?
If you enable secure boot v3 and flash encryption then the security is identical to a retail Jade.
@@CryptoGuide No wonder…that’s awesome!!! Real FOSS Hardware wallet!!!
100%
for information, you need a usb-a to usb-c cable for flashing, usb-c to usb-c cable was not working for me
That's very strange, as it shouldn't matter. (I have flashed with USB C to C and never had an issue)
Does any data transfer work over that USB cable? (So example, IDF.py monitor)
@@CryptoGuide after further testing seems I had a faulty cable ... sorry :-)
Great :)
What if we use Tails without connecting it to internet and for sending, just use PSBT?
Did you think is it safe enough?
Thanks for your great channel
Do you mean use Tails for offline signing only? If you have the dicipline to do it and maintain it over the long term then sure. (But most people don't)
Can you do tutorial on macos terminal? Or does linux tutorial works on macos terminal as well?
The process for MacOS will be basically the same. Just follow the documentation from Expressif for installation on MacOS
can I use T-Display RP2040 if I don't want to use bluetooth?
Nope, needs to be esp32. Just compile a no-radio build and you will be good to go.
Which version of the TTGO did you use for this? I see a few different ones in the link you provided. Thanks!
Any of them are fine, but 4mb of flash is all you need and if you are just looking to use it as a wallet, you can get it without the soldered pins and with a case.
Amazing stuff, many thanks for this in the name of the whole bitcoin community! I tried to pull your github repo and flash it onto a TTGO, but the Blockstream Green app never worked with any of my phones (bluetooth or usb) so I decided to try to flash the original Jade repo. This worked without any issues, the Green app is now fully working. The only thing I would ask is: 1, Is it enough if I just make these two changes (Disabling Developer & Debug Options) in Jade's original sdkconfig file? At 18:06 I was confused when you showed the difference between sdkconfig files, so I am not sure if I have to make more changes to the original sdkconfig file. I have also managed to enable secureboot, acutally CHATGPT worked brilliantly and managed to get that sorted, so it is no longer recognized as a "DEV" device in BlockStream green. I guess that is enough confirmation. Thanks again!
Good job getting it going.
The things to change in a config template are here github.com/Blockstream/Jade/tree/master/diy
@@CryptoGuide Great, thanks!!!!
.
Are there any downsides to this rather than just buying the blockstream Jade itself? Kind of spooked with the whole Ledger issue.
None of the options I look at in this video have the camera functionality, that will come in a later video. (And require some assembly)
If you enable secure boot v2 then your device is as secure as a retail Jade.
Well, I flashed the secure bootloader and it just came back to a black screen. Assuming I missed a step. How long is a reasonable amount of time for it to generate the encryption keys (using the ttgo t-display)? Its too late now as its powered off but just trying to figure out where I went wrong.
It should complete in about a minute. Does it still respond if you try to run the monitor command? (Either normally or if you hold down io0 whole powering it on)
@@CryptoGuide Unfortunately not. I can see the COM Port but it fails to connect even when I try to hold the left button down on power on. Any other suggestions? Or should I just consider it bricked?
So do you get any response if you connect it and run the OTA script in the repository?
This is an amazing guide!!!!! I just have one question, should I expect Bluetooth to work? I have an M5 Stack but if I enable Bluetooth and try to pair it to my iOs device using the Green app from Blockstream I get a connection error.
Ok the issue is with my iOs device, connection timeout, with my Android device BLE worked perfectly.
That's very interesting, I used these with an iPhone without issue. What phone model are you using?
@@CryptoGuide iPhone 11
.
after running idf.py flash monitor command i get this error:
ERROR: The hash sum of the component "espressif/esp32-camera(2.0.3)" does
not match the one recorded in your dependencies.lock file. This could be
due to a potential spoofing of the download server, or your lock file may
have become corrupted. Please review the lock file and verify the download
server's authenticity to ensure the component's security and integrity.
what should i do?
This will be an issue with your IDF build environment. Have you tried reinstalling it and bring sure that the version you have installed matches the repository you are building?
May I ask, now that I have Blockstream Jade, can I flashing Blockstream Jade and install Pi Trezor?
No, PiTrezor runs on a Raspberry Pi, it's a totally different hardware stack.
There are 5 models on the site with ttgo to choose from, which ones are suitable?
All 5 are fine.
is there a really basic instruction sheet somewhere? Do I install ubuntu directly to the TTGO or does that occur with some commands that I saw you use in the video? Does it need a memory card?
This video is the basic instructions, the process is very doable, especially on Windows. You don't install Ubuntu or Windows on to the TTGO device, but rather build and flash the Jade firmware on to it.
You don't need a memory card
@@CryptoGuide Gotcha. Just watched some videos and up to almost basic speed now. Can install and run some programs on it from watching another youtuber's videos. I obviously misunderstood what you were saying about Ubuntu.
Yea you can use either Ubuntu or Windows for this, the video covers both. :)
got everything working up to the part where I need to open the diy folder to get the secure boot file. There's no secureboot config folder. Where can I find that to follow your instructions?
It's still there in my repository in the DIY folder. (Though not on the official repo)
Just be sure that you have flashed the normal config templates to it and have everything working before you enable secure boot.
For the ttgo, 4mb flash is plenty enough or would you to the 16mB version?
I have the 16mb model, but the M5Stick is actually 4mb and that is fine. (So either should be fine) The partition layout assumes 4mb of flash, so I doubt that will change with the current Jade.
@@CryptoGuide go delivered with a case (shell option). 10usd what a bargain ... :-)
Very nice, can't top it for $10 :)
is this the same level of security as the original jade? i really have to understand.. because it seems as it doesnt connect the pin to jade's servers as with the original one.. and i know theres no secure element either..
Yes it is, the hardware and software are identical. It connects to the blockstream pin server by default. (The retail Jade doesn't have a secure element either)
just build mine using the ttgo dysplay! Man this is so cool just 7 dollars and i have a jade running and it looks beautiful, thanks@@CryptoGuide
Great job
Amazing. :)
Thanks, glad it helped
@@CryptoGuide this will be everyday more and more important. Thanks for share. :)
.
thanks very helpful. Is it possible to use TTGO as a temporary signature? or with existing seed? I can't write the words
Yep
@@CryptoGuide when the words "insert word 1" and the keyboard appear, everything freezes. I have to turn it off to lock.
ok. version 1.0.25 issue
Which companion app are you using?
Great stuff, but this is only compatible with Bitcoin, right? Is there a good DIY hardware wallet for Bitcoin, Ethereum, Litecoin etc all in one device?
And my second question, when I go with the Lilygo TTGO Display, there are two versions available, a 4MB and a 16MB, which one do I have to buy (don't know if they are compatible with each other)?
That's right. The simole answer is not really, though you can DIY a Trezor. (With either piTrezor which I have a video on and proper DIY Trezor hardware, which I haven't done yet)
@@CryptoGuide thanks, I will take a look!
.
I am stuck at the "idf.py flash monitor" command, getting the "/usr/bin/env: ‘python’: Not a directory" error. I'm trying to download the Jade software onto the TTGO (Liligo) T-Display using Ubuntu on UTM (virtual machine) on a Mac. Have looked around Internet for solution, but no success. Any suggestions?
Sounds like you aren't running the command from within a working IDF environment. (It might be installed but isn't active in your path)
@@CryptoGuide Yes, that's what my research basically said, and I followed the instructions, but to no avail. However, I'm a newbie and may have misinterpreted the instructions. Can you please point me to one?
@@CryptoGuide Do I have to install a particular IDF environment into my Ubuntu? Python3 is definitely installed.
Basically you need to both install and then activate the ESP-IDF environment. If you are on Linux, this is what running the export.sh command does.
Thank you so much,@@CryptoGuide . I persisted and got it to the flashing stage, but flashing fails, saying "No serial ports found. Connect a device, or use '-p PORT' option to set a specific port." I've tried all I can to find out what the port is, but my "sudo dmesg" doesn't show me the port like it does in your example. Perhaps because I'm using UTM (virtual machine) on MacOS? I did get the TTGO to connect and turn on. It currently has the LNBits hardware wallet software on it. Any further guidance would be very much appreciated.
I'm looking to try this, however I'm not too familiar with ubuntu ? Is it possible to make it run through Apple M1 ? Or I need to get a Windows ?
ESP-IDF should work fine on MacOS for both x86 and ARM processors.
Just follow their docco here docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html
Will look into it, thank you very much@@CryptoGuide
.
Do you know if the process is the same for the T-Display S3 board? Thanks for this. I'm going to give it a try.
Esp32-s3 boards aren't supported
@@CryptoGuidehas this changed by any chance?
No yet
Assuming you haven't done the secure boot part of this tutorial, how would you go about factory resetting the M5Stack so that it has the stock firmware again?
You just flash whatever firmware you want. (You can normally just download the factory demo firmware from the M5Stack official docco)
@@CryptoGuide I tried and it’s throwing all kinds of errors and not working. Seems like it may be due to Jade constantly restarting. Wondering if you’ve had any luck reverting back to factory and if so, how you went about doing it.
Nevermind. Seems to be working now. I think I had a terminal window that was still connected to the device and it was causing issues.
Good to hear you sorted it out.
Hi, I have another question: I flashed a m5stickc successfully and it works rather fine by bt, on the contrary it is not recognised by usb; I would like to know if in your experience it would work by usb (desktop app only supports usb so far)
Works fine over USB for all wallets like Electrum, Sparrow, Green, etc.
@@CryptoGuideok, I’ll try and build the same version of the video, maybe the issue is there…
Your best bet is to use the main blockstream repo, as all my DIY stuff was merged there.
How to enable bluetooth on TTGO T-Display after Jade is installed?
It should be on by default, bit if not then just enable it in the normal Jade settings
@@CryptoGuide can't access the jade setting to turn on bluetooth, I'm using TTGO T display.
So what exactly preventing you from going into the settings and turning it on.
@@CryptoGuide the bluetooth sign on the top on the TTGO T-Display is crossed off (inactive) so it cannot be discovered by the app on the phone, it works on PC via USB cable though, just bluetooth didn't work on the TTGO. I tried to open Options and other menus on the device but could not find there the bluetooth switch on is located. There are very few options available and I've checked all of them. Unless there is a button or something I didn't know. I also plugged in the small cable behind the TTGO T-Display assuming that works as an antenna or something (the cable comes with the TTGO's box) , but still didn't work.
So for an initialised device, select advanced, then Bluetooth, then, just enable it from there. If you have initialised it, then just connect over usb using something like Electrum or Sparrow (green has a USB compatibility issue at the moment) and then once unlocked, just enable Bluetooth via the menu.
great video!! my question: now that m5stack fire is eol, is this project compatible with m5stack core2 which is currently available? they even have a core2 aws version with a secure element, not sure if that's useful since i think the jade doesn't have one in the first place
Fire isn't EOL, just get the fire 2.6.
It won't work with the core2 as it uses an esp32-s3
thanks for the quick answer!! @@CryptoGuide
.
Both use ESP32-D0WDQ6-V3 but I cant get it working on the core2
Yea you will need to customise the configuration profile to match how the IO is allocated on that device. You can basically follow the process that I briefly demo in my DIY Jade + Camera video.
its possible install m5stick plus2?
It should work fine, but they changed the IO a bit, so it will need a different configuration profile. I actually picked up a plus2 to get it going, so will have something for that in the coming weeks.
Nice!!!
I will eagerly wait!!!@@CryptoGuide
I added some initial functionality on my Github repo and you can track the progress here: github.com/Blockstream/Jade/issues/115
I'm trying to install jade on m5stack and I have this problem that I can't solve, during the run of the build it doesn't find jade.elf do you know how to do it?
Sounds like you aren't running it from the right folder. Are you following th guide?
@@CryptoGuide yes sure
Basically either you are messing up the process or have something non-standard in your ESP-IDF environment.
Hi, again! passing by to say thank you. because I managed to install and activate secure boot. Can you tell me if the version for the M5stickC Plus works on the M5stickC Plus 2?
I have a spare M5stick C Plus 2 here but I'm afraid of trying to install the version for the stickC and ending up causing something wrong.
No worries, good job. The profile for the m5stickc-plus won't work for the plus 2. I have a fork where I added support and info about it can be found here github.com/Blockstream/Jade/issues/115#issuecomment-2121639111
Have a play around with the plus2 fork if you like. It uses secure boot v2, just like the t-display, etc. (though I haven't tested this in the plus2 yet)
@@CryptoGuide thank you very much! I just tried, at first everything goes fine but after 100% this error appears: 'Multiple decode errors occurred: Try checking the baud rate and XTAL frequency setting in menuconfig' and the screen keeps blinking
The xtal warning is normal. So are you saying that the m5stickc-plus2 fork doesn't work?
@@CryptoGuide did not work. When the installation is finished, the screen flashes intermittently and does not start. I already tried the baud rate of 115200 but it didn't work.
You didn't mention the fact that ttfo has wifi and Bluetooth built in...
They all do, it's part of ESP32. (Same as the retail Jade)
That said, there is no wifi code in the firmware, so that part can't work and if you don't want Bluetooth, you can just do a no-radio build to remove that function from the firmware too. (Without the code to support it in firmware, the radio hardware becomes a paperweight)
@CryptoGuide thank you for the video, very helpful.
Glad it helped
My TTGO has stopped working after secure boot, I have tried everything possible, but it's no longer receiving data, I only get a "No serial data received" message, and I have tried on several computers, on windows, linux, nothing works. Can you think of a way to fix this? I haven't lost the encryption keys, but it just doesn't receive data anymore.
So did you give it time to perform the encryption step when you enabled secure boot? (Or did you get impatient and restart it while this was happening)
@@CryptoGuide That was not the problem. I followed the tutorial point by point. Everything worked fine, I checked that Green detected it as development and after installing secure boot, I got permanent black screen, and error that it did not receive data anymore. The computer still recognizes it, so I think it must be recoverable, but I don't know how, as I never touched esp32 before.
The computer will recognise the usb to serial bridge no no matter what.
So if you connect it via usb and run python jade_auth.py what do you see on your PC? (It should reply with some hardware info about the Jade)
@@CryptoGuide My reply keeps getting deleted, I think because it's too long, but it starts with:
Fetching jade version info over serial
Connecting...
Connecting to COM7 at 115200
Connected
Sending: {'method': 'get_version_info', 'id': '513185'} as cbor of size 35
Exception causing JadeAPI context exit.
And a bunch of errors, finishing with EOFError.
Thanks.
Basically the question is whether you have Jade firmware running on there, but did something like flash the wrong configuration profile for your hardware.
When you enable secure boot, it will disable being able to flash or monitor it using the IDF tools, but it should still respond to RPC requests from wallet software, python, etc.
tried lilygo display with electrum, seems there is no way to input the 24 words in an random way like trezor setup. The integrated keyboard is cumbersome... you have a better way ?
Unfortunately you need to stick with the integrated keyboard. (Unless you flash a debug build and push the seed in via python, which isn't secure)
@@CryptoGuide I made several other comments, they disappeared, may be you can resurrect them? Got my lyligo bricked trying enabling secure boot
Yea they should all be back now.
So does the respond if you try to run something like python jade_auth.py ? (Basically the question is whether it was able to do the encryption step successfully, but just has an issue with the screen or something from the wrong config profile, or whether it had an issue and hasn't actually enabled it)
No, the com3 is cycling printing error message on invalid header... So nothing is able to take the control (tried idk flash and jade_ota ). Not sure what happened , possibility that it worked on my seconde device and that I bricked my first :
- I restarted my PC so maybe drivers was not fully installed
- I ran the CMD as full administrator (run as administrator)
- faulty cable that powered device down just during the reboot and encryption of the image (when you say to run idk monitor)
Powering the device down during the encryption could certainly have caused the issue, particularly if the process worked properly on another device :/
Basically if secure boot didn't enable itself then you should still be able to flash the device manually. If the software is running, just with something misconfigured config profile so that the screen doesn't come on, then it should respond to requests for things like jade_ota and jade_auth. (At least responding with the information about the device)
Bro would you suggest me to pick ledger or trezor model T? If trezor because of public code... then what steps would you suggest to do on trezor itself to secure it and not let hackers break it even if they physically access it
Most people will be better off with a Ledger. Open source isn't simply binary and doesn't help you if you can't be sure that the hardware you have is genuine. (Which you can't guarantee with a Trezor)
If you go the Trezor route then you can add a BIP39 passphrase to mitigate the physical security limitations of the hardware.
@@CryptoGuide damn , thanks much for the info dear sir! What you think is it possible that ledger to collect info from you, like seed etc? I was thinking about trezor just because of that open source stuff.... but if ledger can't collect info, i think its maybe even better, cause it wasn't hacked as far as i have researched (i mean the seed leaks or to hack device itself)....
and also second question so you think its not possible to be sure that the trezor i order from them is 100% genuine (cause it is possible to manipulate with the device before sending to me?)
Ledger has no ability to obtain your seed. Unless you build it yourself you can't be know whether a Trezor was tampered with.
Basically both vendors are fine, it mostly comes down to whether they support the coins you need and will work with the device your intend to use.
@@CryptoGuide in that case i will stick to ledger sir! Thanks much! I highly appreciate your opinion! Your videos are great!
@@CryptoGuide dear brother! sorry to disturb you, may i ask you if there is a possibility to export PRIVATE key from your ledger wallets?? i mean safe way to do that ! not inputing your seed phrase in metamask and then extracting it? thank you
Eu fiz a minha seguindo seus passos, ela funciona os aplicativos da green reconhecem a jade em securboot, mas ao criar a carteira quando pede para conectar tanto via bluetooth ou usb quando normalmente seria criado o PIN ela reinicia e não chega a pedir para criar o PIN. Tem algo que eu possa fazer?
So have you tried with something like Sparrow or are you using green wallet?
@@CryptoGuide Só tentei a Green Wallet, mas vou testar a sparrow e retorno.
@@CryptoGuide Na sparrow da erro " Cloud not open client or get fingerprint information"
Sounds like there is something very odd with your PC. Does the Jade firmware on the device operate correctly? (Until you pair)
@@CryptoGuide No smartphone via bluethoth também da erro. No video em 19:55 no canto inferior direito aparece a versão do firmware 0.1.45.1-dirty, mas no meu aparece 1586894. É assim mesmo ou isso indica algo errado que eu fiz?
Thanks its great. If you could go slower I'd appreciate it. Id rather spend another 30 minutes understand everything then feeling insecure about my Bitcoin wallet;)
Glad it helped :)
My ellipal Titan mini keeps falling out even when is on charge have you ever had that?
What does "falling out" mean in this context?
@@CryptoGuide goes off
So does it show that it's fully charged? Are you saying that it switched off within a few seconds of being unplugged or just goes to sleep after a while
@@CryptoGuide no it Just turns totaly off ,and the battery is full green
Sounds like you have a faulty battery
Will this work with ESP32 CH9102F?
CH9102F is the same usb to serial device on the TTGO T-display. Basically if you are using something that doesn't have an existing profile, you just need to select a "custom" board type and assign the pins with menuconfig. (I demo this a bit in my video with camera options)
@@CryptoGuide I'm getting Configuring Incomplete Error. It says there's a Cmake error with build.cmake. It also says idf version doesn't match with version solving failed. Any suggestion on how to solve this?
So is this actually an normal esp32 board or some other variety?
@@CryptoGuide Yes it is. It's a ESP32 TTGO board. I reinstalled esp and jade and was able to give it permission per the video. But now it gives me errors with cmake. It says something about, "undefined reference to 'phy_close_rf'." And also about, "function 'rtc_cntl_ll_ext1_set_wakeup_pins'." Is that an issue with the device going to sleep when it's trying to flash?
So it's exactly one of the boards in the video? Sounds like there is something wrong with either your ESP-IDF environment or you didn't one the repository properly.
This is not DIY hardware :c , this is buying hardware and installing DIY (FOSS) software. DIY hardware would be buying components and putting the device together then adding the software on top...
With the end result being a DIY hardware wallet. :) The goal is using commodity hardware that doesn't require that you disclose what you intend to use it for to anyone :)
Thr next step hardware that is a bit more hands on is the video that covers making one with the camera functionality. This one makes use of development hardware, so is still easy to assemble for most normal folk.
You can use the same process to build it from scratch with an ESP32 if you like.
@@CryptoGuide Wow, didn't expect a reply honestly, first time watching anything from yourself.
That makes sense, I clearly misinterpreted the title 🤦♂️ and felt a bit misled 😂but thank you for clearing things up and in that case great video👌, very informative for its purpose, concise and detailed.
Not quite what i was looking for but either way quality content and the informative reply, you earned a sub for sure.
Cheers dude
I reply to everyone :)
Glad it helped.
I would never dare to use windows for any of this, randomGenerator has cost untold millions in crypto losses and broken security elsewhere, unix or nothing
It doesn't matter which OS you use, as you are just compiling code. (And the keygen in python is safe if you are generating the firmware signing key)
yeah but why take the risk of doing it on windows where the default is virtually guaranteed to get your funds stolen? it is a one time operation...
So how exactly are you suggesting that compiling code creates a risk of losing funds? Be specific...
Hi thank you for this diy tutorial, so I tried enabling the secure boot and got into an issue. I generate the ".pem" but I skipped the "idf.py bootloader" and proceed to "idf.py build" instead. The code finished running without any errors, but the ttgo screen is no longer showing a display. now I tried re flashing the ttgo but I always get the error
"Connecting......................................
/dev/cu.usbserial-023883A6 failed to connect: Failed to connect to ESP32: No serial data received.
For troubleshooting steps visit: docs.espressif.com/projects/esptool/en/latest/troubleshooting.html
A fatal error occurred: Could not connect to an Espressif device on any of the 2 available serial ports."
Am I looking at a bricked device?
Thanks in advance.
Sounds like it, does it respond if you run python jade_auth.py
Does it let you flash if you power it up with io0 button held down?
I am exactly at your situation, but I did flash the bootloader. I have bricked 3 devices already :)
It does not work with the gpi0 button pressed either
.
Hello everyone, when i try to flash my ttgo, i have this problem, someone have this and find a solution?
CMake Error at CMakeLists.txt:2 (project):
No CMAKE_CXX_COMPILER could be found.
CMake Error at CMakeLists.txt:2 (project):
No CMAKE_ASM_COMPILER could be found.
-- The C compiler identification is unknown
-- The CXX compiler identification is unknown
-- The ASM compiler identification is unknown
-- Didn't find assembler
Sounds like you have an issue with your ESP-IDF environment, what operating system are you on?
one question: which one of these the most closest alternative to retail jade?
None of the options in this video have a camera. The cheapest is the T-display and I think the best value and nicest package is the M5StickC-Plus
@CryptoGuide no security bootloader is not good. Retail jade had a security bootloader I suppose?
so is lacking air gapped ability the only thing that doesn't make these options same as a retail jade?
All of the models I look at here can have secure boot enabled and the retail Jade has it enabled too. It's an important security feature, so certainly enable if it planning to store funds.
I will have a video coming in a few weeks that looks at options with camera, but they will require some assembly. (As opposed to just working off the shelf)
@@CryptoGuide does liquid work with these options?
I don't have anything on that chain to test, but there is no reason why it shouldn't work fine. (Especially with the fire that has the extra RAM)