EE-PROM of an Lenovo X230

78 views
Skip to first unread message

ggg...@gmail.com

unread,
Mar 10, 2020, 11:07:44 AM3/10/20
to qubes-users
As I am on Social Security and can not afford to purchase the Insurgo Privacy Beast, I was trying to emulate what the Insurgo on my own. 

I bought a refurb Lenovo X-230 with I5 processor and 4 GB RAM, 340 GB Spinning hard drive.  I have upgraded the RAM to 16 GB, (MICRON CT2K102464BF186D 16GB KIT 8GBX2 PC3-14900 1866, which is marked as Crucial - Germany)  Laptop sees the RAM, Boots, I have not run extensive memory tests.

And the same WiFi adapter as Insurgo Privacy Beast uses:   (Atheros AR9832 AR5BHB116. Model: AR9832 AR5BHB116. 1 x Atheros AR9832 AR5BHB116 Wireless Card. Standard Wireless: 801.11 a/b/g/n. Russia,Brazil,Chile,New Zealand,Mexico,South Africa,Asia)


I now read I will need a Pomona Clip:    Test Clip SOIC8 Pomona 5250.

Which will have to wait until next month to afford.  However, I see the instructions of what of I am about to attempt to be very detailed, and I am looking for about of guidance from someone who has recently done this thing. 

What looks to be one of my sources of a check list is:  https://www.chucknemeth.com/flash-lenovo-x230-coreboot/

Then what I can find on git hub.   I had hoped to install both Core Boot and Heads, and I am not sure if that is so easy for someone like me. 

I have not read all that yet, but wanted to be clear on the possible upgrades, fixes to documentation that should have occurred.  I am supposing that I will need to be careful choose the correct script for a core I5. 

Truthfully this EE-PROM of Core Boot is more than I wanted to learn how to do.  All this makes me appreciate how much Insurgo does to get their version working. 

Anyway, I thought I would see if anyone has any recent experience with this that might be different than all the documentation that is already available.   Thanks for any replies.


unman

unread,
Mar 11, 2020, 8:24:23 AM3/11/20
to qubes-users
On Tue, Mar 10, 2020 at 08:07:44AM -0700, ggg...@gmail.com wrote:
> As I am on Social Security and can not afford to purchase the Insurgo
> Privacy Beast, I was trying to emulate what the Insurgo on my own.
>
> I bought a refurb Lenovo X-230 with I5 processor and 4 GB RAM, 340 GB
> Spinning hard drive. I have upgraded the RAM to 16 GB, (MICRON
> CT2K102464BF186D 16GB KIT 8GBX2 PC3-14900 1866, which is marked as Crucial
> - Germany) Laptop sees the RAM, Boots, I have not run extensive memory
> tests.
>
> And the same WiFi adapter as Insurgo Privacy Beast uses: (Atheros AR9832
> AR5BHB116. Model: AR9832 AR5BHB116. 1 x Atheros AR9832 AR5BHB116 Wireless
> Card. Standard Wireless: 801.11 a/b/g/n. Russia,Brazil,Chile,New
> Zealand,Mexico,South Africa,Asia)
>
> I am now looking for a plan to EE-PROM (flash core boot) onto it. I bought
> a PROM Organizer SOIC8 SOP8 Flash Chip IC Test Clips Socket Adpter
> Programmer BIOS + CH341A 24 25 Series EEPROM Flash BIOS USB Programmer
> Module (Double Cl
> <https://www.amazon.com/gp/product/B07R5LPTYM/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1>
>
> I now read I will need a Pomona Clip: Test Clip SOIC8 Pomona 5250.
>
> Which will have to wait until next month to afford. However, I see the
> instructions of what of I am about to attempt to be very detailed, and I am
> looking for about of guidance from someone who has recently done this
> thing.
>
> What looks to be one of my sources of a check list is:
> https://www.chucknemeth.com/flash-lenovo-x230-coreboot/
>
> Then what I can find on git hub. I had hoped to install both Core Boot
> and Heads, and I am not sure if that is so easy for someone like me.
>
> I have not read all that yet, but wanted to be clear on the possible
> upgrades, fixes to documentation that should have occurred. I am supposing
> that I will need to be careful choose the correct script for a core I5.
>
> Truthfully this EE-PROM of Core Boot is more than I wanted to learn how to
> do. All this makes me appreciate how much Insurgo does to get their
> version working.
>
> Anyway, I thought I would see if anyone has any recent experience with this
> that might be different than all the documentation that is already
> available. Thanks for any replies.

You wont need a pomona clip - you already have a clip in the kit you
linked to. For one off flashing, that should be fine.

The chuck nemeth piece is a little dated now - probably wont match what
you find in current coreboot, but the principle is fine.
Heads documentation is woefully bad imo.
Check out Skulls for simple prebuilt images: once you've done once you
can flash internally for the rest, and there are simple scripts to run.
You may find it ideal.

You'll read about voltages, identifying chips etc. Garbage.
If you have specific questions ask away.




ggg...@gmail.com

unread,
Mar 11, 2020, 9:32:57 PM3/11/20
to qubes-users
I am looking as to which Linux to install on computer that does the programming.  I am guessing you would recommend Debian, latest version.  Also which Linux to leave on Lenovo X230 before I start to add Core Boot. 

When you say. "Voltages, garbage."  Are you saying to forget all about measuring voltages and such?  I would guess that the reason the notes say to check what voltage my Lenovo x230 RAM will handle is because the BIOS install will control the voltage after install.  The notes did not make that clear.  

I do not have at home online internet, making the requirement to be plugged into internet cable to be an inconvenience.  Any easy way around that requirement?

Thanks for advice.  

unman

unread,
Mar 12, 2020, 11:30:52 AM3/12/20
to qubes-users
I use Qubes on the flash side, of course. A mini Debian template with
just the necessary tools.

I've checked a few black programmers and *never* found one with the
reported problem. They may be out there. Dont know.
It's notable that Nemeth reports using the "faulty" programmer multiple
times without mishap.

As to identifying the chip, you can test this yourself - use a different
chip spec per read - you get the same rom image out.
Write back using different chip identifiers - same result.
Not to say that chip id may not be important, but in my experience on
Lenovos, its not.

Of course, you can cover the bases by checking voltage, patching the
programmer , trying to identify the chipset etc etc..

I would *strongly* suggest you use a skulls image to get started.
Download when you do have net access.
You can always reflash internally (without a strip down) later.


ggg...@gmail.com

unread,
Mar 12, 2020, 9:12:32 PM3/12/20
to qubes-users
Thank you for your reply.  I will read through the documentation again, and perhaps give it a trial some morning, before I begin to Sundown.  

I have another laptop, which in theory would run QUBES, (Mid 1009 17 MBP) but my first efforts in trying to get QUBES working on it just revealed difficulties.   This is part of why I am trying to get the Lenovo X230 to a place where I can put QUBES on it. 

Yes, I actually tried to get QUBES working on it in the with the standard BIOS, and while it installed, it complained -   I think the Virtualization was not working or something.  I now read, I did the install incorrectly.  I should have turned something off before Installing, and turn it back on later.   One difficulty at a time. 

Which ever Linux I choose, I feel the real security of using the Lenovo X-230, depends on having Core Boot/ Et Cetra.  

So I am committed to going on.   Thank you for your replies, I would be perplexed on some things without your answers.   My being poor does not help.  This would be so much easier if I had an at home high speed connection.   I may post back in a day or four.

Mike Karasoff

unread,
Mar 12, 2020, 11:35:23 PM3/12/20
to qubes...@googlegroups.com
As far as the voltages go, I'm not sure I understand unman's "garbage" comment.  The PROMs on your X-230 are 3.3V logic, but the CH341A programmer usually has 5V logic.  I've heard that some CH341A are 3.3V, but that seems more because there are several different places in China producing the same board and so its kind of random. 

I think you can use 5V logic to program these ICs, but you are doing so at your own risk.  There is no current limiting resistor on the CH341A board, and some of the CH341A ICs have no label, which indicates a potential "back ally" fab (i.e. counterfeit) that is common with low end Chinese electronics.   Point is, you'd be driving you motherboard with a potentially out of spec, using an unknown IC at the wrong voltage, without current protection.  This is not necessarily safe for your Mobo, but it *might* work for you.

There is a mod to turn your programmer into a 3.3V device, but it seems the mod doesn't work on newer programmers that don't have labels on the chip. It didn't work for me, and internets reports that it didn't work for others.   I used a Raspberry Pi instead : https://tomvanveen.eu/flashing-bios-chip-raspberry-pi/  The trick for the RaPi was the arg "spispeed=512".  I connected the Pamona clip included in the CH341A Kit to the RaPi using fly wires, so my CH341A wasn't completely useless, and was actually cheaper than the clip alone.  China.






‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
--
You received this message because you are subscribed to the Google Groups "qubes-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users...@googlegroups.com.

unman

unread,
Mar 13, 2020, 11:00:49 AM3/13/20
to qubes...@googlegroups.com
On Fri, Mar 13, 2020 at 03:35:05AM +0000, Mike Karasoff wrote:
> As far as the voltages go, I'm not sure I understand unman's "garbage" comment. The PROMs on your X-230 are 3.3V logic, but the CH341A programmer usually has 5V logic. I've heard that some CH341A are 3.3V, but that seems more because there are several different places in China producing the same board and so its kind of random.
>
> I think you can use 5V logic to program these ICs, but you are doing so at your own risk. There is no current limiting resistor on the CH341A board, and some of the CH341A ICs have no label, which indicates a potential "back ally" fab (i.e. counterfeit) that is common with low end Chinese electronics. Point is, you'd be driving you motherboard with a potentially out of spec, using an unknown IC at the wrong voltage, without current protection. This is not necessarily safe for your Mobo, but it *might* work for you.
>
> There is a mod to turn your programmer into a 3.3V device, but it seems the mod doesn't work on newer programmers that don't have labels on the chip. It didn't work for me, and internets reports that it didn't work for others. I used a Raspberry Pi instead : https://tomvanveen.eu/flashing-bios-chip-raspberry-pi/ The trick for the RaPi was the arg "spispeed=512". I connected the Pamona clip included in the CH341A Kit to the RaPi using fly wires, so my CH341A wasn't completely useless, and was actually cheaper than the clip alone. China.
>

If you look, my comment related to voltages AND chip id.
On the voltage front, my experience differs from what you have heard. I
haven't found controllers that deliver 5V when flashing, and I've
tested some.
There's some debate about whether the specs include an internal LDO or
not, depending on your knowledge of Chinese and reading of the spec.
All I can say is that I've used numerous cheap (and expensive)
programmers without mishap. (And, to repeat myself, nemeth reports the
same, as did Cornelius who provided the first schematic.)

So let's be clear - you are buying a cheap chip of unknown provenance.
That's the real risk here.
Some (which? some black ones? Which black ones?) controllers may have
a voltage issue, which may not even be an issue.

The second question is the need to identify the chip - with an x230 (and
most other lenovos I have worked on), you can read and write using any
of the proferred chip ids, with identical results - Any one should be
able to confirm this for themselves.

Pick up a motherboard from ebay, and start practise. gets you experience
at minimal risk and cost.

Mike Karasoff

unread,
Mar 13, 2020, 5:30:24 PM3/13/20
to qubes...@googlegroups.com

"I haven't found controllers that deliver 5V when flashing"

I agree with this halfway. All the CH341As I've personally seen supply 3.3VCC out of the box, but 5V logic. All of the schematics I've seen on the internet show this, so I don't think its just me. The 5V logic levels come from the CH341A which runs off the USB5V rail and is configured for 5VIO. 3.3VCC comes from a separate supply LDO. It is dumb, and I've wondered sometimes if the CH341A was designed to make things worse, though more likely an ad nauseam repetition of a bad design that is super cheap to produce and easy make a quick buck.

All the discussions I've seen on the CH341A voltage issues have to do with IO voltage, not VCC. I wouldn't call the IO voltage issue "garbage". It is a legit concern, and only Winbond can say differently.

On the X-230, the spec'd max VIH for the Windbond PROM is 3.7V with a 3.3VCC rail. The datasheet doesn't mention 5V IO tolerance. I don't doubt that 5V logic will work in many cases, but the real-world limit is set by physics, process, operating condition, and component skew. For a random PROM in a sufficiently large distribution of PROMs, we have to assume 5V will damage the IO, then your system won't boot, and you would have to change the PROM. It is a dice roll.

(BTW, I'm not addressing the CPU IO. I don't have a schematic or CPU specs to know what kind of protection is on that end, but one may be risking that as well.)

The RaPi method works well outt of the box @ 3.3VCC and 3.3V Logic using the latest Rasperian. One doesn't even need to connect to the internet. Suitable RaPi are available for $5-$10USD, but that won't give you the Pamona clip. The cheapest Pamona clip I've seen comes bundled with the CH341 for a few bucks, which is kind of funny. At least the RaPi can be used for other cool stuff.

I've also read about some people using Arduinos to program BIOS PROMs, though that seemed like more work than a RaPi.

>
> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
> On Friday, March 13, 2020 8:00 AM, unman un...@thirdeyesecurity.org wrote:
>
> > On Fri, Mar 13, 2020 at 03:35:05AM +0000, Mike Karasoff wrote:
> >
> > > As far as the voltages go, I'm not sure I understand unman's "garbage" comment. The PROMs on your X-230 are 3.3V logic, but the CH341A programmer usually has 5V logic. I've heard that some CH341A are 3.3V, but that seems more because there are several different places in China producing the same board and so its kind of random.
> > > I think you can use 5V logic to program these ICs, but you are doing so at your own risk. There is no current limiting resistor on the CH341A board, and some of the CH341A ICs have no label, which indicates a potential "back ally" fab (i.e. counterfeit) that is common with low end Chinese electronics. Point is, you'd be driving you motherboard with a potentially out of spec, using an unknown IC at the wrong voltage, without current protection. This is not necessarily safe for your Mobo, but it might work for you.
> > > There is a mod to turn your programmer into a 3.3V device, but it seems the mod doesn't work on newer programmers that don't have labels on the chip. It didn't work for me, and internets reports that it didn't work for others. I used a Raspberry Pi instead : https://tomvanveen.eu/flashing-bios-chip-raspberry-pi/ The trick for the RaPi was the arg "spispeed=512". I connected the Pamona clip included in the CH341A Kit to the RaPi using fly wires, so my CH341A wasn't completely useless, and was actually cheaper than the clip alone. China.
> >
> > If you look, my comment related to voltages AND chip id.
> > On the voltage front, my experience differs from what you have heard. I
> > haven't found controllers that deliver 5V when flashing, and I've
> > tested some.
> > There's some debate about whether the specs include an internal LDO or
> > not, depending on your knowledge of Chinese and reading of the spec.
> > All I can say is that I've used numerous cheap (and expensive)
> > programmers without mishap. (And, to repeat myself, nemeth reports the
> > same, as did Cornelius who provided the first schematic.)
> > So let's be clear - you are buying a cheap chip of unknown provenance.
> > That's the real risk here.
> > Some (which? some black ones? Which black ones?) controllers may have
> > a voltage issue, which may not even be an issue.
> > The second question is the need to identify the chip - with an x230 (and
> > most other lenovos I have worked on), you can read and write using any
> > of the proferred chip ids, with identical results - Any one should be
> > able to confirm this for themselves.
> > Pick up a motherboard from ebay, and start practise. gets you experience
> > at minimal risk and cost.
> >
> > You received this message because you are subscribed to the Google Groups "qubes-users" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users...@googlegroups.com.
> > To view this discussion on the web visit https://groups.google.com/d/msgid/qubes-users/20200313150039.GA15043%40thirdeyesecurity.org.


ggg...@gmail.com

unread,
Mar 13, 2020, 10:48:50 PM3/13/20
to qubes-users
 While I have read of others who just plowed though with whatever ch431a they had, and gotten it to work.  I am inclined to look at getting a PI.   I am looking at Newegg, I am guessing I can get the least expensive Raspberry Pi.  I have a few weeks before my Social Security is paid.   Most of my extra money is now tied up in Corona-ing up my pantry and for other prevention measures. 

Any suggestions of what - which Raspberry Pi to avoid?

Mike Karasoff

unread,
Mar 13, 2020, 11:08:31 PM3/13/20
to ggg...@gmail.com, qubes-users
As far as I know, all the RaPi should work for this.  If you are looking for cost effective, you can get a RaPi Zero on Sparkfun or Adafruit for around $10.  I would expect NewEgg to be pricey.




‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Friday, March 13, 2020 7:48 PM, <ggg...@gmail.com> wrote:

 While I have read of others who just plowed though with whatever ch431a they had, and gotten it to work.  I am inclined to look at getting a PI.   I am looking at Newegg, I am guessing I can get the least expensive Raspberry Pi.  I have a few weeks before my Social Security is paid.   Most of my extra money is now tied up in Corona-ing up my pantry and for other prevention measures. 

Any suggestions of what - which Raspberry Pi to avoid?


--
You received this message because you are subscribed to the Google Groups "qubes-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users...@googlegroups.com.

unman

unread,
Mar 14, 2020, 9:08:59 AM3/14/20
to qubes-users
On Fri, Mar 13, 2020 at 07:48:50PM -0700, ggg...@gmail.com wrote:
> While I have read of others who just plowed though with whatever ch431a
> they had, and gotten it to work. I am inclined to look at getting a PI.
> I am looking at Newegg, I am guessing I can get the least expensive
> Raspberry Pi. I have a few weeks before my Social Security is paid. Most
> of my extra money is now tied up in Corona-ing up my pantry and for other
> prevention measures.

Best of luck.
Stay safe.
Reply all
Reply to author
Forward
0 new messages